OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3421|回复: 2

为什么原子的例程LWIP RAW_TCP客户端的例程里会跑死机 报错

[复制链接]

13

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
176
金钱
176
注册时间
2017-7-14
在线时间
56 小时
发表于 2019-5-11 23:21:05 | 显示全部楼层 |阅读模式
20金钱
为什么连接时间一长会出现图中的 “接收错误!接收到数据包个数”这种错误呢,而且我在LWIP RAW_TCP是实验里搜索这个错误还搜不到,那么它是怎么被打印出来的呢。





捕获.PNG

最佳答案

查看完整内容[请看2#楼]

if(status&EIR_RXERIF) //接收错误中断标志位 { ENC28J60_Write_Op(ENC28J60_BIT_FIELD_CLR,EIR,EIR_RXERIF); packetnum=ENC28J60_Read(EPKTCNT); temp=ENC28J60_Read(ERXRDPTH)8); //先写入低字节 ENC28J60_Write_Op(ENC28J60_BIT_FIELD_SET,ECON2,ECON2_PKTDEC); printf("接收错误!接收到数据包个数:%d\r\n",packetnum); } 原来是硬件问题,接收中断错误,有没有人遇到过这种情况啊
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

13

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
176
金钱
176
注册时间
2017-7-14
在线时间
56 小时
 楼主| 发表于 2019-5-11 23:21:06 | 显示全部楼层
if(status&EIR_RXERIF)                //接收错误中断标志位
        {
                ENC28J60_Write_Op(ENC28J60_BIT_FIELD_CLR,EIR,EIR_RXERIF);       
                packetnum=ENC28J60_Read(EPKTCNT);
                temp=ENC28J60_Read(ERXRDPTH)<<8;                //读取高字节
                temp|=ENC28J60_Read(ERXRDPTL);                        //读取低字节
                temp++;
                ENC28J60_Write(ERXRDPTL,temp&0XFF);                //先写入低字节
                ENC28J60_Write(ERXRDPTH,temp>>8);                //先写入低字节
                ENC28J60_Write_Op(ENC28J60_BIT_FIELD_SET,ECON2,ECON2_PKTDEC);
                printf("接收错误!接收到数据包个数:%d\r\n",packetnum);
        }


原来是硬件问题,接收中断错误,有没有人遇到过这种情况啊
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165352
金钱
165352
注册时间
2010-12-1
在线时间
2108 小时
发表于 2019-5-13 02:37:51 | 显示全部楼层
帮顶
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-24 19:14

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表