阅读:2794回复:22
CS8900时间长了断线的问题
CS8900+pxa255 在wince下,系统最初启动的时候能正常上网,时间长了以后就不行了,连网关都ping不通了,请问有没有人遇到过这种现象?请帮忙分析一下是什么问题
|
|
沙发#
发布于:2005-01-12 14:20
你这个问题比较奇怪,ping自己能通吗?还有,ping同一子网内的其他机器能ping通吗?
[编辑 - 1/12/05 by wwei_wang] |
|
|
论坛版主
|
板凳#
发布于:2005-01-12 14:32
这个问题兄弟伙恐怕就没得办法了,慢慢找原因吧,对了,确定你的网卡工作始终正常?你可以始终保持打印信息,看是否后来发送的包成功,注意硬件时钟是否正常,注意软件缓冲区管理有无不妥
|
|
地板#
发布于:2005-01-12 14:52
系统最初启动的一段时间内,能ping通网关,能上网,一段时间后就不行了
|
|
论坛版主
|
地下室#
发布于:2005-01-12 15:29
慢慢查,慢慢查:))先看看后来不正常的时候SENDFRAME和GETFRAME能不能返回正确的东西
|
|
5楼#
发布于:2005-01-13 11:22
各位老大,把你们网卡驱动的 miniport。c文件下的driverentry函数下的NDIS_MINIPORT_CHARACTERISTICS结构填写、NDIS_PAGEABLE_FUNCTION函数下的NdisMRegisterInterrupt函数调用的代码贴出来让我看看好吗,问题可能就在这里!
|
|
6楼#
发布于:2005-01-13 11:39
网卡驱动是你自己写的吗?还是你修改过?
|
|
|
7楼#
发布于:2005-01-13 12:13
没有修改过,我在msdn的论坛上看到有人跟我有一样的问题,他改了驱动,正常了,可是我对照我的一看,我的跟他改后的一样,但是我的不正常,所以我想看看你们的是怎样的,这些代码估计是跟驱动芯片和cpu没有关系,
|
|
论坛版主
|
8楼#
发布于:2005-01-13 14:10
不好意思,没有具体的东西:((
|
|
9楼#
发布于:2005-01-13 15:29
这样,我贴出我的,大家看看,如果你的跟我的有区别,请指出:
NDIS_MINIPORT_CHARACTERISTICS CS8900Char; ………………………… CS8900Char.MajorNdisVersion = CS8900_NDIS_MAJOR_VERSION; CS8900Char.MinorNdisVersion = CS8900_NDIS_MINOR_VERSION; CS8900Char.CheckForHangHandler = NULL; CS8900Char.DisableInterruptHandler = CS8900DisableInterrupt; CS8900Char.EnableInterruptHandler = NULL;……这是关键…… CS8900Char.HaltHandler = CS8900Halt; CS8900Char.HandleInterruptHandler = CS8900HandleInterrupt; CS8900Char.InitializeHandler = MiniportInitialize; CS8900Char.ISRHandler = CS8900Isr; CS8900Char.QueryInformationHandler = CS8900QueryInformation; CS8900Char.ReconfigureHandler = NULL; CS8900Char.ResetHandler = CS8900Reset; CS8900Char.SendHandler = CS8900Send; CS8900Char.SetInformationHandler = CS8900SetInformation; CS8900Char.TransferDataHandler = CS8900TransferData; …………………… // // Initialize the interrupt. // status = NdisMRegisterInterrupt( &Adapter->Interrupt, Adapter->MiniportAdapterHandle, Adapter->InterruptNumber, Adapter->InterruptNumber, FALSE,……这是关键…… FALSE, NdisInterruptLatched ); |
|
论坛版主
|
10楼#
发布于:2005-01-13 16:02
你说能跑了,这些应该没有原则性问题,不过EnableInterruptHandler为什么是null呢?
|
|
11楼#
发布于:2005-01-13 16:37
见链接:
http://msdn.microsoft.com/newsgroups/default.aspx?query=cs8900&dg=microsoft.public.windowsce.platbuilder&cat=en-us-msdn-mobile-wince&lang=en&cr=US&pt=22acacbe-f6c2-4ede-9ec2-4784e24fa8ea&catlist=1709D063-AFD8-48C7-B806-C5AB84F8EE9F%2C774F24A2-F71F-425F-AC2B-DC48AB0DA5C9&dglist=&ptlist=&exp=&sloc=en-us 我的英文不太好哪位兄弟能给我说说 |
|
论坛版主
|
12楼#
发布于:2005-01-13 17:05
他说EnableInterruptHandler和disableInterruptHandler都置成null,我没有看源代码,那你就照做。
还有就是MTU用1514,记不太清了802.3规定的MTU好像是1500吧加14字节的MAC头,CS8900会自动补CRC,那你改成1514试试 |
|
13楼#
发布于:2005-01-13 20:49
我按照他的做了,可是不行啊,一开ie系统就跑不动了,可以确定是没有死机,速度非常慢,连鼠标都没法移动了,帮忙看看源码,看还要什么可以解决的
|
|
论坛版主
|
14楼#
发布于:2005-01-14 16:51
兄弟儿,我这儿没东西啊,还有,你怎么肯定是网卡驱动的问题?现在不会断了吧?
|
|
15楼#
发布于:2005-01-17 09:55
应该是微软的ndis的bug了,我看凡是在arm上做网卡的都遇到了这个问题,只能等微软出补丁了
|
|
论坛版主
|
16楼#
发布于:2005-01-17 15:30
喔,不过你说的等很久的问题大概出现在使用ie多久之后?我记得原来在cepc上我上网也上了一段时间,没发现这个问题啊
|
|
17楼#
发布于:2005-01-17 21:18
是这样的,ping 网关,放在哪里不管,则很长时间都能ping通,如果此时打开一个网页,仍能ping通,如果再打开一个网页,或者由那个网页跳转到另外一个网页,就不能ping了,
|
|
18楼#
发布于:2005-01-18 08:12
你的问题挺难缠的:))
有没有换块同样的板子试试?看看是不是硬件问题。 |
|
|
19楼#
发布于:2005-01-18 08:55
应该不是硬件的问题,网上有好多人问这个问题呢,应该是通病了,用arm cpu的可以试试啊
|
|
上一页
下一页