EugenyAM 0 17 января, 2017 Опубликовано 17 января, 2017 · Жалоба МК STM32F107 + Ethernet Phy DP83848 + LwIP, SYSCLK=72MHz Запустил многоканальный драйвер светодиодов WS2812B на базе TIM->DMA->GPIO Использовал библиотеку https://github.com/g4lvanix/0xWS2812, Длина фреймбуфера 16Кб, цикл вывода запускается через 25мс после окончания предыдущего При приеме пакетов ethernet, даже при отсутствии записи во фреймбуфер наблюдается джиттер, который проявляется, как кратковременное моргание случайных светодиодов. Какие настройки DMA или Ethernet могут помочь? Или единственный путь - ждать паузы в Ethernet пакетах и после ее наступления запускать вывод фреймбуфера? Поможет ли замена МК на F207 или F407? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 17 января, 2017 Опубликовано 17 января, 2017 · Жалоба Поможет ли замена МК на F207 или F407? Должна помочь. У 207 и 407 взрослый шинный коммутатор, в отличие от 107. Там можно использовать разные блоки набортного ОЗУ, чтобы Ethernet и DMA вообще не пересекались. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Aner 6 17 января, 2017 Опубликовано 17 января, 2017 · Жалоба И да и нет надо прогу смотреть, что за RTOS, LwIP, HAL и тд . При переходе с F107 на F407 столкнетсь с проблемой джиттера на Ethernet Phy DP83848 из-за бага, в ерате есть. У делителей в синтезаторе F4xx большой джиттер, Phy DP83848 или другой придется тактировать от своего кварца на 50Мгц или от генератора чтобы работало без потери пакетов на 100. Ну и далее, Ethernet вещЪ асинхронная, возможно нужен не один буфер, и чисткой заняться придется и тд. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться