新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > MC9S12NE64型单片机的以太网连接应用介绍

MC9S12NE64型单片机的以太网连接应用介绍

作者:时间:2012-04-12来源:网络收藏

3 的简单

本文引用地址:http://www.eepw.com.cn/article/171631.htm

3.1 硬件设计

利用可以构成不同功能的网络终端节点,如网络服务器、带因特网功能的设备、远程监控(数据采集,诊断)、对现场设备的远程控制、远程设备通过电子邮件或文字寻呼机发送消息等。

基于最少外围器件的系统硬件电路原理图如图2所示。此最小系统由80引脚的MC9S12NE64与外围器件组成,电路中带有背景调试接头J1;5个LED状态指示灯(分别用来显示网络状态,包括EPHY是否冲突、是否建立、是否接收数据、速度、双工模式);必需的偏置电阻R5;高速局域网电磁隔离模块(即RJ45接口)。其中PHY_TXP和PHY_TXN为发送线,PHY_RXP和PGY_RXN为接收线。设计时,MC9S12NE64的物理端口与隔离变压器连接时必须符合IEEE802.3对物理层规范的要求,如RJ45的插孔与隔离变压器的间隔应尽量小,输出和输入差分信号对的走线要很好的隔离,确保电源的额定负载电流不小于300mA。设计时还应注意系统时钟的要求,MC9S12NE64只支持皮尔斯型振荡电路,晶振的精度应高于25ppm。系统中MC9S12NE64工作在正常的单片模式,其内部稳压电源处于工作状态。

3.2 MC9S12NE64的初始化

MC9S12NE64在工作之前。必须进行必要的初始化。主要包括时钟及复位发生器(CRG)模块、EMAC模块、EPHY模块等。虽然MC9S12NE64上的EMAC和EPHY被设计为两个独立的模块,但如果用到内部的EPHY,则EMAC和EPHY必须同时进行初始化。

MC9S12NE64的初始化过程如下:
(1)初始化时钟及复位发生器模块来产生25MHz的内部总线时钟,这一过程通过设置时钟及复位发生器(CRG)模块的寄存器表来完成。
(2)设置EPHYCTL0寄存器的DIS10和DIS100位为1,使EPHY时钟无效,直到EMAC和EPHY配置完毕。
(3)通过EPHYCTL1寄存器的:EPHYADD0、E-PHYADD1、EPHYADD2、EPHYADD3、EPHYADD4来配置MII请求的EPHY地址。
(4)配置自动协商模式。设置EPHYCTL0寄存器的ANDIS位为0.使用自动协商模式。
(5)设置EPHYCTL0寄存器的LEDEN位为1允许EPHY驱动LED信号。设置EPHYCTL0寄存器的EPHYIEN位为1使EPHY中断有效。设置
EPHYCTL0寄存器的EPHYEN位为1使EPHY有效工作,这样就可以实现EMAC和EPHY间的介质无关接口(MII)操作。
(6)设置MCMST寄存器的MDCSEL位为0xA,来配置EMAC管理数据时钟(EMACMDC)。
(7)设置BUFCFG寄存器的BUFMAP位来配置EMAC缓冲区的大小。BUFMAP的值用来确定系统RAM中用户RAM和EMAC缓冲区的比例。BUFMAP最大为4,这时单个缓冲区的大小为1.5K字节,正好可以存放一个最大的帧。大于缓冲区大小的数据包将被过滤掉,设计时应合理选择。设置BUFCFG寄存器的MAXFL位来指定接受的最大帧长度,使缓冲区起到了数据过滤的作用。
(8)通过MACAD寄存器来配置6字节的MAC地址。如果设备不连接到因特网,则MAC地址可自行定义。
(9)设置ETCTL寄存器为0x17来控制网络上传输的数据类型。
(10)通过设置RXCTL寄存器的PROM、CON-MC和BCREJ位来配置EMAC的MAC地址过滤模式。如果不是自动协商模式,则还需要设置RFCE位来实现接收流控制。
(11)设置NETCTL寄存器为0x81来配置EMAC的工作模式,并使EMAC正常工作。
(12)设置IMASK寄存器来配置允许的EMAC中断信号,如需要允许某种中断请求信号,则将相应的位置1。
(13)设置TXCTS寄存器的PTRC位和设置PTI-ME寄存器来初始化和传递暂停持续时间。
(14)设置系统中断为允许系统中断。
(15)通过EMAC MII管理接口来设置EPHY,包括设置速度、双工模式和流控制,设置EPHY中断控制寄存器来配置EPHY中断控制。
(16)在自动协商模式下,通过设置EPHYCTL0寄存器的DIS10和DIS100位为0来启动EPHY时钟发生器。当自动协商完成且连接建立后,协商暂定和双工设置由EPHY MII寄存器决定。EMAC必须由RXCTS寄存器的FRCE位和NETCTL的FDX位所设定的配置来更新协商暂定和双工设置。

至此。MC9S12NE64初始化完成,可以完成EMAC和EPHY间的数据接收和发送。要实现系统与以太网上其他设备(如PC机)的通信,只需要实现 TCP/IP协议栈就可以了。由于内部资源的不足,难以支持完整的TCP/IP协议栈,故针对各个系统的特点和功能来设定特定的TCP/IP协议栈,仅实现与需要相关的协议即可,如ARP协议、IP协议、ICMP协议、TCP协议、UDP协议、SMTP协议、HTYP协议等。

系统初始化后进入主程序循环,包括的控制作用和网络数据传输。对于以太网传输部分来说.主要有两个作用:一是对要发送的数据按照以太网数据帧格式进行封装并发送;二是对接收的以太网数据帧进行解包供程序使用。主程序通过嵌入TCP/IP协议来实现单片机的以太网通信。

4 结束语

随着数字化、智能化仪器的飞速发展,采用以太网进行通信的将会越来越广泛。MC9S12NE64内置了以太网MAC层和物理层,用它可以方便地实现单电路以太网连接。适用于工业控制、保安系统、用户卡表、商业自动化、楼宇控制、照明管理、医疗检测、自动售货机环境监控器、销售设备终端和家庭自动化等。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭