当前位置:首页 > 单片机 > 单片机
[导读]CS8900+s3c2410上网掉线的问题及其解决办法自我理解是,系统在运行网络的时候,经常会去使能网络中断,而造成网络复位了找到 E:\\WINCE420\\WINCE420\\PLATFORM\\SMDK2410\\KERNEL\\HAL\\cfw.c找到 BOOL OEMInterruptEnable()

CS8900+s3c2410上网掉线的问题及其解决办法

自我理解是,系统在运行网络的时候,经常会去使能网络中断,而造成网络复位了

找到 E:WINCE420WINCE420PLATFORMSMDK2410KERNELHALcfw.c
找到 BOOL OEMInterruptEnable() 函数 里 case SYSINTR_ETHER:

使网卡的初始化只出现一次,因为每次初始化以后,连接就会断掉

加一个全局变量 Inited == FALSE


case SYSINTR_ETHER: // Ethernet on EINT9.

if(Inited == FALSE) // edit by andy

{
s2410IOP->rEINTPEND = 0x200;
s2410INT->rSRCPND = BIT_EINT8_23; // by shim
if (s2410INT->rINTPND & BIT_EINT8_23)
s2410INT->rINTPND = BIT_EINT8_23;
Inited = TRUE;
}
s2410IOP->rEINTMASK &= ~0x200;
s2410INT->rINTMSK &= ~BIT_EINT8_23;
break;


http://hi.baidu.com/fei_chen/blog/item/c961e933ff04d342ac4b5f3c.html


WINCE下s3c2410+cs8900 板子的网络问题解决

WINCE下网络PING通一会就断,解决方法
根本原因 在于 中断处理服务中,把已经产生的 中断 标志 给 清除掉了!
这样就丢失一次中断。因为原驱动里配置中断为上升沿触发!一次中断丢失,就导致不会再产生中断信号跳变,因为,只有在中断服务中读取了cs8900的 Interrupt status queue寄存器后,才会产生下一次中断!(见cs8900 datasheet 的 14页 中关于 INTRQ的解释!
关于为什么 , 原驱动 会 把已经产生的 中断 标志 给 清除掉了! 你可以跟踪一下 cs8900驱动 中断服务中 开中断 关中断的过程! 解决cs8900+s3c2410+wince平台网络断线的问题! <解决办法: 找到 E:WINCE420WINCE420PLATFORMSMDK2410KERNELHALcfw.c
找到 BOOL OEMInterruptEnable() 函数 里 case SYSINTR_ETHER:
if(Inited == FALSE) s2410IOP->rEINTPEND = 0x200; s2410INT->rSRCPND = BIT_EINT8_23; // by shim
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;这样改过后! 可能需要 全部重新编译, clean 后 再重新 build !! 再测试网络!就没有问题了!


转贴,测试正确

解决办法:
找到 E:WINCE420WINCE420PLATFORMSMDK2410KERNELHALcfw.c
找到 BOOL OEMInterruptEnable() 函数 里 case SYSINTR_ETHER:
if(Inited == FALSE)
{
s2410IOP->rEINTPEND = 0x200;
s2410INT->rSRCPND = BIT_EINT8_23; // by shim
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;


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭