关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 基于LPC2292的CAN总线智能节点设计

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

作者:时间:2009-09-22来源:网络收藏

引言

(Controller Area Network)控制器局域网络是在1986年2月的SAE大会上,由RoberBosch公司首先提出的。是一种串行通信协议,它能有效支持高安全等级的分布式实时控制,其最初的目的是用在汽车上。但由于采用了许多新技术及独特的与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性,目前的应用范围已不局限于汽车行业,而是扩展到了机械工业、纺织机械、农用机械、机器人、数控机床、医疗器械、家用电器及传感器等诸多领域。CAN多采用单片机,为此,本文给出了一种本身已经嵌入了CAN控制器的单片机的CAN总线方案。

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

1 控制器

是一个可以支持实时仿真和跟踪的16/32位ARM7TDMI-S CPU微控制器,它带有256K字节的嵌人式高速Flash存储器,并具有的128位宽度的存储器接口和独特的加速结构,可使32位代码在最大时钟速率下运行。而对代码有严格控制要求的应用则可使用16位Thumb模式,这样可将代码规模降低30%以上,而性能的损失却很小。LPC2292采用144脚封装、可使用的GPIO高达76(使用外部存储器)~112个(单片应用)、并具有极低的功耗。LPC2292内含多个32位定时器、4路10位ADC、2路CAN以及多达9路外部中断等,特别适用于汽车、工业控制应用、医疗系统和容错维护总线。

LPC2292内部集成的2路CAN控制器符合CAN规范2.0B ISO 11898-1;可访问32位的寄存器和RAM;每个总线的数据速率为1 MB/s;全局验收滤波器可识别所有总线的11位和29位Rx标识符;验收滤波器为选择的标准标识符提供有FullCAN-style自动接收功能。

2 硬件电路设计

CAN总线的节点硬件主要包括LPC2292、CAT1024、82C250、6N137以及B0505S。其中,LPC2292是节点的微处理器及CAN通信控制器,CAN总线驱动器采用82C250。为了增强CAN总线节点的抗干扰能力,在TD1、RD1与82C250之间应通过高速光耦6N137相连,这样可以很好的实现总线上各CAN节点间的电气隔离。要注意的是:光耦电路部分采用的两个电源VCC和VDD必须完全隔离。这里的B0505S就起这个作用。另外,节点复位电路采用CAT1024来提高其可靠性。图1所示是CAN总线的节点硬件电路。

3 软件设计

该系统的软件调试可在ADS1.2调试环境及EasyJTAG仿真器上进行。

和硬件电路设计相比,软件的设计相对来说要复杂些。CAN总线节点的软件设计主要包括三部分:CAN节点初始化、报文发送和报文接收。除此之外,还必须编写LPC2292的启动代码,即对系统进行初始化。

3.1 LPC2292的启动代码

启动代码包括异常中断向量表、堆栈初始化、目标板初始化及存储系统初始化等,一般都用汇编语言编写。这里不作详细介绍。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭