社区编辑申请
注册/登录
一篇带给你RTL8201网络芯片讲解
服务器 芯片
本篇给大家详细讲解RTL8201网络芯片的相关知识,希望能够帮助到你!

01基础问题

1.1、芯片数据接口


RTL8201E(L)是一种单芯片/单端口快速以太网物理接收器,支持MII接口,RMII接口,SNI接口。

MII接口和RMII接口切换在8.1.1章节有讲到,如下图:


选择MII接口,把COL/SNI脚拉低。

RTL8201E的框图如下


和MCU连接的系统框图如下:


①RJ45也就是网口,就是我们常见的网口,如下图:


②magnetics,直译磁性元件,这里的通常叫法为:网络变压器。网络变压器又名网络隔离变压器、以太网变压器、网络滤波器,主要有信号传输、阻抗匹配、波形修复、信号杂波抑制和高电压隔离等作用。如下图


③PHY芯片,中文可称之为端口物理层,PHY连接一个数据链路层的设备(MAC)到一个物理媒介,如光纤、铜缆线或网线等。也就是本文重点讲解的内容,如下图


④MAC部分,主要是STM32的ETH外设部分,这方面之前的文章已经讲解过了


涉及到的文章有《STM32网络之SMI接口》《STM32网络之MII和RMII接口》《STM32网络电路设计》《STM32网络之MAC控制器》《STM32网络之DMA控制器》《STM32网络之中断》。

1.2、芯片地址

MCU如何选择PHY芯片的地址,参看芯片的SMI接口

RTL8201的PHY地址经过两个管脚配置的


在这里我们看出,这两个管脚和LED灯的管脚是复用的 

为了减少RTL8201EL的引脚数,LED引脚和PHY地址引脚复用。额外的捆绑考虑和LED使用必须被考虑,为了避免争用。具体的来说,当LED的输出被直接用来驱动LED时,每一个输出驱动的活跃状态依赖于相应的PHAD输入在上电和复位采样的逻辑电平。例如,如图6(左侧)显示,如果一个给定的输入电阻PHYAD拉高,那么相应的输出将被配置为低电平驱动。在右边,我们可以看到,如果一个给定的输入电阻拉低PHYAD然后相应的输出将被配置为一个高电平驱动。PHY地址配置脚不应该直接和VCC或GND相连,但是一个电阻(比如5.1KΩ)拉高或拉低。如果没有LED指示灯,LED的路径组件(LED+ 510Ω)可以被删除。


查看PCB得知,我们的控制卡PHY的地址是0

1.3、时钟源的选择


CKXTAL2 25MHz晶振输出(25MHzCrystal Output):该引脚提供25MHz晶振输出。当X1用一个外部的25MHz振荡器驱动时该引脚必须悬空。

CKXTAL1 25MHz晶振输入(25MHzCrystalInput):该引脚提供25MHz晶振输入。如果使用一个25MHz的振荡器,连接X1到振荡器的输出。参见9.3节对时钟源的说明。


我们使用MCU的MCO1提供时钟,查看电路图,X2是悬空的。

备注:

如果使用25MHz无源晶振,两个脚都需要连接,和MCU的无源晶振连接相同,关于晶振方面知识,可以参考《晶振原理讲解》。

02寄存器

PHY寄存器是由IEEE802.3定义的,一般通过SMI对PHY进行管理和控制,也就是读写PHY内部寄存器。PHY寄存器的地址空间为5位,可以定义0~31共32个寄存器。IEEE802.3定义了0~15这16个寄存器的功能,16~31寄存器由芯片制造商自由定义。

寄存器0、寄存器1和寄存器15讲解以及IEEE802.3官方文档,请看《PHY寄存器》。

自定义寄存器16

获取PHY芯片的链接速度

ST官方库文件的驱动在stm32f2x7_eth_conf.h最后部分


ST官方使用的是DP83848芯片,寄存器16可以用来获取芯片的速度,这个寄存器就是DP83848芯片厂家自定义的寄存器,所以在移植STM32官方代码时注意这个问题

我们使用的RTL8201芯片也是并不是这样的

寄存器16 Nway设置寄存器


翻译成中文如下

其他寄存器并非必须的寄存器,重要的寄存器0和寄存器1已经在《PHY寄存器》讲解过了。

RTL8201资料下载:

链接:https://pan.baidu.com/s/1hKQcp9KCyICbTiZRANTiZA

提取码:wkr1

(提示:公众号不支持外链接,请复制链接到浏览器下载)

 

责任编辑:姜华 来源: 知晓编程
相关推荐

2022-04-19 08:15:53

DDD领域建模实战

2022-05-06 16:31:27

人工智能自然语言生物特征识别

2022-05-03 22:25:57

Python浏览器语言

2022-05-06 09:40:48

智能云原生云原生人工智能

2022-05-07 09:08:13

路由策略网络规划

2022-05-14 16:08:25

边缘计算AI人工智能

2022-05-10 07:24:19

2022-05-10 16:04:40

编程语言PythonC语言

2022-05-13 07:21:58

谷歌IO大会安卓13

2022-05-02 08:30:46

网络Wi-Fi

2022-05-15 22:21:33

WiFi热点无效WiFiWindows 11

2022-04-26 07:49:23

Nagios开源监控

2022-05-13 23:08:56

物联网安全智能汽车

2022-05-07 15:31:19

物联网5G智慧城市

2022-05-09 16:33:03

EDR终端安全

2022-05-13 11:13:22

恶意软件黑客

2022-05-07 10:20:17

truncatedeleteMySQL

2022-05-07 10:09:01

开发Java日志

2022-05-09 11:57:39

云原生实践安全

2022-05-11 14:05:11

区块链网络安全存储

同话题下的热门内容

安谋科技结束纷争,看新管理团队如何开启新阶段?Gartner:2022年全球半导体收入预计将增长13.6%

编辑推荐

网络 | 5G芯片大战,四大供应商各有所图AI 芯片和传统芯片有何区别?中兴危机后,马云马化腾之间的“芯片暗战”为什么不建议程序员买M1芯片MacBook?PS2无线遥控手柄与STM32单片机通信
我收藏的内容
点赞
收藏

51CTO技术栈公众号