怎么建设游戏平台网站,北京市城乡建设学校网站,莱芜都市网人才招聘,海南网站建设推荐STM32F7系列的MCU自带了MAC控制器#xff0c;现在分析一下库函数中初始化的步骤#xff1a; 一、整体初始化的流程 1、底层GPIO的初始化、时钟的开启#xff0c;设置MAC与PHY的通信方式#xff1a;MII或RMII 2、使MAC模块复位一次 3、获取SMI#xff08;MDC、MDIO组成现在分析一下库函数中初始化的步骤 一、整体初始化的流程 1、底层GPIO的初始化、时钟的开启设置MAC与PHY的通信方式MII或RMII 2、使MAC模块复位一次 3、获取SMIMDC、MDIO组成接口中的MII地址寄存器要根据MCU的运行速度设置时钟范围MDC的时钟频率是通过HCLK分频得到的 4、通过SMI接口对PHY_BCR寄存器写入0x8000使PHY复位 5、如果设置成自动协商模式MCU不断地读取PHY_BSR寄存器来判断网络是否建立。如果此时没有插入网线超时网络没有连接那么初始化MAC和DMA后直接返回 5.1、如果完成建立了网络连接那么将PHY_BCR寄存器的自动协商使能位置1. 5.2、读取PHY_BSR判断是否自动协商完毕如果超时仍然没有自动协商完毕那么初始化MAC和DMA后直接返回 5.3、如果自动协商完毕那么读取PHY_SR寄存器来读取自动协商的结果全双工还是半双工、10M还是100M 6、如果没有配置成自动协商模式那么程序通过SMI接口对PHY芯片的PHY_BCR写入配置 7、配置MAC和DMA 二、MAC和DMA的配置 1、使能MAC看门狗、JABBER定时器、设置最小数据长度、使能载波侦听、禁止回环模式等 2、使能接收中断、设置MAC地址等。 具体过程请看代码