基于CH32V307的RMII MAC直连MAC应用
基于CH32V307的RMII MAC直连MAC应用
本文介绍一种MAC直连MAC的网络应用,使用两块CH32V307的RMII接口直连
物理连接
时钟来源
RMII接口需要50M时钟,两端设备的时钟线直连,这里采用CH32V307本身MCO接口输出50M时钟,MCO使用方法可参考官网EVT例程,MCO输出的时钟接到REF_CLK,其中一块板子提供时钟即可。
同时使用MAC_RAW例程,将其中关于phy部分注释掉,两边配置相同的速率和模式,这里使用的是RMII的百兆全双工模式,关闭自动协商,需注意的是,ETH_Start()函数需在MAC层初始化后调用,才会开启MAC层传输。
烧录程序后,开始测试
设备一发的数据为:
首字节打印正确,因为数据长度少于64字节,所以MAC层自动填充为64
设备二发的数据为:
首字节打印正确,长度为106字节,加上4字节CRC校验,长度正确
MAC直连测试收发正常