OpenVINOTM,给你看得见的未来!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » DM9000AEP 在U-BOOT中能识别ID但PING不通主机

共5条 1/1 1 跳转至

DM9000AEP 在U-BOOT中能识别ID但PING不通主机

菜鸟
2012-10-21 00:28:21    评分
我参照utu2440开发板做的板子,网络部分是DM9000AEP+HS9016网络变压器+RJ45 LED插座,在U-BOOT中能识别DM9000AEP的ID,RJ45插座的灯也闪,但PING不通主机,用抓包工具可以抓到DM9000AEP发出到主机的ARP包,但DM9000AEP收不到主机返回的应答包,所以PING不通,也不能TFTP,我跟踪进U-BOOT源码,driver/net/dm9000x.c中的eth_rx函数中:
/* Check packet ready or not, we must check
    the ISR status first for DM9000A */
 if (!(DM9000_ior(DM9000_ISR) & 0x01)) /* Rx-ISR bit must be set. */
  return 0; 
加了打印后发现eth_rx每次都是在这里返回,ISR(接收中断寄存器)始终置不了位,路过的帮忙指点下



关键词: DM9000AEP     U-BOOT     中能     识别     不通    

高工
2012-10-22 22:29:43    评分
2楼
是不是你的网线物理连接回路有问题啊(RX)

菜鸟
2012-10-23 16:37:10    评分
3楼
我怀疑是芯片有问题,换了芯片后板子每次重启可以PING通一两次,之后再PING就像死机了,偶尔PING通时能收到ARP和ICMP应答,但不能TFTP下载BIN文件,量了49.9欧电阻都是好的,我怀疑是不是板子布线有问题,我用的自动布线,没有走差分线等长布线,会不会是这个原因?

高工
2012-10-26 09:12:53    评分
4楼
自动布线的啊,这个有可能是问题所在

菜鸟
2012-10-26 10:56:58    评分
5楼
我后来看了原理图,RXD+/RXD-,TXD+/TXD-是设计的两对差分线信号,我没走差分线,可能就是这个原因

共5条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]