Программирование МК STM32. Урок 120. LAN8742A. LWIP. NETCONN. UDP Server
Продолжаем изучать программирование передачи данных по локальной сети.
Использовать мы будем для этой цели проводной интерфейс LAN.
В качестве сетевого устройства мы используем модуль на микросхеме LAN8742, в котором присутствует только один уровень – это только физический.
Тем не менее данная микросхема, а также другие микросхемы линейки LAM87xx обрели огромную популярность в связи с уверенной и быстрой их работой.
В отличие от её предшественников, уже рассмотренных нами в прошлых уроках, она, соответственно, требует наличия желательно аппаратной поддержки канального уровня в контроллере, к которой её подключают, а также наличие там аппаратного интерфейса RMII, предназначенного, также как и MII, для обмена данными между физическим и канальным уровнем.
В качестве микроконтроллера мы будем использовать STM32F746NGH6, который расположен на нашей любимой плате STM32F746G-DISCO, с которой мы прошли ранее немало уроков и знаем о ней далеко не понаслышке.
И также продолжаем использовать библиотеку стека протоколов LWIP, которая нам очень помогает в упрощении сочинения кода.
Теперь мы попробуем создать сервер, в качестве транспортного протокола мы будем использовать UDP.
А интерфейс мы уже будем использовать не RAW, а NETCONN, для чего нам обязательно понадобятся накопленные знания по использованию операционной системы реального времени FreeRTOS.
В качестве клиента будем использовать ПК.
Отладочную плату STM32F746G-DISCO можно приобрести здесь http://ali.pub/2bpa7g
Навигация по видео:
00:00 Введение
02:30 Настроим проект
06:37 Уберём всё лишнее из кода
10:09 Создадим две задачи для передачи пакетов UDP
11:44 Напишем код функции задач для приёма и отправки сетевых пакетов
20:10 Проверим работу кода на практике
Рекомендуется также перед просмотром данного урока просмотреть данное видео:
Урок 96. LAN8720. LWIP. TCP Client. Часть 1 https://youtu.be/EhMesQnnXTg
Урок 98. LAN8720. LWIP. TCP Server. Часть 1 https://youtu.be/5ZAU9rDdYfU
Урок 100. LAN8720. LWIP. TCP. Соединяем два контроллера. Часть 1 https://youtu.be/4ct1NZFCLSg
Урок 102. LAN8720. LWIP. HTTP RAW. Часть 1 https://youtu.be/fODqTas3AL4
Урок 104. FreeRTOS. Бинарные семафоры. Часть 1 https://www.youtube.com/watch?v=kopgjKUFCVY
Урок 106. FreeRTOS. Создание и уничтожение задач. Часть 1 https://youtu.be/UxNWYvSzveU
Урок 108. FreeRTOS. Параметры https://youtu.be/8wGssI_sxSM
Урок 110. FreeRTOS. Приоритеты задач https://youtu.be/wTktgw94jdE
Урок 111. FreeRTOS. Очереди. Часть 1 https://youtu.be/krpf4xyGR28
Урок 112. FreeRTOS. Таймеры https://youtu.be/sahOINn2tHk
Урок 114. FreeRTOS. Продвинутая задержка DelayUntil https://youtu.be/PoGskwqXAKs
Урок 116. FreeRTOS. Прерывания. Очереди в прерываниях. Часть 1 https://youtu.be/9EMxLm1eSKc
Урок 118. LAN8720. LWIP. RAW. UDP Client https://youtu.be/5_VTbi_YJjY
Текстовая версия урока и исходный код здесь http://narodstream.ru/stm-urok-120-lan8742f-lwip-netconn-udp-server/
Группа в контакте http://vk.com/club116656325
Группа в Одноклассниках http://ok.ru/group/52987126153436
Группа в Facebook https://www.facebook.com/groups/236905359999556/
Мой сайт “Программирование МК” http://narodstream.ru/
Форум http://narodstream.ru/forum/
Вы можете помочь проекту:
ЮMoney
https://yoomoney.ru/to/41001176473465
Webmoney
Z341906933112
Карта Сбербанка (МИР)
2202201799288929
Можно в USDT
1) Сеть:TRC20
Адрес: TBBPFk5Widf1CYvF7Xk5ssKXeiPJHwtMgS
2) Сеть: BSC BNB Smart Chain (BEP20) (комиссия намного меньше)
Адрес: 0x2e38754DF1e54649Bf0D5CD6fD6D8c96a9f22f17
3) Сеть: Huobi ECO Chain (HECO) (комиссия еще меньше)
Адрес: 0x2e38754DF1e54649Bf0D5CD6fD6D8c96a9f22f17 .
Comments are closed.