上QQ阅读APP看书,第一时间看更新
3.2 STM32的ETH外设
STM32F42x系列控制器内部集成了一个以太网外设,它实际上是通过DMA控制器进行介质访问控制,功能就是实现MAC层的任务。借助以太网外设,STM32F42x控制器可以通过ETH外设按照IEEE 802.3-2002标准发送和接收MAC数据包。
ETH内部自带专用的DMA控制器用于MAC, ETH支持两个工业标准接口—介质独立接口(MII)和简化介质独立接口(RMII),用于与外部PHY芯片连接。MII和RMII接口用于MAC数据包传输,ETH还集成了站管理接口(SMI)专门用于与外部PHY通信,访问PHY芯片寄存器。
物理层定义了以太网使用的传输介质、传输速度、数据编码方式和冲突检测机制,PHY芯片是物理层功能实现的实体,生活中常用水晶头网线+水晶头插座+PHY组合构成物理层。
ETH有专用的DMA控制器,它通过AHB主从接口与内核和存储器相连,AHB主接口用于控制数据传输,而AHB从接口用于访问“控制与状态寄存器”(CSR)空间。在进行数据发送时,先将数据由存储器以DMA方式传输到缓冲区TX FIFO,然后由MAC内核发送;接收数据时,RX FIFO先接收以太网数据帧,再由DMA传输至存储器。ETH系统功能框图如图3-3所示。
图3-3 ETH功能框图