说明: 开发板:硬石YS-H7Pro, 芯片stm32h743iit6
开发工具:win10系统,ip固定为192.168.2.201; IDE为rt-thread studio 2.0
项目配置:按芯片型号添加RT-Thread v4.02项目;board.h取消eth部分相应注释,启动lan8720驱动;stm32h7xx_hal_conf中取消HAL_ETH_MODULE_ENABLED注释;board.c中添加eth_msp初始化及phy_reset函数;rt-thread设置添加LWIP,取消DHCP,固定ip为192.168.2.100
其他:默认drvers下面的drv_eth驱动报错,从art-pi的sdk中拷贝drv_eth.c及drv_eth.h,并修改phy_reset部分;
问题:
编译下载后,网络连接状态正常,不过报DMA发送失败,双向ping不通。 \ | / RT - Thread Operating System
/ | \ 4.0.2 build Feb 2 2021
2006 - 2019 Copyright by rt-thread team
lwIP-2.0.2 initialized!
[I/sal.skt] Socket Abstraction Layer initialize success.
[W/drv.emac] eth transmit frame faild: 8
msh >
RT-Thread shell commands:
ifconfig - list the information of all network interfaces
ping - ping network host
dns - list and set the information of dns
netstat - list the information of TCP / IP
version - show RT-Thread version information
list_thread - list thread
list_sem - list semaphore in system
list_event - list event in system
list_mutex - list mutex in system
list_mailbox - list mail box in system
list_msgqueue - list message queue in system
list_mempool - list memory pool in system
list_timer - list timer in system
list_device - list device in system
exit - return to RT-Thread shell mode.
help - RT-Thread shell help.
ps - List threads in the system.
free - Show the memory usage in the system.
reboot - Reboot System
msh >ifconfig
network interface device: e0 (Default)
MTU: 1500
MAC: 00 80 e1 17 3d 22
FLAGS: UP LINK_UP INTERNET_DOWN DHCP_DISABLE ETHARP BROADCAST IGMP
ip address: 192.168.2.100
gw address: 0.0.0.0
net mask : 255.255.255.0
dns server #0: 0.0.0.0
dns server #1: 0.0.0.0
msh >ping 192.168.2.201
[W/drv.emac] eth transmit frame faild: 24
[W/drv.emac] eth transmit frame faild: 24
[W/drv.emac] eth transmit frame faild: 24
ping: from 192.168.2.201 icmp_seq=0 timeout
[W/drv.emac] eth transmit frame faild: 18
[W/drv.emac] eth transmit frame faild: 18
ping: from 192.168.2.201 icmp_seq=1 timeout
ping: from 192.168.2.201 icmp_seq=2 timeout
[W/drv.emac] eth transmit frame faild: 18
[W/drv.emac] eth transmit frame faild: 18
[W/drv.emac] eth transmit frame faild: 18
ping: from 192.168.2.201 icmp_seq=3 timeout
msh >[W/drv.emac] eth transmit frame faild: 18
[W/drv.emac] eth transmit frame faild: 18
[W/drv.emac] eth transmit frame faild: 18
|