[STM32F1] 数据部分时钟是低电平

[复制链接]
1054|22
 楼主| wyjie 发表于 2020-7-5 16:59 | 显示全部楼层 |阅读模式
最近在做STM32F107的以太网通信,使用的是TLK110的PHY芯片,基本功能和DP83848类似,现在在SMI通信处卡壳了,进行写操作时,对STM32的MDIO和MDC管脚测量波形,都是正常的,但进行读操作时,无论我刚才写了什么数据,波形时钟不变,出去前面的引导码等等,数据部分时钟是低电平。
午夜粪车 发表于 2020-7-5 17:02 | 显示全部楼层
硬件搭建有问题
 楼主| wyjie 发表于 2020-7-5 17:06 | 显示全部楼层
还出现了另外一个问题,进行SMI读操作的时候进行程序调试,程序先走到绿箭头后又走到黄箭头,出现了程序倒走的情况
zhenykun 发表于 2020-7-5 17:13 | 显示全部楼层

“MDC时钟是低电平?”
如果是硬件SMI,请查看GPIO口配置。
SMI接口中,STM32负责为SMI通讯接口提供时钟,无论是读还是写。
 楼主| wyjie 发表于 2020-7-5 17:17 | 显示全部楼层
刚才那个打错了,是始终是低电平,不是时钟。恩,时钟确实是STM提供的,现在不知道从哪里下手找原因。
dengdc 发表于 2020-7-5 17:20 | 显示全部楼层

PHY地址是多少?
PHY的BootStrap查过没有?
 楼主| wyjie 发表于 2020-7-5 17:23 | 显示全部楼层
PHY就用的缺省值,就是没加任何下拉,0x01
lizye 发表于 2020-7-5 17:30 | 显示全部楼层

1. 原理图请发下
2. 检查PHY的物理地址,寄存器地址和寄存器标志位
spark周 发表于 2020-7-5 17:34 | 显示全部楼层

验证PHY
    PHY在Bootstrap后,按照自动协商协议应该可以和MAC层直接进行数据传输的。你可以在调试的过程中跳过读取PHY寄存器部分的代码来验证PHY的物理连接。
午夜粪车 发表于 2020-7-5 17:37 | 显示全部楼层
调试时把编译器优化开到最低试试!
 楼主| wyjie 发表于 2020-7-5 17:40 | 显示全部楼层

我自己用万用板搭的电路,就按照芯片数据手册做的,没画~~~
 楼主| wyjie 发表于 2020-7-5 17:46 | 显示全部楼层
物理地址寄存器什么的怎么检验,是用STM32去读吗?
heweibig 发表于 2020-7-5 17:54 | 显示全部楼层
我还发现一个问题就是STM提供给PHY的时钟有50MHz(RMII模式),但是时钟信号的峰峰值只有1V,请问这是不是太小了,会不会对通信有影响
 楼主| wyjie 发表于 2020-7-5 17:57 | 显示全部楼层
更改SMI的工作模式时,即MII和RMII,只要修改例程中的宏定义就可了,还是还有其他需要修改的地方
shimx 发表于 2020-7-5 18:00 | 显示全部楼层
时钟是怎么提供的? 50MHz,通过PLL倍频输出的?  峰峰值1V不一定不够,但你需要检查一下电平的标准满足PHY的CMOS电平不?
午夜粪车 发表于 2020-7-5 18:05 | 显示全部楼层
请用示波器测量一下时钟的上升时间,下降时间,抖动;与PHY手册值对比一下。
zhanghqi 发表于 2020-7-5 18:12 | 显示全部楼层
只需要修改宏定义。你用的PHY是哪一片?
 楼主| wyjie 发表于 2020-7-5 18:15 | 显示全部楼层

TI的TLK110,管脚可以和DP83848管脚对管脚兼容,就是性能稍微好一些。
光SMI接口都搞了很久了,哎。不知道从哪下手了。
wuhany 发表于 2020-7-5 18:19 | 显示全部楼层
为什么给板子供电而且插上网线后RJ45的L-引脚还是高电平啊,特别不稳定,有的时候会是低电平,不过只是一会会
jiaxw 发表于 2020-7-5 18:22 | 显示全部楼层

检查PHY的物理地址,寄存器地址和寄存器标志位
您需要登录后才可以回帖 登录 | 注册

本版积分规则

927

主题

12706

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部