fmql之以太网调试记录

fmql20系列芯片,phy为RTL8211芯片。

瑞昱RTL8211FS/RTL8211FSI 10/100/1000M以太网收发器datasheet-一牛网论坛

Procise配置system IP,选择Eth0,MDIO,Eth reset。Export Hardware选择Peripheral Test模板工程(回环测试)。lwip工程可以调网口。

注释main中除GIC和GMAC的内容(其他不需要测试),保留如下内容:

在Peripheral Test中,默认的芯片为88E1116R,所以需要修改芯片型号和地址(查阅芯片数据手册):

修改ID(不然检测不到PHY芯片):

发现在Procise配置Eth时,速率为1000Mbps,那么读取到的SPEED即为1000Mbps;速率为100Mbps,那么读取到的SPEED即为100Mbps(自适应设置)。

不知道在哪强制设置SPEED。

运行结果:

很奇怪,单步调试的话结果就不一样:

(领导说是延时没做好)

PHY link timeout:

 是fmsh_mdio_read出问题?

自适应设置

寄存器配置

phy RTL8211FS配置-CSDN博客

测试结果:

PHY link up

GMAC failed        ----(官方)可能是PHY给的rx_clk不对,用示波器查看rx_clk是否正常【什么样算正常,什么算不正常?】

----(官方)如果GMAC loopback成功,PHY link timeout,是GMAC和PHY的通信出问题,重点检查硬件设计

RTL8211 集成10_100_1000M以太网精密收发器-CSDN博客

RTL8211 时序分析 (基于FPGA的千兆网应用)-CSDN博客

网卡PHY 移植注意事项_phy的rx接收异常,tx输出正常-CSDN博客

lwip程序跑一下试试:

Ping通,但是连不上

破案了,能ping通但是网络不通,是它们在搞鬼_ping通但是无网络-CSDN博客

能Ping通外网但就是不能打开所有网页的解决办法_能ping通但是不能访问网页-CSDN博客

zynq与PC网线互ping成功_zynq与联网电脑-CSDN博客

应该不是ip、port冲突的原因。

重启电脑:还是不行。

好记性不如烂笔头(一)——局域网可以Ping通,但Socket无法连接_socket未连接怎么办-CSDN博客

关闭防火墙:没用。

百度安全验证icon-default.png?t=N7T8https://baijiahao.baidu.com/s?id=1738410562299490730&wfr=spider&for=pc能检测到phy ID:MDIO正常。

MAC与PHY link成功:rx_clk正常。

找了领导,领导说配置应该没问题,但是:(以下修改均根据硬件来)

换成tcp协议:加中断(检测到数据就中断);或者轮询模式

RGMII换成MII(根据硬件来):目前还没修改

成功!

(但是GMAC回环测试依然failed)

RGMII设置修改处:

 

看领导的操作,最开始并没有像我一样急哄哄地运行程序,而是从main函数开始看数据的流向/程序走向。

弄清楚配置函数/结构体的数据流向。

告诉我可以自己做一个流程图(大神肯定脑海里有了)。

并且,自己在遇到问题的时候太关注于细节(某句代码是否正确,某个寄存器配置是否正确,etc)忽略了大局/整体。

当然,硬件设计也很重要,所有的软件都是在硬件设计的基础上的。所以一定要根据硬件来(重要!!!)

硬件连线决定的 电压 / ADDR / 芯片配置 / interface / 等等,一定要在软件设计前弄清楚。

学习之路还很长,继续加油吧

  • 20
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值