转:uIP-AVR0.9主程序的局限

[复制链接]
2704|3
 楼主| 米其林r 发表于 2011-3-29 08:34 | 显示全部楼层 |阅读模式
虽然已经移植成功uIP1.0了,但主程序我其实一直还是在用uIP-AVR0.9的主程序。
通过这两天实验,发现我如何都不能实验断线重连,于是今天仔细看了一下主程序的结构。
发现主程序,只做了非常简单的工作:
while(1){
轮循网卡;
如果(没有新数据){ 每次定时时间到:
UIP处理每个存在的链接;
ARP刷新;
}
否则{
处理接收到的数据;
}
发现问题了么?如果你的连接断线了,UIP会关闭掉的。如果已经关闭了,那么就不会有新的数据。如果没有新的数据,就除了ARP刷新就什么也不处理了……
也就是说,你写在APPCALL中的程序,根本没**到它们去执行了……
所以,你任何在APPCALL中的判断断线、重新连接的代码全部是徒劳的~

即时生效 发表于 2011-3-29 12:42 | 显示全部楼层
楼主分析的很到位啊!
金鱼木鱼 发表于 2011-3-29 20:20 | 显示全部楼层
我也觉得这是个问题,但是怎么改呢,还有,就是如果一次性要读取一大片数据,超过1500字节的限制了,怎么弄!
X-Hawk 发表于 2011-3-29 20:22 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

340

主题

1587

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部