Chia Sẻ Khóa Học Embedded Ethernet Bare - Lập Trình Metal [Khóa 6208 A]
Build Embedded Ethernet Firmware: TCP, UDP, HTTP, SSI, CGI, v.v.
Những gì bạn sẽ học:
- ✓ Hiểu được những nền tảng về Networking.
- ✓ Hiểu được những nền tảng về Light Weight IP (LwIP) Stack.
- ✓ Viết các Bare-Metal Driver cho STM32F7 Ethernet Peripheral.
- ✓ Viết các ứng dụng Embedded Ethernet cho Hosting Webpage.
- ✓ Viết các ứng dụng Embedded Ethernet để điều khiển phần cứng thông qua các trang web.
- ✓ Viết các ứng dụng Embedded Ethernet để gửi dữ liệu cảm biến đến các trang web.
- ✓ Triển khai một TCP Server trên Microcontroller của bạn
- ✓ Triển khai một TCP Client trên Microcontroller của bạn
- ✓ Triển khai một UDP Server trên Microcontroller của bạn
- ✓ Triển khai một UDP Client trên Microcontroller của bạn.
Chào mừng bạn đến với khóa học Lập trình Embedded Ethernet Bare-Metal từ đầu.
Khóa học này là khóa học nâng cao trong lộ trình học gồm 3 khóa học hướng dẫn bạn cách viết các driver cho thiết bị ngoại vi Ethernet cũng như viết embedded ethernet firmware cho các giao thức mạng khác nhau như TCP, UDP, HTTP, DHCP, v.v.
Mục tiêu của khóa học nâng cao này là hướng dẫn bạn cách sử dụng microcontroller reference manual và datasheet để trích xuất thông tin phù hợp nhằm xây dựng các driver và firmware chuyên nghiệp cho thiết bị ngoại vi Ethernet, sau đó kết nối các driver này với TCP/IP stack được sử dụng rộng rãi cho các hệ thống nhúng - LwIP.
Điều gì làm cho khóa học này khác biệt so với khóa học trung cấp?
Trong khóa học này không sử dụng các thư viện HAL, chỉ sử dụng bare-metal embedded-c và register manipulation. Khi mục tiêu này đạt được, chúng tôi sẽ tiếp tục xây dựng các ứng dụng embedded ethernet trong thế giới thực.
Trong khóa học nâng cao này, chúng tôi cũng triển khai thêm nhiều ví dụ về các ứng dụng embedded ethernet.
Hiểu như vậy, tôi xin kể cho bạn nghe…Chính xác những gì bạn đang nhận được.
Khóa học nâng cao này có thể được chia thành 4 phần chính:
Phần đầu tiên:
Trong phần đầu tiên, chúng tôi sẽ giới thiệu ngắn gọn về networking và sau đó khám phá các khả năng Ethernet của vi điều khiển STM32F7.
Phần thứ hai:
Trong phần này, chúng tôi viết các bare-metal driver cho tất cả các thiết bị ngoại vi mà chúng tôi sẽ sử dụng trong khóa học. Chúng tôi viết các driver cho ADC, UART, RCC và GPIO.
Phần thứ ba:
Trong phần thứ ba, chúng tôi viết tất cả các bare-metal driver cần thiết để cấu hình đầy đủ ethernet module. Chúng tôi sẽ triển khai một driver để cấu hình các ethernet gpio pin hoạt động ở chế độ RMII, chúng tôi sẽ triển khai một driver để truyền các gói tin, một driver khác để nhận các gói tin, v.v.
Trong phần này, chúng ta quyết định các thông số ethernet như speed, duplex, có nên sử dụng auto-negotiation hay không, v.v. Sau khi cấu hình ethernet module, chúng ta kết thúc phần này bằng cách triển khai một function interfaces ethernet module của chúng ta với thư viện Light Weight IP (LwIP). LwIP là một triển khai mã nguồn mở độc lập nhỏ của TCP/IP protocol stack được thiết kế cho các hệ thống nhúng.
Phần cuối:
Phần cuối cùng bắt đầu bằng việc giới thiệu về Light Weight IP (LwIP) và sau đó tiếp tục xây dựng các ứng dụng embedded ethernet. Sau đây là một số ứng dụng chúng ta sẽ xây dựng:
- ✓ Lập trình: Kiểm tra xem cáp đã được kết nối chưa.
- ✓ Lập trình: Nhận địa chỉ IP từ DHCP.
- ✓ Lập trình: Hosting các trang web với httpd.
- ✓ Lập trình: Hiển thị dữ liệu thời gian thực trên các trang web với SSI.
- ✓ Lập trình: Làm việc với Multiple SSI Tag.
- ✓ Lập trình: Điều khiển phần cứng từ WebServer bằng CGI.
- ✓ Lập trình: Chèn code HTML vào Trang web bằng SSI và CGI.
- ✓ Lập trình: Triển khai một TCP Server.
- ✓ Lập trình: Triển khai một TCP Client.
- ✓ Lập trình: Triển khai một UDP Server.
- ✓ Lập trình: Triển khai một UDP Client.
Mục lục:
- ✓ 01. Thiết lập.
- ✓ 02. Bắt đầu.
- ✓ 03. Cấu hình Clock Tree và Timebase.
- ✓ 04. Phát triển General Purpose Input/Output Driver cho LED.
- ✓ 05. Phát triển Universal Asynchronous Receiver Transmitter (UART) Driver.
- ✓ 06. Phát triển Analog-to-Digital Converter (ADC) Driver.
- ✓ 07. Giới thiệu về Networking.
- ✓ 08. Tìm hiểu về các Khả năng Ethernet của STM32F7.
- ✓ 09. Phát triển Ethernet Driver.
- ✓ 10. Phát triển Ethernet Interface (ethernetif) file.
- ✓ 11. Phát triển LWIP file.
- ✓ 12. Phát triển các ứng dụng HTTP Ethernet.
- ✓ 13. Phát triển ứng dụng UDP và TCP sử dụng Raw API.
- ✓ 14. Kết thúc.
Khóa học này dành cho ai?
- ✓ Nếu bạn là một embedded developer và muốn tìm hiểu cách phát triển các ứng dụng embedded ethernet thì hãy tham gia khóa học này.