ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
26 ноября
618725 Топик полностью
il-2 (10.09.2015 10:51, просмотров: 43) ответил Yurasvs на У меня на УАРТе висит стандартный преобраз КОМ-ЮСБ на FT232RL, пока не хочу лезть в дебри со встроенным ЮСБ. Искажения возникают только при заполнении буфера с помощь ДМА, если просто менять данные в буфере из программы (даже несинхронно),
Ищи у себя ошибки. Задача непрерывного приема и выдачи данных решается на STM достаточно изящно. Вот проверенный рецепт: 1. Прием данных организуешь в кольцевой буфер по DMA в кольцевом режиме. Один раз настроил и забил. Прерывания не нужны. 2. Обработку данных выполняешь по мере надобности/возможности, главное чтобы за время между обработками данные в буфере приема не наложились. 3. Размер принятых за время от предыдущей обработки данных определяешь по указателю на последние обработанные данные и по регистру DMA->CNDTR. Обрабатываешь блок, корректируешь указатель. Цикл закончен.