Стек для W5200 без циклов задержек + STM32F103

Чипы корейской фирмы WIZnet весьма широко известны и популярны. Так же полно где можно скачать драйверы для этих микросхем. Последняя реализация выполнена на W5500 здесь
Однако все драйверы построены по принципу вызова функций, которые весьма надолго стопорят основной цикл программы, мучительно и многократно ожидая события от внешней системы. Особенно «умиляет» ожидание в функции отправки по TCP и выход из нее по Timeout. А ведь это может растянуться не на одну секунду, и даже не 10! (При стандартных настройках — 28 сек). В некоторых случаях, если программа заточена полностью на Ethernet — это не критично, но не в моем случае. Да и вообще, инструкции вида
while(!Внешнее событие);
меня вымораживает напрочь, так как устройство полностью оказывается неработоспособным длительное время.
Мною были написаны несколько модулей, в которых я реализовал стек для W5200 без задержек.

Читать дальше
  • +5
  • 26 декабря 2015, 22:52
  • Mihail
  • 1

W5200 плата

Развел простенькую платку под Wiznet 5200, решил поделиться...
UPDATE: статья обновлена, комментарии устарели
Проект в Altium прикреплен.
Схема опробована, завелось практически сразу.
Пришлось дополнительно промыть растворителем — кварцевый резонатор и его конденсаторы, дальше проблем не возникало )
Выведен весь SPI интерфейс (MISO,MOSI,SCK,CS) и PWDN с Reset-ом.
Разъем с трансформатором h911105a


Читать дальше