Программирование МК STM32. Урок 118. LAN8720. LWIP. RAW. UDP Client

author narod stream   7 мес. назад
745 views

47 Like   1 Dislike

[HAL, CubeMX, TrueSTUDIO를 이용한 STM32F4 속성 강의 강좌] 12-1강. ETH + LwIP (UDP Echo Server)

안녕하세요 M-HIVE ChrisP 입니다. "HAL 드라이버, CubeMX, TrueSTUDIO를 이용한 STM32F4 속성으로 따라하기" 동영상 강좌 입니다. 본 영상은 "12-1강. ETH + LwIP (UDP Echo Server)" 으로 - OSI 7 계층 모델 - TCP/IP의 계층 모델 - 각 계층의 정의 - OSI 모델에서 발신지로부터 수신지까지 데이터가 전달되는 과정 - 본 과정에서 사용할 네트워크 망의 구조 - PHY Transceiver DP83848의 역할 - CubeMX로 ETH 설정 - CubeMX로 LwIP 설정 - CubeF4의 UDP Echo Server 예제 구현 (udp_echoserver.c 및 h 파일 추가) - udp_echoserver_receive_callback() 함수 설명 - Ping 테스트 - Hercules 소켓통신 프로그램으로 PC와 STM간의 UDP 데이터 송수신 - 공유기 내부망에 연결된 장치들간의 데이터 흐름 과정 에 대해서 설명합니다. TCP/IP 프로토콜은 매우 복잡한 구조를 가지고 있습니다. 제 수업에서 부족한 설명이나 잘못된 설명은 댓글로 정정해주시면 감사하겠습니다. 영상에서 사용되는 실습 보드는 별도 구매하실 수 있습니다. http://cafe.naver.com/mhiveacademy/152 에서 확인하실 수 있습니다. 많이 시청해주세요~

Программирование МК 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:09 Введение 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/ Вы можете помочь проекту: Яндекс-деньги https://money.yandex.ru/to/41001176473465 Webmoney R422073279923 Z341906933112

Программирование МК AVR. Урок 54. Режимы пониженного энергопотребления. Часть 1

В данном уроке мы познакомимся с режимами пониженного потребления микроконтроллеров AVR, как их использовать, как в них входить, как из них выходить, и, самое главное, сколько тока в них будет потреблять контроллер. Затем полученные знания мы по традиции закрепим на практике, используя микроконтроллер ATMega328, который мы расположим на макетной плате. В данной части урока мы познакомимся с режимами пониженного энергопотребления, используемыми в контроллерах AVR, также познакомимся с тем, сколько должен потреблять контроллер тока в том или ином режиме, а также узнаем то, какие действия нам желательно проделать перед входом в данные режимы. Приобрести программатор USBASP USBISP 3.3 можно здесь (продавец надёжный) http://ali.pub/1auvtq Приобрести программатор USBASP USBISP 2.0 можно здесь (продавец надёжный) http://ali.pub/1eigwp Навигация по видео: 00:09 Введение 02:37 Режимы пониженного энергопотребления в микроконтроллере AVR 04:16 IDLE 09:32 ADC Noise Reduction 10:56 POWER-DOWN и POWER-SAVE 12:26 Standby Mode и Extended Standby Mode 16:12 Что надо отключить перед входом в спящий режим Для более понятного просмотра данного видео предварительно рекомендуется посмотреть: PIC. Урок 4. Кнопка https://youtu.be/Kw0tAc_vfpQ Урок 7. Кнопка https://youtu.be/HQ3ixolWKb8 Урок 10. Таймеры-счетчики. Прерывания https://youtu.be/mLDZhHFGQsU Урок 42. EXINT или внешние прерывания https://youtu.be/fQkphiPFv2k Урок 53. Watchdog Timer (WDT). Часть 1 https://youtu.be/qLYHo2qfv_M Урок 53. Watchdog Timer (WDT). Часть 2 https://youtu.be/CydVeS4RZbo Текстовая версия данной части урока здесь http://narodstream.ru/avr-urok-54-rezhimy-ponizhennogo-energopotrebleniya-chast-1/ Группа в контакте http://vk.com/club116656325 Группа в Одноклассниках http://ok.ru/group/52987126153436 Группа в Facebook https://www.facebook.com/groups/236905359999556/ Мой сайт "Программирование МК" http://narodstream.ru/ Форум http://narodstream.ru/forum/ Вы можете помочь проекту: Яндекс-деньги https://money.yandex.ru/to/41001176473465 Webmoney R422073279923 Z341906933112

STM32F4 Discovery board - Keil 5 IDE with CubeMX: Tutorial 21 - TFT LCD ili9341 (using FSMC)

This tutorial shows you how to use a TFT LCD using the FSMC interface of the STM32F4 Discovery board. It uses the ILI9341 2.4'' Arduino LCD shield. The concept is the same for other TFT LCD displays. 1. Source code (main.c + LCD library files + pinouts file): https://drive.google.com/open?id=1f4WZ3Bz8Tb-dCiqacXoX_CF3trXw5EcH 2. FSMC LCD Wiki: https://github.com/hampussandberg/HexConnect/wiki/LCD-ER_TFTM070_5 3. Convert Image to C Array online tool: http://www.digole.com/tools/PicturetoC_Hex_converter.php

Wie funktioniert DHCP?

DHCP verwaltet IP-Adressen und arbeitet bei der Zuteilung von IP-Adressen nach dem Client-Server-Prinzip. Das bedeutet, wir haben einen DHCP-Client und einen DHCP-Server. Der DHCP-Server kann dabei auch als Dienst in einem Router integriert sein. Wenn man einen Computer mit einem aktivierten DHCP-Client startet, was der Normalzustand ist, dann wird ein funktional eingeschränkter Modus des TCP/IP-Protokolls gefahren. Der Modus hat keine gültige IP-Adresse, keine Subnetzmaske und keine IP-Adresse des Standard-Gateways. Damit der DHCP-Client an diese Daten kommt, verschickt er einen Broadcast (UDP-Datenpaket) mit der Ziel-Adresse 255.255.255.255 und der Absender-Adresse 0.0.0.0. Dieser Broadcast wird als DHCP-Discover bezeichnet und dient als Adressanforderung für alle verfügbaren DHCP-Server. Im Optimalfall gibt es nur einen DHCP-Server. Und der antwortet mit einer freien IP-Adresse und weiteren Parametern für die IP-Selbstkonfiguration (DHCP-Offer). Danach fordert der Client die Informationen mit einem DHCP-Request expliziert beim DHCP-Server an. Und der DHCP-Server bestätigt die Anforderung mit einem DHCP-ACK. Sobald der DHCP-Client die Bestätigung erhalten hat, speichert er die Daten lokal ab. Anschließend wird das TCP/IP-Protokoll vollständig in Betrieb genommen. http://www.elektronik.info/wie-funktioniert-dhcp/ powered by http://www.elektronik-kompendium.de/

Продолжаем изучать программирование передачи данных по локальной сети.
Использовать мы будем для этой цели проводной интерфейс LAN.
В качестве сетевого устройства мы используем модуль на микросхеме LAN8720, в котором на этот раз присутствует только один уровень - это только физический.
Тем не менее данная микросхема, а также другие микросхемы линейки LAM87xx обрели огромную популярность в связи с уверенной и быстрой их работой.
В отличие от её предшественников, уже рассмотренных нами в прошлых уроках, она, соответственно, требует наличия желательно аппаратной поддержки канального уровня в контроллере, к которой её подключают, а также наличие там аппаратного интерфейса RMII, предназначенного, также как и MII, для обмена данными между физическим и канальным уровнем.
В качестве микроконтроллера мы будем использовать STM32F407VG, который расположен на нашей любимой плате STM32F4-Discovery, с которой мы прошли ранее немало уроков и знаем о ней далеко не понаслышке.
И также продолжаем использовать библиотеку стека протоколов LWIP, которая нам очень помогает в упрощении сочинения кода.
Теперь мы попробуем создать ещё один клиент, но только в качестве транспортного протокола мы будем использовать UDP.
В качестве сервера будем использовать ПК.

Купить отладочную плату STM32F4-DISCOVERY можно здесь http://ali.pub/178fif
Модуль LAN8720 можно приобрести здесь http://ali.pub/210wz8
Плату расширения STM32F4DIS-BB можно приобрести здесь http://ali.pub/210xoi

Навигация по видео:
00:09 Введение
03:55 Настроим проект
10:05 Функция инициализации структуры UDP
12:56 Функция-обработчик приёма пакетов
13:43 Отправляем пакет серверу
16:15 Испытание кода на практике

Рекомендуется также перед просмотром данного урока просмотреть данное видео:
Урок 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

Текстовая версия данного урока и исходный код здесь http://narodstream.ru/stm-urok-118-lan8720-lwip-raw-udp-client/

Группа в контакте http://vk.com/club116656325
Группа в Одноклассниках http://ok.ru/group/52987126153436
Группа в Facebook https://www.facebook.com/groups/236905359999556/
Мой сайт "Программирование МК" http://narodstream.ru/
Форум http://narodstream.ru/forum/

Вы можете помочь проекту:
Яндекс-деньги
https://money.yandex.ru/to/41001176473465
Webmoney
R422073279923
Z341906933112

Comments for video: