Доброго времени суток! Недавно стал владельцем Ethernet PHY модуля на базе чипа DP83848.
Пытаюсь подружить его с STM32F429ZI, но проблема в том, что он не может нормально получать данные..
Т.е. если он получит 15-20 пакетов, то всё. Всякая связь с контроллером по Ethernet пропадает. Даже нет ответов на PING.
Я так понимаю, объём полезных данных в TCP пакете равен 536 байт. С пакетами, у которых этот объём занят полностью, такая-же проблема. Т.е. не важно, получает ли он те 15-20 пакетов, в которых инф-и на 1 байт, либо на все 536 байт. Всё равно он повисает. Как я проверял. Я сделал на контроллере сервер, который отправляет клиенту некую строку, а принятые данные выводит в UART. Так вот, как правило после 16-го пакета (или символа, введённого через telnet) связь тут же обрывается. Отладчик показал, что контроллер не уходит в исключение, а основной поток работает дальше.
Архив с проектом: http://rghost.ru/7vtTz7bYC
Вот скриншот: http://s018.radikal.ru/i519/1602/53/66fd8ee63bae.png
Кстати, точно такая-же беда и в режиме клиента, когда он подключается к какому-либо HTTP серверу и начинает брать данные.