Jump to content

    

mihlit

Участник
  • Content Count

    39
  • Joined

  • Last visited

Community Reputation

0 Обычный

About mihlit

  • Rank
    Участник

Recent Profile Visitors

154 profile views
  1. FSMC и FMC

    Схему проверить тоже будет не лишним В наличии есть дем. плата Nucleo - F767ZI. На ней та же история, т.е. я прихожу к выводу что платы f7 исправны, тем более, что на Nucleo я успешно поморгал диодами.
  2. FSMC и FMC

    stm32f746 font.c font.h TFT.h main.c TFT.c В TFT.c закоментированы задержки, необходимые для правильной инициализации дисплея.
  3. FSMC и FMC

    stm32f407 Как прикрепить папку с файлами? font.h TFT.c main.c font.c TFT.h
  4. FSMC и FMC

    Попробовал перенести рабочий проект с stm32f407 на stm32f746. Не получается запустить дисплей с помощью FMC. Вопрос к знатокам STM - в чем различие между FSMC и FMC? Когда смотрю ЛА сигналы NE1, NWE, NOE, то после 3(5) обращения к дисплею на этапе инициализации сигналов они все высокие, хотя в TFT_Init у меня 7 передач в дисплей. Если вставляю "nop" - 5 команд проходит от МК, без них -3. Поможите!!!
  5. Есть плата WaveShare Core 7XXI. На плате камень STM32F746IGT6 и микросхема SDRAM. Решил попробовать запустить. Есть у меня программа работы с TFT дисплеем. Начиналась она с http://narodstream.ru/stm-urok-37-displej-tft-240x320-8bit-chast-1/, переделал в 16-разрядный интерфейс, прикрутил другой шрифт https://microtechnics.ru/stm32-i-lcd-rabota-s-graficheskim-displeem/- все работает (но не везде, это другая история) и под HAL, и под SPL и на STM32F103, вот ее и решил попробовать перенести на STM32F7. Но вместо приветствия от программы получил белый экран с серым квадратом посередине и все. Подскажите, есть какие то нюансы переноса с f4 на f7? Именно касательно F(S)MC. Спасибо. Завел сигнал сброса дисплея на пин МК (до этого сброс дисплея был на ножке nRST), картинка на дисплее поменялась. Значит FMC работает, нужно ковырять тайминги. При портировании на 103 серию программа сразу заработала, а на f7 нет - меня это и смутило.
  6. отладка в Keil

    Извиняйте за компанию
  7. отладка в Keil

    Задал вопрос в отдельной ветке - молчок. Буду спрашивать здесь. Передача данных от ADC в буфер по DMA. ADC_Config(); // ADC configuration ADC_SoftwareStartConv(ADC1); // Start ADC1 Software Conversion while (1) { while(!DMA_LISR_TCIF0) continue; //ждать заполнения буфера // обработка буфера } DMA в режиме Normal Первый цикл проходит - буфер заполнился. Смотрю RM0090 в разделе ADC 13.8.1 (перевод Google) "Чтобы восстановить ADC из состояния OVR, когда используется DMA, выполните следующие действия: 1. Повторно инициализировать DMA (настроить адрес назначения и счетчик NDTR) 2. Очистите бит ADV OVR в регистре ADC_SR 3. Запустите АЦП, чтобы начать преобразование." Выполнил первый пункт. Со вторым непонятки. Если в ADC установлен флаг CONT то флаг OVR не сбрасывается. При сбросе CONT флаг OVR может сброситься, но чаще - нет. То же самое с флагом STRT. Что не так делаю?
  8. В примере размер буфера = 1, мне же необходимо 1024. Хочу внести следующие изменения: Изменяю значение DMA_BufferSize = 1024; /* ADC configuration */ ADC_Config(); /* Start ADC Software Conversion */ ADC_SoftwareStartConv(ADCx); while (1) { 1. Ждать флаг TC DMA (окончание передачи) 2. Сброс EN в ADC (стоп ADC) 3. Обработка значений буфера 4. Выполнить 10.3.17 Stream configuration procedure из RM0090 5. ADC_SoftwareStartConv(ADCx); } Я правильно описал последовательность или что-то еще? Дело в том, что с отладкой в Keil я очень на "Вы" и у меня не всегда получается посмотреть значения переменных и т.п. :laughing:
  9. отладка в Keil

    Ест-но. В основном h-файлы из SPL, юзеровских ни разу не видел, вот сегодня "stm32f4xx.h". Поначалу очень нервничал, потом ничего привык - а у него болячка такая оказывается.
  10. отладка в Keil

    Дык в том то и дело, что стоит крест на, допустим, строчке #include "stm32f4xx.h" наводишь стрелку на крест - внизу экрана выводится - "фатальная ошибка: нет пути" но Keil то работает, т.е можно запустить компиляцию - выдает 0 ошибок, отладка тоже запускается и работает.
  11. отладка в Keil

    Не буду оспаривать очевидное. Небольшой нюанс - я к МК пришел через проектирование электроники на логических элементах малой степени интеграции, поэтому у меня в крови - знать и понимать что и как я делаю. Чувствую себя не комфортно, если не понимаю, как это действие выполняется.
  12. отладка в Keil

    Задам еще вопрос по Keil. У меня версия 5.23 (32Кб). Иногда при запуске Keil, теряется какой-то заголовочный файл. Лечится перезагрузкой Keil, но чаще приходится перезагружать Win7. Не смертельно, но иногда задалбывает. Кто- нибудь сталкивался с подобным?
  13. отладка в Keil

    Объяснюсь по поводу своего вопроса. 1. На просторах Интернета много раз встречал высказывания, что "магическое" число - это не есть хорошо. 2. ИМХО, работа через регистры более компактна и нагляднее чем применение библиотек. 3. Из п2. вытекает(для меня), что написание своих макросов и дефайнов не сокращает время долбания клавиатуры и не повышает читаемость кода.
  14. отладка в Keil

    GPIOA->AFRH = 0x50000000; Ассистент после -> предлагал только "AFR", если я вводил "AFRH", появлялся крест на строке "не объявлено uint32_t"
  15. отладка в Keil

    Смотрел я GPIO_PinAFConfig, но по своей неопытности предположил, что как-то по аналогии со 103 серией, без приведения к uint32_t и сдвигов можно обойтись. Спасибо за ответ, у меня код рабочий с SPL написан, но в целях самообразования попытался обойтись записью в регистры - не получилось.