CAN 总线与以太网协议转换网关的硬件电路设计

2017-08-18 75 0

本文提出一种工业现场总线与以太网互联的方法,介绍以太网与 CAN 现场总线之间协议转换网关的设计与实现:采用 AT89C55 作为主处理器,通过两个接口芯片实现 CAN 总线与以太网的互连,并分别给出其硬件结构和软件设计思想。

目前,对于 CAN 和以太网相连的嵌入式网关设计主要有两种方法:一种是低档 MCU 加接口芯片的设计方法,另一种是高档 MCU 加 RTOS(实时多任务操作系统)再加接口芯片的设计方法。由于 CAN 只采用了 ISO/OSI 参考模型的第一、二层,协议相对简单,比较适合用于低成本、速率要求不高的离散控制系统。从合理的成本和有效利用处理能力这两方面考虑,本设计采用低档 MCU 加接口芯片的方法,其硬件框图如图 1 所示。

CAN 总线与以太网协议转换网关的硬件电路设计

图 1 网关硬件框图

主控芯片及以太网接口模块

根据要求,该系统选择了性能价格比较高的 AT89C55 单片机。它是面向测控对象和嵌入式应用的器件,其体系结构以及 CPU、指令系统、外围单元电路都是按照这种要求专门设计的:内部带有高达 20 KB 的 Flash 程序存储器,完全兼容 8051 指令集,片上 Flash 方便使用者进行在线编程;工作速率最高可达 33 MHz,具有 256 B 的内部 RAM、32 个可编程 I/O 口、3 个 16 位定时/计数器、8 个中断源,并支持低功耗的空闲工作模式。

以太网接口选用 RTL8019AS 芯片,它是一种高度集成的以太网控制器,能实现以太网媒介访问层(MAC)和物理层(PHY)的全部功能。RTL8019AS 内部有两个 RAM 区域:一是 16 KB 区域,地址为 0x4000~0x7FFF,接收和发送数据包必须通过 DMA 读写该区域,它实际上是双端口 RAM,有两条总线与其连接——一条用于 RTL8019AS 读写该 RAM(本地 DMA),另一条用于单片机读写该 RAM(远程 DMA);二是 32 个字节区域,地址为 0x0000~0x001F,用于存储以太网的物理地址。

主控芯片和以太网接口芯片的硬件接口原理如图 2 所示。值得注意的是,由于以太网的包最大可以超过 1500 个字节,而 AT89C55 的片内 RAM 只有 256 个字节,无法存储这么大的包,因此这里扩展了一个 32 KB 的外部 RAM,这样同时也能提高单片机的数据传输速度。

CAN 总线与以太网协议转换网关的硬件电路设计

图 2 以太网接口电路原理

相关文章

压敏电阻的参数、特性与应用
基于 STC12C 与 SIM300 的智能家电防盗系统电路设计
基于 nRF24L01 与 DHT11 的无线温湿度测试系统电路设计
电冰箱电子温控器的原理与半自动除霜电路
基于 586-Engine 的无人机飞行控制器电路设计
三极管开关电路的改进接法:加速电容、图腾柱与驱动电路

发布评论