stm32CubeMx lwip + freeRTOS


MCU: STM32F429IGT6

工具:STM32CubeMx  版本號 5.0.0

   Keil uVersion5

目的:使用LWIP 實現簡單的網絡連通

 

一  簡介

   LWIP(Light Weight Internet Protoco1)是瑞士計算機科學院(Swedish Institute of Computer Science)AdamDunkels等人開發的一套用於嵌入式系統的開放源代碼TCP/IP協議棧。LWIP的含義是Light Weight(輕型)IP協議。LWIP可以移植到操作系統上,也可以在無操作系統的情況下獨立運行。LWIP TCP/IP實現的重點是在保持TCP協議主要功能的基礎上減少對RAM的占用。一般它只需要幾十KB的RAM和40 KB左右的ROM就可以運行,這使LWIP協議棧適合在小型嵌入式系統中使用。

二  創建工程

本項目 使用 STM32F429IGT6 芯片, PHY 使用的LAN8720A 

 

新建工程,選擇芯片

 

 

 因為項目中使用freeRTOS,  timebase 重新選擇一個定時器,不使用SysTick

 

 

 配置RCC ,我的電路使用的是25MHz無源晶振,這里選擇高速外部時鍾 HSE 

 

接下來配置時鍾,由於我的電路中使用的是25MHz晶振,HCLK 配180MHz,按Enter鍵,軟件自動配好倍頻,分頻系數

 

 

 配置 ETH,  我的PHY 芯片 支持 RMII

 

 

 

 

根據電路連接配置GPIO口

 

 配置 FreeRTOS

 

 

 

 

 配置LWIP

 如果DHCP 需要,選擇Enable

 

最后配置工程管理

 

 

 點擊 GENERATE CODE 生成代碼

用Keil uVersion5  打開工程,編譯燒寫

三 結果

  網線連接上板子

ping 192.168.1.21 

 

 

代碼 上傳到 gitHub上  https://github.com/itachi1121/stm32-lwip.git

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM