具體配置過程:1、開啟STM32CubeMX,並選擇好相應的晶片。文中的晶片為STM32F207VCT6,選擇後:2、配置RCC時鐘、ETH、PA8以及使能LWIP;由於此處的開發板硬體上為RMII方式,因此選擇ETH-RMII,若有同志的開發板為MII方式,請參考MII的配置方法,此處只針對RMII;RCC選擇外部時鐘源,另外勾選MCO1,軟體會自動將PA8配置為MCO1模式,該引腳對於RMII方式很重要,用於為PHY晶片提供50MHz時鐘;使能LWIP;3、時鐘樹的相關配置,必須保證MCO1輸出為50Mhz,如果這個頻率不對會導致PHY晶片無法工作;這裡因為晶片為207VCT6,為了使MCO1輸出為50Mhz,做了PLL倍頻引數的一些調整,總體如下:(同志們配置時可根據自己的晶片靈活配置,但需保證MCO1的輸出為50Mhz)4、ETH、LWIP、RCC相關引數設定;至此,比較重要的都在前面了,但是還有一點仍需要注意,即PA8引腳輸出速度,幾次不成功都是因為這個引腳沒注意。後續的引數設定可以根據同志們自己的需求分別設定,這裡給出設定供參考;ETH引數保持預設,但中斷勾選一下;LWIP引數設定如下:(因為這裡是配置UDP伺服器,IP選擇靜態分配)5、生成工程,做最後的函式修改;給生成的工程新增UDP伺服器的初始化以及埠繫結等相關函式;這裡直接將之前的官方例程中的UDP伺服器檔案加進來,如下:之後將。c檔案新增到使用者程式,主函式新增Udp的。h標頭檔案;如下:(udp檔案的具體內容在後面給出)6、主函式還需要新增一下幾個函式,在這裡不對函式作用及實現原理講解,僅做新增說明。
具體配置過程:1、開啟STM32CubeMX,並選擇好相應的晶片。文中的晶片為STM32F207VCT6,選擇後:2、配置RCC時鐘、ETH、PA8以及使能LWIP;由於此處的開發板硬體上為RMII方式,因此選擇ETH-RMII,若有同志的開發板為MII方式,請參考MII的配置方法,此處只針對RMII;RCC選擇外部時鐘源,另外勾選MCO1,軟體會自動將PA8配置為MCO1模式,該引腳對於RMII方式很重要,用於為PHY晶片提供50MHz時鐘;使能LWIP;3、時鐘樹的相關配置,必須保證MCO1輸出為50Mhz,如果這個頻率不對會導致PHY晶片無法工作;這裡因為晶片為207VCT6,為了使MCO1輸出為50Mhz,做了PLL倍頻引數的一些調整,總體如下:(同志們配置時可根據自己的晶片靈活配置,但需保證MCO1的輸出為50Mhz)4、ETH、LWIP、RCC相關引數設定;至此,比較重要的都在前面了,但是還有一點仍需要注意,即PA8引腳輸出速度,幾次不成功都是因為這個引腳沒注意。後續的引數設定可以根據同志們自己的需求分別設定,這裡給出設定供參考;ETH引數保持預設,但中斷勾選一下;LWIP引數設定如下:(因為這裡是配置UDP伺服器,IP選擇靜態分配)5、生成工程,做最後的函式修改;給生成的工程新增UDP伺服器的初始化以及埠繫結等相關函式;這裡直接將之前的官方例程中的UDP伺服器檔案加進來,如下:之後將。c檔案新增到使用者程式,主函式新增Udp的。h標頭檔案;如下:(udp檔案的具體內容在後面給出)6、主函式還需要新增一下幾個函式,在這裡不對函式作用及實現原理講解,僅做新增說明。