STM32的以太网外设+PHY(LAN8720)使用详解(3):PHY寄存器详解

0 工具准备

c 复制代码
1.野火 stm32f407霸天虎开发板
2.LAN8720数据手册
3.STM32F4xx中文参考手册

1 PHY寄存器

前面介绍到,站管理接口(SMI)允许应用程序通过2线时钟和数据线访问任意PHY寄存器,同时该接口支持访问最多32个PHY,也就是说PHY地址共有5位。

应用程序可以从32个PHY中选择一个PHY,然后从任意PHY包含的32个寄存器中选择一个寄存器,发送控制数据或接收状态信息。任意给定时间内只能对一个PHY的一个寄存器进行寻址。

IEEE802.3定义了地址0-15这16个寄存器的功能,所有的PHY地址0-15寄存器bit的定义应当符合该标准,地址16-31的寄存器由芯片厂商自行定义。

对于LAN8720来说,PHY一共包含14个寄存器,定义如下:

1.1 IEEE802.3标准寄存器

1.1.1 Basic Control Register(地址0基本控制寄存器)

这里用的最多的就是bit15,软件复位。

1.1.2 Basic Control Register(地址1基本状态寄存器)

bit2非常有用,用来判断网卡是否建立了有效连接。

1.1.3 PHY Identifier 1 Register(地址2 PHY ID 1寄存器)

默认值为0x0007。

1.1.4 PHY Identifier 2 Register(地址3 PHY ID 2寄存器)

可以和PHY ID 1寄存器组合用来区分PHY型号。

1.1.7 Auto Negotiation Expansion Register(地址6自动协商扩展寄存器)

1.2 LAN8720自定义寄存器

1.2.1 Mode Control/Status Register(地址17模式控制/状态寄存器)

1.2.2 Special Modes Register(地址18特殊模式寄存器)

1.2.3 Symbol Error Counter Register(地址26错误标志计数器寄存器)

1.2.4 Special Control/Status Indications Register(地址27特殊控制/状态指示寄存器)

1.2.5 Interrupt Source Flag Register(地址29中断来源标志寄存器)

1.2.6 Interrupt Mask Register(地址30中断屏蔽寄存器)

1.2.7 PHY Special Control/Status Register(地址31PHY特殊控制/状态寄存器)

2 总结

(1)LAN8720一共有14个寄存器,包括7个IEE802.3标准寄存器和7个厂家自定义寄存器。

(2)中断输出引脚通常都被用于50MHz时钟输出,因此不必关注有关中断的寄存器。

相关推荐
qqssss121dfd3 小时前
STM32H750XBH6的ETH模块的IPv4 ARP offload功能分析
stm32·单片机·嵌入式硬件
Nan_Feng_ya4 小时前
基于STM32的智能手表复刻成功(完全开源)
arm开发·stm32·pcb工艺·智能手表
zjxtxdy5 小时前
STM32开发板简介
stm32·单片机·嵌入式硬件
【 STM32开发 】5 小时前
【STM32 + CubeMX 教程】RTC 实时时钟 之 闹钟 -- F407篇
stm32·单片机·嵌入式硬件
MC_J5 小时前
STM32+FMC驱动W9825G6 SDRAM程序以及遇到的问题讲解
stm32·单片机
0南城逆流06 小时前
【STM32】知识点介绍八:UART/USART串口功能
stm32·单片机·嵌入式硬件
小白学电子_6 小时前
STM32常用HAL常见库函数快速运用和讲解
stm32·单片机·嵌入式硬件
woshihonghonga6 小时前
解决Eclipse的Copilot终端依赖问题
stm32·mcu·eclipse·copilot·ai编程
busideyang6 小时前
STM32中__weak(弱定义)函数核心总结
c语言·stm32·单片机·嵌入式硬件·嵌入式
forAllforMe6 小时前
用STM32+LAN9252的etherCAT 从站实现传感器数据采集
stm32·单片机·嵌入式硬件