一种基于ARM7的CAN总线智能节点设计方案
摘要:CAN总线是一种应用广泛的实时性现场总线,提出了基于具有ARM7TDMI内核的32位微控制器的CAN总线智能节点设计方案。详细介绍了ARM控制(LPC2294)的特点、智能节点的结构以及系统软件设计,同时结合现场实际使用给出了硬件抗干扰措施。
关键词:CAN总线 ARM 嵌入式控制器
CAN(Controller Area Network)即控制器局域网,CAN总线是国际上应用最广泛的现场总线之一。它最早是由德国Bosch公司推出的,CAN通信协议是一种用于汽车内部测量与执行部件之间的数据通信协议。 作为一种技术先进、可靠性高、功能完善、成本合理的远程网络通讯控制方式,CAN总线已被广泛应用于各个自动化控制系统中。例如,在汽车电子、自动控制、智能大厦、电子系统、安防监控等各领域中,CAN总线具有不可比拟的优越性。本设计给出CAN总线节点方案。它采用内置多路CAN总线控制器PLC2294作为主控制器,使得该节点体积小、功耗低、抗干扰性好,因而特别适用于汽车、工业控制以及医疗系统和容错维护总线中。
1 硬件设计
1.1 LPC2294的特点
ARM7系列具有ARM7TDMI内核的32位嵌入式微处理器是目前应用很广的嵌入式RISC处理器。该系列芯片体积小、功耗低、成本低,高性能与灵活性相结合,有较多的寄存器,提供了扩充的增强的固定长的16/32位双指令集。用16位的Thumb指令可以节省高达35%的空间。另外它还实行注水线作业,提供嵌入式ICE2RT逻辑,支持片上断点和调试点支持,具有先进的软件开发和调试环境。 图1 本设计选用的LPC2294是PHILIPS公司新推出的一款功能强大的超低功耗的具有ARM7TDMI内核的32位微控制器。144脚封装、两个32位定时器、八路10位ADC、四路CAN通道和PWM通道以及多达九个的外部中断,内部嵌入256K字节高速Flash存储器和16K字节静态RAM,包含76(使用了外部存储器)"112(单片)个GPIO口。如此丰富的片上资源完全可以满足一般的工业控制的需要,同时还可以减少系统硬件设计的复杂度。另外,LPC2294支持JTAG实时仿真和跟踪、128位宽度的存储器接口和独特的加速结构,使32位代码能够在高达60MHz的操作频率下运行。 LPC2294内部集成有四路CAN控制器:符合CAN规范CAN2.0B,ISO 11989-1标准:总线数据波特度均可达1Mbps;可访问32位的寄存器和RAM;全局验收过滤器可识别几乎所有总线的11位和29位Rx标识符;验收过滤器为选择的标准标识符提供了FullCAN-style自动接收功能。 作为本设计的核心部件,LPC2294不仅担起主控制器的作用,同时还作为CAN网络的节点控制器,与网络中的其它节点实现数据传输与交换。
1.2 CAN节点硬件电路组成
CAN节点硬件电路如图1所示,由ARM微控制器LPC2294、CAN总线收发器TJA1050T、高速光耦6N137和电源隔离模块B0505S等组成。 主控芯片LPC2294的晶振频率范围为1~30MHz。本设计选晶振频率为20MHz,通过设置内部的VPB分频器可以提高CPU时钟频率。内部 256K字节的高速Flash存储器用于代码和数据的存储。对于FLASH存储器,可通过内置的串行JTAG接口进行在系统编程(ISP),或进行在应用编程(IAP)。为了便于调试和系统升级,在设计中可以预留这些接口电路。 LPC2294采用双电源供电。CPU的供电电压范围为1.65~1.95V(1.8V%26;#177;8.3%),I/O的供电电压范围为 3.0~3.6V(3.3V%26;#177;10%)。 收发器TJA1050T是CAN协议控制器和物理总线之间的接口,它与“ISO 11898”标准完全兼容。CANH和CANL理想配合,可使电磁辐射减到更低。除此之外,TJA1050T不上电时,总线呈现无源特性,这使得 TJA1050T在性能上大大优于以前的CAN总线收发器。TJA1050T有两种工作模式:高速模式和静音模式(它们由引脚“S”来控制)。在高速模式中,总线输出信号有固定的斜率,并且以尽量快的速度切换。高速模式适用于最大位速度和最大总线长度的情况,而且此时其收发器循环延迟最小。静音模式时发送器是禁能的。它不管TxD的输入信号。静音模式可以防止CAN控制器不受控制时对网络通讯造成堵塞。
1.3 硬件的抗干扰设计
在本设计所应用的场合中,产生电磁信号的设备较多,包括超短波设备、音频设备、电源等,因此抗干扰设备显示尤其重要。主要采取了以下措施: (1) 为了进一步提高CAN总线节点的抗干扰能力,保证各节点之间在电气上是完全隔离和独立的,LPC2294的TX0和RX0分别通过高速光耦6N137与TJA1050T的TXD的RXD相连。不过,应该特别说明的是,光耦部分电路所采用的两个电源必须完全隔离,否则采用光耦也就失去了意义。电源的完全隔离采用小功率电源隔离模块B0505S。电路虽复杂一
- 实时操作系统μC/OS-II在ARM7上的移植(05-12)
- ARM7与FPGA在工业控制中的结合应用 (06-26)
- ARM7与FPGA在工业控制的结合 (07-03)
- 基于ARM7和DSP的逆变电源设计电路(01-08)
- ARM7嵌入式系统在车辆调度中的应用范畴(07-06)
- ARM系列微处理器简介之:初识ARM系列处理器(08-13)