ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
23 ноября
1145340 Топик полностью
my504 (13.11.2021 15:03, просмотров: 373) ответил my504 на В общем, все получилось, коллеги... При скорости ЦП 100 МИПС DMA c реквестами от клоков АЦП (примерно 33 МГц) отлично втянул порт Е к которому были подключены все 10 разрядов АЦП. Неудобство в том, что порт Е равномерно размазан по трем сторонам TQFP80. Но можно на это не обращать внимания, если плата 4-х слойная. Попутно выяснил, что включение высокого разрешения у PWM усложняет синхронизацию при формировании интервалов накачки передатчика и окна приемника. Пока сделал
В продолжение темы. Когда изделие уже готовилось к выпуску первой партии в продажу, вдруг обнаружился неприятный баг. С вероятностью примерно 10% при включении устройство начинало принимать помехи. Разбирался почти неделю. Оказалось, что не все так просто с высокой скоростью захвата данных с пинов через DMA. Корректный захват возможен лишь с частотой не менее, чем в 4,5 раза ниже частоты ядра. Иначе DMA вываливает ошибку переполнения (overrun DMA) и данные имеют пропуски. 

Причем, непонятно от чего результат может быть допустимым для расчета, а может быть нет. Пока частично решил проблему путем кратковременного разгона ядра на время захвата данных до 150 мипс (то есть в 1,5 раза выше даташита). Кроме этого, на время захвата увел код на выполнение repeat-nop, пытаясь выключить потребность ядра в шине данных. Хотя не очень понятно влияет ли это на диаграмму работы ядра с шиной. Не хочется опускать частоту дискретизации АЦП ниже нынешних 33,33 МГц, то есть только в 3 раза ниже документированной максимальной частоты ядра... Грел феном МК на ощупь примерно до 50 градусов СРЕДЫ (сам МК ощутимо теплее). Сбоев не наблюдал. Будем дальше посмотреть... )))