价格:面议
深圳市集万讯电子技术有限公司
联系人:谢灶飞
电话:15986761961
地址:深圳市福田区中康路**梅林中心广场(北区)3栋10层1003号
深圳ENC28J60/东莞ENC28J60/珠海ENC28J60/广州ENC28J60 基于ENC28J60的嵌入式网络接口的设计 深圳集万讯电子Jetson 谢灶飞 ENC28J60的存储器分为三种:控制寄存器、以太网缓冲寄存器、PHY寄存器。 控制寄存器用于进行ENC28J60的配置、控制和状态获取,可通过SPI接口直接读写控制寄存器。 ENC28J60的控制寄存器通常分为ETH、MAC和MII三组寄存器,其中“E”开头的为ETH组,“MA”开头的寄存器属于MAC组,“MI”开头的属于MII组。 以太网缓冲寄存器包含一个供以太网控制器使用的发送和接收存储空间,可通过SPI接口对该存储空间的容量进行编程,只可通过读写缓冲器的SPI指令来访问以太网缓冲器。 PHY寄存器用于进行PHY模块的配置、控制和状态获取,不可以通过SPI接口直接访问这些寄存器,只可通过MAC中的MII访问这些寄存器。 图1 ENC28J60的典型应用电路 ENC28J60由7个主要功能模块组成:SPI接口,充当主控制器和ENC28J60之间通信通道;控制寄存器,用于控制和监视ENC28J60;双端口RAM缓冲器,用于接收和发送数据包;判优器,当DMA、发送和接收模块发出请求时对RAM缓冲器的访问进行控制;总线接口,对通过SPI接收的数据和命令进行解析;MAC模块:实现符合IEEE 802.3标准的MAC逻辑;PHY模块,对双绞线上的模拟数据进行编码和译码。ENC28J60还包括其他支持模块,诸如振荡器、片内稳压器、电平变换器(提供可以接受5V电压的I/O引 脚)和系统控制逻辑。 根据以上说明, ENC28J60应用于嵌入式网络接口是非常合适的,有广阔的应用发展前景。 3 ENC28J60在嵌入式网络接口的应用 3.1 硬件电路设计 利用ENC28J60可以构成不同功能的网络终端节点,如网络服务器、带Internet功能的设备、远程监控(数据采集,诊断)设备等。图2所示为基于ENC28J60的嵌入式网络接口的硬件电路原理图。电路中有:2个LED状态指示灯主要用来显示网络连接状态,包括PHY是否冲突、连接是否建立、是否接收数据、连接速度、双工模式等;必需的偏置电阻R3(2kΩ,精度为1%);高速局域网电磁隔离模块(即RJ45以太网接口),应用中,ENC28J60的物理端口与隔离变压器HR901170A连接时必须符合IEEE802.3对物理层规范的要求,如RJ45的插孔与隔离变压器的间隔应尽量小,输出和输入差分信号对的走线要有很好的隔离。 图2 基于ENC28J60的嵌入式网络接口的硬件电路原理图 电路中的主控制器采用Atmel公司的ATmega16单片机,它具有先进的RISC(精简指令集计算机)结构、16 kB可编程Flash存储器、512 B的EEPROM和1 kB片内SRAM,具有丰富的外设接口,其SPI接口允许ATmega16与外设进行高速的同步数据传输。本设计中ATmega16 SPI配置为主机模式,ENC28J60为从设备。ATmega16的SPI工作模式由CPOL、CPHA设置,根据ENC28J60的SPI读写时序,ATmega16的SPI工作模式应设置为模式0。ATmega16通过将ENC28J60的CS引脚置低实现与其的同步。SPI时钟由写入到SPI发送缓冲寄存器的数据启动,SPI MOSI(PB5)引脚上的数据发送秩序由寄存器SPCR的DORD位控制,置位时数据的LSB(较低位)首先发送,否则数据的MSB(较高位)首先发送。我们选择先发送MSB,同时接收到的数据传送到接收缓冲寄存器,CPU进行右对齐从接收缓冲器中读取接收到的数据。应该注意,当需要从ENC28J60中读取多个数据时,即使ENC28J60并不需要ATmega16串行输出的数据,每读取一个数据前都要向SPI发送缓冲器写一个数据以启动SPI接口时钟。由于SPI系统的发送方向只有1个缓冲器,而在接收方向有2个缓冲器,所以在发送时一定要等到移位过程全部结束后,才能对SPI数据寄存器执行写操作;而在接收数据时,需要在下一个字节移位过程结束之前通过访问SPI数据寄存器读取当前接收到的数据,否则*1个数据丢失。