共2条
1/1 1 跳转至页
问
各位大侠好:
小弟最近在调试串口和以太网通信实验时,遇到一些问题,请帮忙解释一下,谢谢!
在从UDP到COM的传送过程中,无任何问题,一切显示正常;
但在从COM到UDP传送过程中,老是出现包丢失的现象,比如第一次发送"com_test" 只能收到com,在第二次发送完接受时才能收到余下的部分,一直都是这样收发下去……
为了协调两者的通信速度,我试着添加了taskDelay()函数,缓解了一下以上问题,但是残留的是,在最初两次收发时还是以上问题,但在第三次及其以后收发时就正常了,百思不得其解……
串口波特率115200,以太网10M/100M自适应!
各位高手有没有好的解决办法,请指点,谢谢了!
Tshell Window 的调试信息:
waiting for receiving data from udp......
The Number Of Receiving bytes is 8
MESSAGE FROM: Internet Address 192.168.0.160, port 1339
udp_test
The Number Of Write bytes is 8
waiting for receiving data from com......
The Number Of Read bytes is 3
The data of rec_message is com_test
The Number Of Send bytes is 3
waiting for receiving data from udp......
The Number Of Receiving bytes is 8
MESSAGE FROM: Internet Address 192.168.0.160, port 1339
udp_test
The Number Of Write bytes is 8
waiting for receiving data from com......
The Number Of Read bytes is 5
The data of rec_message is _testest
The Number Of Send bytes is 5
waiting for receiving data from udp......
The Number Of Receiving bytes is 8
MESSAGE FROM: Internet Address 192.168.0.160, port 1339
udp_test
The Number Of Write bytes is 8
waiting for receiving data from com......
The Number Of Read bytes is 8
The data of rec_message is com_test
The Number Of Send bytes is 8
waiting for receiving data from udp...... 答 1: 敢问搂主使用的是什么硬件作的,我用2812做同样的事没遇到问题啊 答 2: IP2022的串口网桥解决方案IP2022/IP3023是美国UBICOM推出的二款功能强大的网络通信处理器,处理器速度可达120/250MHZ,它采用软件模块的方式在芯片上实现多种通信接口,是业界领先的单芯片网络通信处理器,可以实现802.11b、802.11g、802.11a、Bluetooth、HomePlug、Ethernet、 USB、 MII、 I2C、 SPI、GPSI、 UART等协议,适用于无线通信和embedded Internet的应用。
我公司可以提供串口转以太网方面的产品开发技术支持!
邓先生
深圳市集为科技有限公司
深圳市福田区深南中路国际文化大厦1330室
电话:(86 755)8329 0805
传真:(86 755)8329 0865
手机:13924595392
MSN: gv_service@hotmail.com
QQ: 280415658
邮箱: kevin@szgv-tech.com
答 3: 我认为是软件问题udp传输的时候不一定是一包一包的传输的,比如如果网络忙,有可能两个udp包会在一个包传输,如果单片机处理不好,就会出现上述问题 答 4: 个人认为不会是因为网络忙造成的如果是由于网络忙造成的,那么出现丢数的现象应该是不规律的
我认为可能是由于底层硬件接收不全造成的。当然也可能是底层驱动设计不合理导致的。
以前我们曾经设计过一款以太网芯片,在测试时也曾经做过串口转以太网的测试,发现由于底层软件设计不合理会导致数据丢失,当时丢失的情况很难捕捉到,所以请仔细查看底层驱动。
另外你的这个丢失好像挺规律,前两次丢失,是否因为某些硬件的初始化需要的时间要长一些呢?
还有你对数据碰撞的设置是怎么样的呢?我印象中好象有这方面的设置。不知道你的硬件是否也有类似情况。
各位大侠好:
小弟最近在调试串口和以太网通信实验时,遇到一些问题,请帮忙解释一下,谢谢!
在从UDP到COM的传送过程中,无任何问题,一切显示正常;
但在从COM到UDP传送过程中,老是出现包丢失的现象,比如第一次发送"com_test" 只能收到com,在第二次发送完接受时才能收到余下的部分,一直都是这样收发下去……
为了协调两者的通信速度,我试着添加了taskDelay()函数,缓解了一下以上问题,但是残留的是,在最初两次收发时还是以上问题,但在第三次及其以后收发时就正常了,百思不得其解……
串口波特率115200,以太网10M/100M自适应!
各位高手有没有好的解决办法,请指点,谢谢了!
Tshell Window 的调试信息:
waiting for receiving data from udp......
The Number Of Receiving bytes is 8
MESSAGE FROM: Internet Address 192.168.0.160, port 1339
udp_test
The Number Of Write bytes is 8
waiting for receiving data from com......
The Number Of Read bytes is 3
The data of rec_message is com_test
The Number Of Send bytes is 3
waiting for receiving data from udp......
The Number Of Receiving bytes is 8
MESSAGE FROM: Internet Address 192.168.0.160, port 1339
udp_test
The Number Of Write bytes is 8
waiting for receiving data from com......
The Number Of Read bytes is 5
The data of rec_message is _testest
The Number Of Send bytes is 5
waiting for receiving data from udp......
The Number Of Receiving bytes is 8
MESSAGE FROM: Internet Address 192.168.0.160, port 1339
udp_test
The Number Of Write bytes is 8
waiting for receiving data from com......
The Number Of Read bytes is 8
The data of rec_message is com_test
The Number Of Send bytes is 8
waiting for receiving data from udp...... 答 1: 敢问搂主使用的是什么硬件作的,我用2812做同样的事没遇到问题啊 答 2: IP2022的串口网桥解决方案IP2022/IP3023是美国UBICOM推出的二款功能强大的网络通信处理器,处理器速度可达120/250MHZ,它采用软件模块的方式在芯片上实现多种通信接口,是业界领先的单芯片网络通信处理器,可以实现802.11b、802.11g、802.11a、Bluetooth、HomePlug、Ethernet、 USB、 MII、 I2C、 SPI、GPSI、 UART等协议,适用于无线通信和embedded Internet的应用。
我公司可以提供串口转以太网方面的产品开发技术支持!
邓先生
深圳市集为科技有限公司
深圳市福田区深南中路国际文化大厦1330室
电话:(86 755)8329 0805
传真:(86 755)8329 0865
手机:13924595392
MSN: gv_service@hotmail.com
QQ: 280415658
邮箱: kevin@szgv-tech.com
答 3: 我认为是软件问题udp传输的时候不一定是一包一包的传输的,比如如果网络忙,有可能两个udp包会在一个包传输,如果单片机处理不好,就会出现上述问题 答 4: 个人认为不会是因为网络忙造成的如果是由于网络忙造成的,那么出现丢数的现象应该是不规律的
我认为可能是由于底层硬件接收不全造成的。当然也可能是底层驱动设计不合理导致的。
以前我们曾经设计过一款以太网芯片,在测试时也曾经做过串口转以太网的测试,发现由于底层软件设计不合理会导致数据丢失,当时丢失的情况很难捕捉到,所以请仔细查看底层驱动。
另外你的这个丢失好像挺规律,前两次丢失,是否因为某些硬件的初始化需要的时间要长一些呢?
还有你对数据碰撞的设置是怎么样的呢?我印象中好象有这方面的设置。不知道你的硬件是否也有类似情况。
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
与电子爱好者谈读图四被打赏50分 | |
与电子爱好者谈读图二被打赏50分 | |
【FRDM-MCXN947评测】Core1适配运行FreeRtos被打赏50分 | |
【FRDM-MCXN947评测】双核调试被打赏50分 | |
【CPKCORRA8D1B评测】---移植CoreMark被打赏50分 | |
【CPKCORRA8D1B评测】---打开硬件定时器被打赏50分 | |
【FRDM-MCXA156评测】4、CAN loopback模式测试被打赏50分 | |
【CPKcorRA8D1评测】--搭建初始环境被打赏50分 | |
【FRDM-MCXA156评测】3、使用FlexIO模拟UART被打赏50分 | |
【FRDM-MCXA156评测】2、rt-thread MCXA156 BSP制作被打赏50分 |