用于MSP430的W5200驅動

我對之前的W5200驅動做了許多修正,包括解決了一些bug。它主要是用于MSP430F5438a,但是也應該能用于MSP430的“5系”或“6系”。我已經將代碼按作用分塊。例如,WIZnet的相關文件放命名是以“W5200”起頭。調試相關的文件則是以“console”起頭。
本文引用地址:http://www.104case.com/article/201611/322033.htm目前的特點:
• 全面支持TCP/UDP/ICMP及DHCP客戶端
• 包含UDP/TCP的例程代碼
• 以太網性能測試代碼
• 串口調試臺,能進行測試運行及顯示W5200所有寄存器狀態
• BSD認證代碼
此次代碼的最大改動是支持對MSP430的相關測試。我進行了一個丟包測試,并且用WIZnet客戶端以最快速度發送盡可能多的數據(通過TCP發送2048字節),然后我用命令行工具“trafshow”測試了傳輸情況和數據吞吐量。順便說一句,此網絡系統沒有其他的主機。
測試結果很有意思,當MSP430主CPU時鐘頻率在16MHz時,W5200 SCLK也為16MHz,我每秒能發送73,000字節的數據。當我將MSP430及W5200時鐘頻率提高到25MHz時,W5200的SPI通信開始出現異常。
我不清楚這是因為我使用面包板或是其他的原因。當我最終將MSP430時鐘頻率調為25MHz,而W5200的變為12.5MHz時,每秒能得到105,000字節數據。這很有意思—-它告訴我MSP430CPU是先限制數據傳輸速率的原因,而不是W5200芯片。
使用此代碼,需要你依照config.h文件配置硬件。如上圖所示,我使用到了MSP-EXP430F5438,連接串口針腳,波特率設為為115200Baud,數據格式為 8N1。使用Code Composer將代碼載入板中 。當你點擊運行,首先屏幕上會顯示一些無用數據。點擊“?”,出現一個選項菜單,它將會給出這些代碼能實現的所有選項功能。
Example:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | *** Info Commands *** m - MCU info v - software version w - W5200 device info W - W5 |
評論