Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Помогите разобраться, обновление буфера STM32F3 Keil
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > Keil
Controlplast
Проблема в следующем:
ADC -> DMA -> массив данных, тип q15_t, такой тип был выбран для удобства последующей обработки arm_conv_q15. Массив, в который складывает DMA, и массив результата последующей обработки обновляется с каждым циклом DMA. (5 мс 5000 отсчетов) Здесь проблем нет, все видно в отладчике Keil. Далее пытаемся читать данные по usart. Здесь проблема! Если читаем данные с включенным отладчиком Keil, то все в порядке, каждый цикл чтения по USART приходят обновленные данные, если все тоже самое, но без отладчика Keil, то данные не обновляются. После ресета процессора приходят (через usart) обновленные данные, последующие чтения данные не обновляются, если прочитать по другому адресу, данные другие. Если требуются фрагменты кода могу предоставить.
Спасибо всем кто откликнится.
scifi
Можно, конечно, надеяться, что появится какой-нибудь гуру, скажет "а вы вот там подкрутите", и всё заработает. Но лучше займитесь что ли отладкой для начала. Если отладчик нельзя подключать, выводите диагностическую информацию через UART. Раньше внутрисхемных отладчиков не было, но люди как-то умудрялись находить причины ошибок.

Кстати, насчёт "подкрутите". Если у вас в отладчике открыты окна с регистрами периферии, попробуйте их закрыть. Из-за них бывают чудеса с периферией, которая чувствительна к чтению своих регистров.
Controlplast
Возможно кто то сталкивался с похожей проблемой. Просто не знаю за что уцепиться. Пока методом исключения, можно сказать, что порт читает данные правильно. Пока грешу, что DMA по разному работает в режиме отладчика и без него. Ищу дальше. По результату отпишусь.
Controlplast
Вопрос снят. Дело в очередности запуска DMA и ADC, в дебагере все работало, а без были перебои. Всем спасибо.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.