WINCE下s3c2410+cs8900 板子的网络问题解决
来源:互联网 发布:淘宝客服电话沟通技巧 编辑:程序博客网 时间:2024/06/08 02:52
WINCE下网络PING通一会就断,解决方法
根本原因在于中断处理服务中,把已经产生的中断标志给清除掉了!
这样就丢失一次中断。因为原驱动里配置中断为上升沿触发!一次中断丢失,就导致不会再产生中断信号跳变,因为,只有在中断服务中读取了cs8900的 Interrupt status queue寄存器后,才会产生下一次中断!(见cs8900 datasheet 的 14页中关于 INTRQ的解释!
关于为什么,原驱动会把已经产生的中断标志给清除掉了!你可以跟踪一下 cs8900驱动中断服务中开中断关中断的过程!解决cs8900+s3c2410+wince平台网络断线的问题!
解决办法:
找到E:\WINCE420\WINCE420\PLATFORM\SMDK2410\KERNEL\HAL\cfw.c
找到 BOOLOEMInterruptEnable()函数里 case SYSINTR_ETHER:
if(Inited == FALSE)
{
s2410IOP->rEINTPEND = 0x200;
s2410INT->rSRCPND = BIT_EINT8_23; // byshim
if (s2410INT->rINTPND &BIT_EINT8_23)
s2410INT->rINTPND = BIT_EINT8_23;
Inited = TRUE;
}
s2410IOP->rEINTMASK &= ~0x200;
s2410INT->rINTMSK &= ~BIT_EINT8_23;
break;
在全局定义: BOOL Inited = FALSE;
- WINCE下s3c2410+cs8900 板子的网络问题解决
- 【S3C2410/WinCE】极度郁闷!cs8900的MAC地址无从修改。。。。
- cs8900移植基于linux2.6.33下的s3c2410开发板
- s3c2410 基于linux2.6的 cs8900网卡的移植
- 基于s3c2410 2.6.30内核cs8900网卡驱动的移植
- linux2.6.30.4基于platform_driver的cs8900(s3c2410)的驱动程序
- linux 2.6.24.4在S3C2410上的移植(CS8900网卡驱动)(基于GEC2410)
- 如何修改wince(s3c2410)的MAC地址?
- wince(s3c2410)中RTC的问题
- S3C2410的WINCE BSP添加串口支持
- S3C2410的WINCE BSP添加串口支持
- 如何修改wince(s3c2410)的MAC地址?
- 如何修改wince(s3c2410)的MAC地址?
- 如何修改wince(s3c2410)的MAC地址
- S3C2410的WINCE BSP添加串口支持
- 如何修改wince(s3c2410)的MAC地址?
- WINCE下的ASIO网络库
- vs2005+tiny6440板子winCE的在线调试若干问题的解决
- C语言程序
- find_first_not_of
- 一起学Python 1.2 编写并运行一个真正的程序(转自人人网 公共主页 一起学python)
- VC6.0中创建动态控件
- 对堆栈的解析
- WINCE下s3c2410+cs8900 板子的网络问题解决
- Vmware下Linux如何ping通Windows
- Unicode字符集下CString与char *转换 (解决中文乱码等)
- 【报名抢票】西南游戏开发者大会~
- 性能测试调优_DB调优分析
- Lock-Free Data Structures
- Android的AlertDialog详解
- JAVA中转义字符
- COM 组件设计与应用(七)——编译、注册、调用