热度 13
2013-1-29 14:31
1188 次阅读|
0 个评论
我对之前的W5200驱动做了许多修正,包括解决了一些bug。它主要是用于MSP430F5438a,但是也应该能用于MSP430的“5系”或“6系”。我已经将代码按作用分块。例如,WIZnet的相关文件放命名是以“W5200”起头。调试相关的文件则是以“console”起头。 目前的特点: • 全面支持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 - W5200 network info # - (a number from 0-7) displays statistics for the W5200 socket # specified *** Action Commands *** r - MCU warm reboot R - W5200 reset p - W5200 power toggle *** Network Commands *** c - Echo client test (TCP) d - Dynamically set IP address h - HTTP server i - Manually set IP address l - Echo server test (TCP) L - Echo server test (UDP) t - Run performance test (The HTTP server option is just something I started writing — it doesn’t work yet.) .Download the code(http://www.cashdollar.org/wp-content/uploads/2013/01/mesa-0.6.zip) for Code Composer 5.3.0. 原文地址:http://www.cashdollar.org/2013/01/20/updated-wiznet-w5200-ethernet-driver-for-msp430/ 作者:Matt Cashdollar