Всем привет, прочел отличную статью по работе с enc28j60 на этом сайте состоящую из 4 частей, и очень захотелось добавить в нее поддержку udp протокола, но знаний по C не хватает, кто мог бы помочь в этом вопросе?
Привет, блин был проект под UDP, тогда еще, когда те статьи писал. Но что-то отвлекло, не было времени статью написать пятую, а теперь и проект почему-то не нашел 🤔 Если прямо совсем не срочно, то в течение 3-4 недель могу постараться время выкроить - статью добавить с UDP.
Был бы очень признателен, мне лично не обязательно прям целую статью с описанием, достаточно увидеть основную концепцию протокола, в любом случае, буду ждать, заранее спасибо 🙂
@timur приветствую ) Свои ENC28J60 поставил в одном проекте, пришлось новые заказывать, доставку ждать... Набросал демо-проект с UDP, принимается пакет, данные инкрементируются, затем отправляются обратно:
@aveal Спасибо большое за 5 часть, оказывается не так все сложно было 👍
Думаю теперь можно попробовать реализовать еще одну важную часть драйвера ENC, это генерация своих UDP пакетов. К примеру, сбор каких либо данных с датчиков температуры и т.п. устройств, формирование UDP пакета и отправка по сети на сервер 🤔 тут понадобится ещё функция арп кеширования, в общем надо нормально изучить этот Си 😀
@aveal а и еще один вопрос, я попробовал отправить по udp через микроскрипт написанный на питоне 212 байт цифр вида 111111..., контроллер вернул мне 22222..., окей работает, но если я пробую отправить больше чем 212 байт, то в ответе получаю 212 байт вида 22222... а после набор случайных байт.
Провел дебаг в STM32CuneIDE (st-link v2 + stm32f103c8t6), данные в переменной data udp кадра правильные, все 22222.... они идут через SPI в ENC, но wireshark показывает мне лабуду после 212 байта.
Можете по возможности проверить почему такое ограничение в длине ответа?
@timur решилось после изменения uint8_t на uint16_t? Для тех, кто читает - это в комментариях.
@aveal да, отправил 1000 букв А, получил 1000 букв В, до этого после 213 буквы был бардак, а и еще насчёт глюка четности длины кадра, пробовал разную длину, что-то его не словил или может в модуле enc 6 версии исправили это 🤨
Продолжая тему udp рассылки, а можно замутить статью про mpeg ts?Вроде есть библиотека lame и скорости stm32 должно хватить для кодирования звука в стрим например от fm радио и отправка в интернет как поток или просто передача звука по сети 🤔