本帖最后由 fluaxy 于 2016-1-29 10:20 编辑
大家好,我参照原子哥的探索者原理图,用的LAN8720做PHY,想实现stm32与PC机的tcpip通讯。遇到如下问题:
1. 无论是插笔记本还是插在路由器上,从串口调试界面来看,均显示“DHCP服务超时,使用静态IP地址!”
2. 无论连接笔记本还是路由器,ping不通,显示“无法访问目标主机”(ping的时候RJ45座上的灯会闪)
看样子是接收到了,但是stm32内部处理出了问题?
3. 此时用串口调试,发送函数ETH_ReadPHYRegister(0X0,0X1F),会得到与手册上一致的结果
刚接触TCPIP,出现这样的问题完全没思路如何继续解决下去,望大家指点一二。
附原理图:
另外补充描述,我使用的是stm32F407VGT6,是100脚的芯片,和探索者不同,但是晶振都是8MHz的,使用的是原子哥的“LWIP扩展例程”下的“网络实验1 LWIP无操作系统移植”。
更改部分:
1. 注释掉了LCD、LED、KEY、FSMC初始化部分。
2. 注释了对外部内存的初始化“my_mem_init(SRAMEX);”保留了my_mem_init(SRAMCCM);和my_mem_init(SRAMIN);
3. 在Lan8720.c中将原先的PG11/13/14更改到对应100脚芯片的PB11/12/13上。
除此以外还需要对其他部分进行更改么?
@zhoujianwen 请问您的问题解决了吗,能否分享下方法,我最近做的也出现的同样的问题。焊接正常ethernetif_input(struct netif *netif)函数还能接收到数据,就是ping不通
一周热门 更多>