启动WinCE的时候,网线没有识别,电脑右下角 网络图标,显示“x”(有一定概率)。但是把网线重新插拔一次就正常了。
使用 10米的网线时候,WinCE启动时候,网线基本可以识别。
使用 100米的网线时候,WinCE启动的时候,大概%50的概率可以连上。重新插拔一次网线,100%可以正常。
请问这个是什么原因?有谁弄过? 如果是线太长,那么插拔一次就可以了?
DM9000的BUG?外部电路的原因?驱动的原因?三个那个可能行更大?
希望大家,指点,起码要有一个解决的方向!
7 个解决方案
#1
10米可以识别应该不算BUG,你是先插上网线的,估计得看一下9000驱动加载的时候,初始化的时候是不是有一个检测线有没有插上的过程,再个跟硬件确认一下这个检测和启动过程。
我没有做过,只能提供我的思路,希望高手出现
我没有做过,只能提供我的思路,希望高手出现
#2
找到了这个 检测的 函数。
BOOL NIC_DEVICE_OBJECT::DeviceCheckForHang(void)
{
U16 link_state;
// check link status
link_state = DeviceReadPhy(0, 0x1);
link_state = DeviceReadPhy(0, 0x1);
RETAILMSG(debug,(TEXT("[DM9isa]Link=%d\r\n"), (link_state&0x4)));
if (m_nOldLinkState != link_state)
{
if (link_state & 0x4)
SetConnectionStatus(true);
else
SetConnectionStatus(false);
}
m_nOldLinkState = link_state;
发现,100米网线的时候,wince启动时,寄存器是检测不到的。插拔一次后就检测到了。
#3
我10m 没啥问题,100米真的没有试过了,是你的网线是什么的?
按照道理不至于会这样啊。
按照道理不至于会这样啊。
#4
网线质量应该没有问题。而且后来发现和电脑也有关系的,有一台电脑也不会出现。网口的差分信号不匹配?
#5
那就是网线不行了。电脑都会。
一般网线不会那么远的, 除非你的中继器很强。
#6
之前有遇過可能是 MDIX 那邊的問題, 你可以找 DaviCom 或是代理商問問看.
#7
我现在要在原有的基础上加2片DM9000 注册表里面的linkage该神马设置呢
#1
10米可以识别应该不算BUG,你是先插上网线的,估计得看一下9000驱动加载的时候,初始化的时候是不是有一个检测线有没有插上的过程,再个跟硬件确认一下这个检测和启动过程。
我没有做过,只能提供我的思路,希望高手出现
我没有做过,只能提供我的思路,希望高手出现
#2
找到了这个 检测的 函数。
BOOL NIC_DEVICE_OBJECT::DeviceCheckForHang(void)
{
U16 link_state;
// check link status
link_state = DeviceReadPhy(0, 0x1);
link_state = DeviceReadPhy(0, 0x1);
RETAILMSG(debug,(TEXT("[DM9isa]Link=%d\r\n"), (link_state&0x4)));
if (m_nOldLinkState != link_state)
{
if (link_state & 0x4)
SetConnectionStatus(true);
else
SetConnectionStatus(false);
}
m_nOldLinkState = link_state;
发现,100米网线的时候,wince启动时,寄存器是检测不到的。插拔一次后就检测到了。
#3
我10m 没啥问题,100米真的没有试过了,是你的网线是什么的?
按照道理不至于会这样啊。
按照道理不至于会这样啊。
#4
网线质量应该没有问题。而且后来发现和电脑也有关系的,有一台电脑也不会出现。网口的差分信号不匹配?
#5
那就是网线不行了。电脑都会。
一般网线不会那么远的, 除非你的中继器很强。
#6
之前有遇過可能是 MDIX 那邊的問題, 你可以找 DaviCom 或是代理商問問看.
#7
我现在要在原有的基础上加2片DM9000 注册表里面的linkage该神马设置呢