新闻中心

EEPW首页 > 汽车电子 > 设计应用 > 基于ARM的CAN总线智能节点的设计

基于ARM的CAN总线智能节点的设计

作者:时间:2006-07-06来源:21ic.com

摘  要:CAN总线是一种应用广泛的实时性现场总线,提出了基于具有ARM7TDMI内核的32位微控制器的CAN总线智能节点设计方案。详细介绍了ARM控制(LPC2294)的特点、智能节点的结构以及系统软件设计,同时结合现场实际使用给出了硬件抗干扰措施。

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

关键词: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逻辑,支持片上断点和调试点支持,具有先进的软件开发和调试环境。

本设计选用的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

linux操作系统文章专题:linux操作系统详解(linux不再难懂)



评论

技术专区

关闭