PAGE1
PAGE1
LPC1768以太网接口
1.以太网接口概述
LPC1768微控制器集成了一个全双工10/100Mbps以太网MAC(媒体访问控制)模块,支持MII(媒体独立接口)和RMII(简化媒体独立接口)。通过以太网接口,LPC1768可以与外部网络设备进行高速数据通信,适用于需要网络连接的复杂娱乐设备。
1.1以太网MAC模块
以太网MAC模块负责处理以太网协议的物理层和数据链路层。它支持以下功能:
全双工和半双工模式
支持10Mbps和100Mbps两种速度
支持MII和RMII接口
支持多种网络协议,如ARP、IP、ICMP、UDP、TCP等
内置DMA控制器,支持高效的传输
1.2MII和RMII接口
MII(MediaIndependentInterface)和RMII(ReducedMediaIndependentInterface)是用于连接以太网MAC模块和物理层设备(PHY)的标准接口。MII接口具有4位数据宽度,支持10/100Mbps速度,而RMII接口具有2位数据宽度,主要用于100Mbps速度。
2.以太网接口硬件配置
2.1物理层设备(PHY)
LPC1768通常与外部物理层设备(PHY)配合使用,以实现完整的以太网通信功能。常见的PHY设备包括:
DP83848:德州仪器的10/100Mbps以太网PHY
LAN8720A:微芯科技的10/100Mbps以太网PHY
2.2硬件连接
LPC1768与PHY设备的连接通常是通过MII或RMII接口实现的。以下是RMII接口的典型连接图:
|LPC1768引脚|功能|连接至PHY引脚|
||||
|TXD[0]|数据发射|TXD[0]|
|TXD[1]|数据发射|TXD[1]|
|RXD[0]|数据接收|RXD[0]|
|RXD[1]|数据接收|RXD[1]|
|TX_EN|发射使能|TX_EN|
|RX_ER|接收错误|RX_ER|
|CRS_DV|载波检测|CRS_DV|
|REF_CLK|参考时钟|REF_CLK|
|MDIO|管理数据输入输出|MDIO|
|MDC|管理数据时钟|MDC|
2.3时钟配置
LPC1768的以太网MAC模块需要一个50MHz的参考时钟。如果使用RMII接口,这个时钟通常由PHY设备提供。如果使用MII接口,参考时钟可以由外部晶振或内部时钟源提供。
3.以太网接口软件配置
3.1初始化以太网MAC模块
在使用以太网接口之前,需要初始化以太网MAC模块。以下是一个简单的初始化示例:
#includeLPC17xx.h
#includeethernet.h
voidEthernet_Init(void){
//使能以太网MAC模块的时钟
LPC_SC-PCONP|=(118);
//配置RMII接口
LPC_PINCON-PINSEL4=(LPC_PINCON-PINSEL40x0000FFFF)|(016);
LPC_PINCON-PINSEL8=(LPC_PINCON-PINSEL8(~0x000000FF))|(0x000000AA);
//使能以太网MAC模块
LPC_ETHERNET-MAC1=0//设置MAC模块为默认值
LPC_ETHERNET-MAC2=0//启用半双工模式
LPC_ETHERNET-MAC3=0//设置MAC模块为默认值
LPC_ETHERNET-MAC4=0//设置MAC模块为默认值
LPC_ETHERNET-MAC5=0//设置MAC