RAM微控制器的以太网通信接口设计

2014-10-15 01:56闫鹏
中国新通信 2014年17期
关键词:以太网

闫鹏

【摘要】 采用STM32F103系列RAM微控制器和以太网控制器芯片ENC28J60为核心来搭建网络接口。文中首先阐明接口的硬件架构的实现方法,详细分析了软件与驱动程序开发,明确系统的通信过程。该设计能够进行信息的稳定、有效的传输,实现网络接口功能。

【关键词】 STM32F103 ENC28J60 以太网

以太网是目前应用广泛的网络通信技术,借助此技术可以实现微控制器之间长距离、高速率的传输。

一、接口的硬件架构

1.1 硬件模块介绍

ENC28J60是美国微芯科技公司推出的符合IEEE 802.3协议规范的一款28引脚独立以太网控制器芯片,带有行业标准的SPI接口,集成了媒体访问控制器和10BASE—T以太网物理层器件,支持全双工和半双工模式,可编程填充和CRC生成,可编程8 kbyte双端口SRAM缓冲器,可配置发送/接收缓冲器的大小,具有硬件管理的循环接受FIFO。在它内部还提供了一个DMA模块,可以实现数据的快速吞吐,数据传输速率高达10 Mbit/s。ENC28J60和主控制器的通信通过SPI接口实现,使得实现以太网接口变得灵活简单。

1.2 电路设计实现

NC28J60采用标准的SPI串行接口,4条线与STM32F103的SPI接口连接。当SCK为上升沿时命令和数据可通过SI引脚送入器件。在SCK的下降沿从SO引脚输出数据。当执行操作/CS引脚始终保持低电平,操作完成时恢复高电平。如图1以太网电路控制图所示。

图1 以太网电路控制图

如图1所示,差分接收引脚(TPIN+/TPIN-)以及差分发送引脚(TPOUT+/TPOUT-)与集成变压器带中心抽头的脚45插座HR911105A连接,ENC28J60的内部模拟电路需要在RBIAS引脚与地之间外接一个2 K(精度为1%)电阻。为降低功耗,ENC28J60中的一些数字电路工作在2.5V标称电压下,该电压有其内部一个2.5 V稳压器以产生,为使之工作稳定,需在VCAP引脚与地之间连接一个10μ的电容。

以太网接口选用带有网络隔离变压器功能的HR911105A来实现。LEDA和LEDB引脚支持复位时的自动极性检测。可以在这两个引脚上,以拉电流或灌电流点亮LED的两种方式连接LED。系统复位时,ENC28J60将检测LED的连接方式,并将LED驱动为PHLCON寄存器配置的默认状态。如果在ENC28J60运行时改变LED的极性,新极性将在下一次系统复位时才能被检测到。复位时会自动读取LEDB上LED的连接状态,并确定如何初始化PHCONl.PDPXMD位。如果引脚采用拉电流的方式点亮LED,则复位时此位清零且PHY默认为在半双工模式下运行。

二、软件设计

2.1 ENC28J60初始化

在使用ENC28J60发送和接收数据包时,必须先对器件进行初始化设置。根据不同的应用,配置选项可能需要更改。ENC28J60初始化主要是对其接收和发送缓冲器、接收过滤器、晶振启动时间、MAC寄存器、PHY寄存器进行设置。

2.2数据的接收

接收过程主要包括接收设置与启动,内部接收与过滤,数据包读取与处理。接收启动后,内部自动进行接收和过滤,未滤除的数据包写人循环接收缓冲器(其存储结构包括一个报头、实际包数据、可能的填充字节)并产生中断;通过中断服务分析报头,读取实际包数据。发送过程主要包括:发送准备,发送,发送异常处理。ENC28J60自动生成前导符和帧起始定界符、最小包的填充和有效CRC追加。在发送准备过程中需要进行最小包填充设置,CRC追加设置,包控制字节输人,以及MAC帧有效字段输人。发送过程是内部过程。当发送异常中止时,需要根据MAC模块自动产生的7 byte发送状态向量进行相应处理。

三、测试及结果

用网线连接测试板与计算机,通过Ping 命令来测试计算每帧数据间隔时间,并计算有多少个包被发送,可以判断网络大致的情况。测试结果表明,微控制器接收到了PC机发送的4个数据包,通信效果良好。该网络接口可以实现微控制器、微控制器与计算机之间网络通信。

参 考 文 献

[1] 肖广兵,万茂松.基于STM32的系统设计[M].北京:电子工业出版社,2013:74—75.

[2] 王海民,王宏志.STM32以太网控制系统 [J].长春工业大学学报.2014(01):64endprint

【摘要】 采用STM32F103系列RAM微控制器和以太网控制器芯片ENC28J60为核心来搭建网络接口。文中首先阐明接口的硬件架构的实现方法,详细分析了软件与驱动程序开发,明确系统的通信过程。该设计能够进行信息的稳定、有效的传输,实现网络接口功能。

【关键词】 STM32F103 ENC28J60 以太网

以太网是目前应用广泛的网络通信技术,借助此技术可以实现微控制器之间长距离、高速率的传输。

一、接口的硬件架构

1.1 硬件模块介绍

ENC28J60是美国微芯科技公司推出的符合IEEE 802.3协议规范的一款28引脚独立以太网控制器芯片,带有行业标准的SPI接口,集成了媒体访问控制器和10BASE—T以太网物理层器件,支持全双工和半双工模式,可编程填充和CRC生成,可编程8 kbyte双端口SRAM缓冲器,可配置发送/接收缓冲器的大小,具有硬件管理的循环接受FIFO。在它内部还提供了一个DMA模块,可以实现数据的快速吞吐,数据传输速率高达10 Mbit/s。ENC28J60和主控制器的通信通过SPI接口实现,使得实现以太网接口变得灵活简单。

1.2 电路设计实现

NC28J60采用标准的SPI串行接口,4条线与STM32F103的SPI接口连接。当SCK为上升沿时命令和数据可通过SI引脚送入器件。在SCK的下降沿从SO引脚输出数据。当执行操作/CS引脚始终保持低电平,操作完成时恢复高电平。如图1以太网电路控制图所示。

图1 以太网电路控制图

如图1所示,差分接收引脚(TPIN+/TPIN-)以及差分发送引脚(TPOUT+/TPOUT-)与集成变压器带中心抽头的脚45插座HR911105A连接,ENC28J60的内部模拟电路需要在RBIAS引脚与地之间外接一个2 K(精度为1%)电阻。为降低功耗,ENC28J60中的一些数字电路工作在2.5V标称电压下,该电压有其内部一个2.5 V稳压器以产生,为使之工作稳定,需在VCAP引脚与地之间连接一个10μ的电容。

以太网接口选用带有网络隔离变压器功能的HR911105A来实现。LEDA和LEDB引脚支持复位时的自动极性检测。可以在这两个引脚上,以拉电流或灌电流点亮LED的两种方式连接LED。系统复位时,ENC28J60将检测LED的连接方式,并将LED驱动为PHLCON寄存器配置的默认状态。如果在ENC28J60运行时改变LED的极性,新极性将在下一次系统复位时才能被检测到。复位时会自动读取LEDB上LED的连接状态,并确定如何初始化PHCONl.PDPXMD位。如果引脚采用拉电流的方式点亮LED,则复位时此位清零且PHY默认为在半双工模式下运行。

二、软件设计

2.1 ENC28J60初始化

在使用ENC28J60发送和接收数据包时,必须先对器件进行初始化设置。根据不同的应用,配置选项可能需要更改。ENC28J60初始化主要是对其接收和发送缓冲器、接收过滤器、晶振启动时间、MAC寄存器、PHY寄存器进行设置。

2.2数据的接收

接收过程主要包括接收设置与启动,内部接收与过滤,数据包读取与处理。接收启动后,内部自动进行接收和过滤,未滤除的数据包写人循环接收缓冲器(其存储结构包括一个报头、实际包数据、可能的填充字节)并产生中断;通过中断服务分析报头,读取实际包数据。发送过程主要包括:发送准备,发送,发送异常处理。ENC28J60自动生成前导符和帧起始定界符、最小包的填充和有效CRC追加。在发送准备过程中需要进行最小包填充设置,CRC追加设置,包控制字节输人,以及MAC帧有效字段输人。发送过程是内部过程。当发送异常中止时,需要根据MAC模块自动产生的7 byte发送状态向量进行相应处理。

三、测试及结果

用网线连接测试板与计算机,通过Ping 命令来测试计算每帧数据间隔时间,并计算有多少个包被发送,可以判断网络大致的情况。测试结果表明,微控制器接收到了PC机发送的4个数据包,通信效果良好。该网络接口可以实现微控制器、微控制器与计算机之间网络通信。

参 考 文 献

[1] 肖广兵,万茂松.基于STM32的系统设计[M].北京:电子工业出版社,2013:74—75.

[2] 王海民,王宏志.STM32以太网控制系统 [J].长春工业大学学报.2014(01):64endprint

【摘要】 采用STM32F103系列RAM微控制器和以太网控制器芯片ENC28J60为核心来搭建网络接口。文中首先阐明接口的硬件架构的实现方法,详细分析了软件与驱动程序开发,明确系统的通信过程。该设计能够进行信息的稳定、有效的传输,实现网络接口功能。

【关键词】 STM32F103 ENC28J60 以太网

以太网是目前应用广泛的网络通信技术,借助此技术可以实现微控制器之间长距离、高速率的传输。

一、接口的硬件架构

1.1 硬件模块介绍

ENC28J60是美国微芯科技公司推出的符合IEEE 802.3协议规范的一款28引脚独立以太网控制器芯片,带有行业标准的SPI接口,集成了媒体访问控制器和10BASE—T以太网物理层器件,支持全双工和半双工模式,可编程填充和CRC生成,可编程8 kbyte双端口SRAM缓冲器,可配置发送/接收缓冲器的大小,具有硬件管理的循环接受FIFO。在它内部还提供了一个DMA模块,可以实现数据的快速吞吐,数据传输速率高达10 Mbit/s。ENC28J60和主控制器的通信通过SPI接口实现,使得实现以太网接口变得灵活简单。

1.2 电路设计实现

NC28J60采用标准的SPI串行接口,4条线与STM32F103的SPI接口连接。当SCK为上升沿时命令和数据可通过SI引脚送入器件。在SCK的下降沿从SO引脚输出数据。当执行操作/CS引脚始终保持低电平,操作完成时恢复高电平。如图1以太网电路控制图所示。

图1 以太网电路控制图

如图1所示,差分接收引脚(TPIN+/TPIN-)以及差分发送引脚(TPOUT+/TPOUT-)与集成变压器带中心抽头的脚45插座HR911105A连接,ENC28J60的内部模拟电路需要在RBIAS引脚与地之间外接一个2 K(精度为1%)电阻。为降低功耗,ENC28J60中的一些数字电路工作在2.5V标称电压下,该电压有其内部一个2.5 V稳压器以产生,为使之工作稳定,需在VCAP引脚与地之间连接一个10μ的电容。

以太网接口选用带有网络隔离变压器功能的HR911105A来实现。LEDA和LEDB引脚支持复位时的自动极性检测。可以在这两个引脚上,以拉电流或灌电流点亮LED的两种方式连接LED。系统复位时,ENC28J60将检测LED的连接方式,并将LED驱动为PHLCON寄存器配置的默认状态。如果在ENC28J60运行时改变LED的极性,新极性将在下一次系统复位时才能被检测到。复位时会自动读取LEDB上LED的连接状态,并确定如何初始化PHCONl.PDPXMD位。如果引脚采用拉电流的方式点亮LED,则复位时此位清零且PHY默认为在半双工模式下运行。

二、软件设计

2.1 ENC28J60初始化

在使用ENC28J60发送和接收数据包时,必须先对器件进行初始化设置。根据不同的应用,配置选项可能需要更改。ENC28J60初始化主要是对其接收和发送缓冲器、接收过滤器、晶振启动时间、MAC寄存器、PHY寄存器进行设置。

2.2数据的接收

接收过程主要包括接收设置与启动,内部接收与过滤,数据包读取与处理。接收启动后,内部自动进行接收和过滤,未滤除的数据包写人循环接收缓冲器(其存储结构包括一个报头、实际包数据、可能的填充字节)并产生中断;通过中断服务分析报头,读取实际包数据。发送过程主要包括:发送准备,发送,发送异常处理。ENC28J60自动生成前导符和帧起始定界符、最小包的填充和有效CRC追加。在发送准备过程中需要进行最小包填充设置,CRC追加设置,包控制字节输人,以及MAC帧有效字段输人。发送过程是内部过程。当发送异常中止时,需要根据MAC模块自动产生的7 byte发送状态向量进行相应处理。

三、测试及结果

用网线连接测试板与计算机,通过Ping 命令来测试计算每帧数据间隔时间,并计算有多少个包被发送,可以判断网络大致的情况。测试结果表明,微控制器接收到了PC机发送的4个数据包,通信效果良好。该网络接口可以实现微控制器、微控制器与计算机之间网络通信。

参 考 文 献

[1] 肖广兵,万茂松.基于STM32的系统设计[M].北京:电子工业出版社,2013:74—75.

[2] 王海民,王宏志.STM32以太网控制系统 [J].长春工业大学学报.2014(01):64endprint

猜你喜欢
以太网
NWCS' 23新一代车载以太网传输技术研讨会成功召开
基于1500以太网养猪场的智能饲喂控制系统的设计与实现
三大因素驱动创新提速以太网快步迈入“灵活”时代
三大因素驱动创新提速 以太网快步迈入“灵活”时代
谈实时以太网EtherCAT技术在变电站自动化中的应用
基于以太网传输的高速32通道数据采集系统
一种90W高功率以太网供电系统的设计
基于SOPC的工业嵌入式以太网接口设计
浅谈EPON与工业以太网在贵遵高速公路中的应用
万兆以太网在连徐高速公路通信系统改造中的应用