W5500模块用的比较广泛,但是没找到正点原子做的芯片驱动。
参考硬石电子提供的HAL库版本的W5500芯片的UDP例子,一直没法写入和读出地址,无法进行网络通讯。把自己写的代码贴上,请各位大神赐教。
w5500.zip
(1.05 MB, 下载次数: 237)
2017-5-9 12:46 上传
点击文件名下载附件
/////////////////////////////main函数中的初始化////////////////////////
gpio_for_w5500_config(); /*初始化MCU相关引脚*/
reset_w5500(); /* W5500硬件复位 */
set_w5500_mac(); /*配置MAC地址*/
set_w5500_ip(); /*配置IP地址*/
socket_buf_init(txsize, rxsize); /*初始化8个Socket的发送接收缓存大小*/
/////////////////////////////////////////////////////////////////////
/*将IP配置信息写入W5500相应寄存器*/
setSUBR(ConfigMsg.sub);
setGAR(ConfigMsg.gw);
setSIPR(ConfigMsg.lip);
getSHAR(mac);
getSIPR (local_ip);
getSUBR(subnet);
getGAR(gateway);
printf(" W5500 MAC地址 : %2X.%2X.%2X.%2X.%2X.%2X
", mac[0],mac[1],mac[2],mac[3],mac[4],mac[5]);
printf(" W5500 IP地址 : %d.%d.%d.%d
", local_ip[0],local_ip[1],local_ip[2],local_ip[3]);
printf(" W5500 子网掩码 : %d.%d.%d.%d
", subnet[0],subnet[1],subnet[2],subnet[3]);
printf(" W5500 网关 : %d.%d.%d.%d
", gateway[0],gateway[1],gateway[2],gateway[3]);
///////////////////////////////////////////////////////////////////输出结果都是0.0.0.0
使用定义的IP信息配置W5500
W5500 MAC地址 : 0. 0. 0. 0. 0. 0
W5500 IP地址 : 0.0.0.0
W5500 子网掩码 : 0.0.0.0
W5500 网关 : 0.0.0.0
一周热门 更多>