Программирование МК STM32. Урок 120. LAN8742A. LWIP. NETCONN. UDP Server



Программирование МК STM32. Урок 120. LAN8742A. LWIP. NETCONN. UDP Server

Программирование МК 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.