完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
设置UDP模式,socket接收和发送设置2k,使用网络调试助手,单次发送数据<=1472个,通讯正常,单次发送>1472个字节,W5500接收不到数据。比如我单次发送1473个字节,上位机应该是分成2帧发送,还是说现在的网卡一帧数据可以大于1472个??
|
|
相关推荐
4 个讨论
|
|
我用Microsoft Network Monitor监控,w5500发送数据大于1472的时候,分两帧发送。网络调试助手发送数据大于1472时,在线调试数据长度len=0;有知道原因的么?按理说上位机应该自动将大于1472,分成多个帧
switch(getSn_SR(0)) /*»ñÈ¡socketµÄ״̬*/ { case SOCK_CLOSED: /*socket´¦ÓڹرÕ״̬*/ socket(0,Sn_MR_UDP,local_port,0); /*³õʼ»¯socket*/ break; case SOCK_UDP: /*socket³õʼ»¯Íê³É*/ // Delay_ms(10); if(getSn_IR(0) & Sn_IR_RECV) { setSn_IR(0, Sn_IR_RECV); /*Çå½ÓÊÕÖжÏ*/ } if((len=getSn_RX_RSR(0))>0) /*½ÓÊÕµ½Êý¾Ý*/ { GPIO_SetBits(GPIOC, GPIO_Pin_7); recvfrom(0,buff, len, remote_ip,&remote_port); /*W5500½ÓÊÕ¼ÆËã»ú·¢ËÍÀ´µÄÊý¾Ý*/ for(i=0;i<200;i++) XT9822Dat=(buff[3*i]<<16)+(buff[3*i+1]<<8)+buff[3*i+2]; XT9822_SetAll(); GPIO_ResetBits(GPIOC, GPIO_Pin_7); // buff[len-8]=0x00; /*Ìí¼Ó×Ö·û´®½áÊø·û*/ // printf("%srn",buff); /*´òÓ¡½ÓÊÕ»º´æ*/ sendto(0,buff,len-8, remote_ip, remote_port); /*W5500°Ñ½ÓÊÕµ½µÄÊý¾Ý·¢Ë͸øRemote*/ } break; } |
|
|
|
|
|
只有小组成员才能发言,加入小组>>
492个成员聚集在这个小组
加入小组5128 浏览 1 评论
12248 浏览 5 评论
3541 浏览 2 评论
2994 浏览 0 评论
12809 浏览 2 评论
w5500 作为tcp server,客户端异常发送【RST,ACK】断开连接问题
2658浏览 1评论
1186浏览 0评论
使用stm32,通过spi的dma 收发,运行多次读写以后w5500发送正常,接收卡死,高人帮忙看看
6459浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-28 02:26 , Processed in 0.685892 second(s), Total 69, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号