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

发布者:化羽2015最新更新时间:2012-03-20 来源: 微计算机信息 关键字:LPC2294  CAN总线  CTM1050T 手机看文章 扫描二维码
随时随地手机看文章

一。本设计给出的CAN总线智能节点设计方案,它采用内置多路CAN总线控制器的LPC2294作为主控制器,采用隔离CAN收发器CTM1050T作为收发器,使得该节点体积小、功耗低、抗干扰性好,因而特别适用于汽车、工业控制以及医疗系统和容错维护总线中。

1.硬件设计

1.1 LPC2294的特点

LPC2294是PHILIPS公司推出的一款功能强大的超低功耗的具有ARM7TDMI内核的32位微控制器。内部嵌入256 KB的高速Flash 存储器和16KB静态RAM。128 位宽度的存储器接口和独特的加速结构使32 位代码能够在最大时钟速率(60MHz)下运行。对代码规模有严格控制的应用可使用16 位Thumb 模式将代码规模降低超过30%,而性能的损失却很小。

由于LPC2294 的144 脚封装、极低的功耗、两个个32 位定时器、八通道10 位ADC、四路互连的CAN接口、PWM 通道(六路)以及多达九个外部中断管脚使它们特别适用于汽车、工业控制应用以及医疗系统和容错维护总线。

LPC2294 集成4路CAN 控制器。他们具有如下特性:

★ 单个总线上的数据传输速率高达1Mb/s

★ 32 位寄存器和RAM访问

★ 兼容CAN 2.0B, ISO 11898-1标准

★ 全局验收滤波器可以识别所有CAN 总线的11 位和29 位Rx 标识符

★ 验收滤波器为选择的标准标识符提供了Full CAN-style 自动接收功能

1.2 隔离CAN收发器CTM1050T

CTM1050T是一款带隔离的高速CAN收发器芯片,其主要功能是将CAN控制器的逻辑电平转换为CAN总线的差分电平,并且具有(DC 2500V)隔离功能、ESD保护功能及TVS管防总线过压功能。CTM1050T具有以下特性:

☆完全符合CAN 2.0和ISO 11898标准的CAN收发器

☆具有隔离、ESD保护功能及TVS管防总线过压功能;

☆速率最高达1Mbit/s;

☆隔离电压:DC 2500V

☆电磁辐射EME极低,电磁抗干扰EMI性极高;

☆无需外加元件可直接使用。

1.3CAN智能节点硬件电路设计

CAN智能节点硬件电路如图1所示。

图1基于LPC2294的CAN总线智能节点硬件电路[page]

主控制器LPC2294的晶振频率范围为1~30MHz。本设计选晶振频率为20MHz。内部256KB的高速Flash存储器用于代码和数据的存储。对于FLASH存储器,可通过内置的串行JTAG接口进行在系统编程(ISP In-System Programming),或进行在应用编程(IAP In-Application Programming)。为了便于调试和系统升级,在设计中总可以预留这些接口电路。

LPC2294采用双电源供电。CPU的供电电压范围为1.65~1.95V(1.8±0.15V),I/O供电电压范围为3.0~3.6V(3.3±03V)。

隔离CAN总线收发器CTM1050T是CAN协议控制器和物理总线之间的接口。在以往的设计方案中需要高速光耦(6N137)、DC/DC电源隔离模块、CAN收发器等其他元件才能实现带隔离的CAN收发电路,现在只需利用一片CTM1050T接口芯片就可以实现带隔离的CAN收发电路,并且隔离电压可以达到DC 2500V。

1.4硬件的抗干扰设计

在本设计所应用的场合中,产生电磁信号的设备较多,包括超短波设备、音频设备、电源等,因此抗干扰设计显得尤为重要。主要采取了以下措施:

(1)为了进一步提高CAN总线节点的抗干扰能力,保证各节点之间在电气上是完全隔离和独立的,我们采用隔离CAN收发器CTM1050T,取代传统的光耦与电源隔离模块,提高性能的同时简化电路设计。

(2)在CAN总线的两端加有两个120Ω的电阻,这两个电阻对于总线阻抗的匹配起着相当重要的作用。去掉它们会使数据通信的抗干扰性及可靠性大大降低,甚至无法通信。

(3)CANH和CANL与地之间并联了两个30pF的小电容,可虑除总线上的高频干扰并且具有一定的防电磁辐射的能力。

2.软件设计

对于一般的32位ARM嵌入式应用系统,在运行主程序前必须初始化运行环境,即编写ARM控制器启动代码。该启动代码包括异常向量表、堆栈初始化、存储系统初始化和目标板初始化等,一般用汇编语言编写。

对于该设计来说,关键的是编写CAN驱动程序。主程序只需通过调用驱动程序提供的接口来实现数据的接受和发送。驱动程序包括四部分内容:CAN控制器的初始化、接收数据、发送数据和总线异常处理。图2为主程序流程图。

图2 主程序流程图[page]

2.1CAN控制器的初始化

初始化CAN 控制器的操作包括:硬件使能、设置管脚连接、软件复位、设置报警界限、设置总线波特率、设置中断工作方式、设置验收滤波器工作方式、设置工作模式并启动 CAN等。需要特别指出的是设置总线波特率是个难点,所有CAN节点的波特率都要相同才能正常工作,所以要正确配置VPBDIV和PLL寄存器。在设置各 CAN寄存器之前必须进行软件复位,这是因为CAN的某些寄存器必须在软复位下读写。

值得注意的是,LPC2294为所有的CAN 控制器提供了全局接收标识符查询功能。2KB的接收过滤用RAM可容纳1024个标准标识符或者512个扩展标识符或两种类型混合的标识符。通过软件处理,可在该RAM中设置存放1~5个标识符表格,它能更容易的对任意复杂的ID进行筛选过滤,满足复杂的ID的接受过滤要求。大大减少了系统软件设计复杂度及运行时的负担。设置验收滤波器工作方式,必须首先创建LUT表格,指定每个表格的起始地址,并用实际的ID地址初始化该表格。最后设定验收滤波器模式寄存器。若该节点不主动发送数据,可选择在总线不活动时进入睡眠模式。

2.2 数据发送

将待发送的数据打包成符合CAN 协议的帧格式后,便可写入发送缓存区,并启动发送。在写发送缓存区前必须查询其状态。LPC2294中的CAN控制器为了提高大量数据发送的效率,每个 CAN控制器都有三个独立的发送缓冲区,它们的状态可以通过查询CANSR得知。只有当其中有空闲的发送缓冲区时才可将数据写入。在发送大量数据数,这一步显得尤为重要,否则发送可靠性将不能保证。启动发送成功后,只能通过查询CANGSR的TCS位或配合发送成功中断来判断数据是否发送成功。

2.3 数据接收

接收数据可采用查询方式或中断方式。在某一段时间内,CAN总线并不总是在活动,为了提高效率,可采用中断方式。在初始化程序中必须使能接收中断。在中断服务子程序中,读取CANICR,判断是否有接收中断标志,有则读取接收缓冲区数据。

2.4 异常情况处理

在总线发生严重故障的情况下,CAN节点有可能脱离总线,此时以下寄存器位被置位:CANSR的BS位、CANIR的BEI位和EI位(如果使能)和CANMOD的RM位。RM将许多CAN控制器功能复位和禁止。软件下一步必须置零RM位。发送错误计数器将递减计数总线释放条件(11个连续的隐性位)的第128个事件。软件可通过读取Tx错误计数器对计数器递减计数的情况进行监测。

一些不是很严重的错误一般不会引起总线错误,即使不处理也不会产生什么致命错误,为了提高中断处理速度,可以根据实际情况裁减中断服务程序。

3结束语

由于该方案体积小、功耗低、抗干扰性好,现已应用于电磁环境复杂的某装甲车通信设备中,满足了该项目对CAN网络节点的要求。此外该设计作为CAN总线节点的一个模块,能够和仪器仪表等设备相结合,使其具有网络通信的能力,有着广阔的应用前景。

本文作者创新点:隔离CAN收发器CTM1050T的使用取代了在以往的设计方案中需要高速光耦(6N137)、DC/DC电源隔离模块、CAN收发器等分立元件才能实现的带隔离的CAN收发电路,现在只需利用一片CTM1050T接口芯片就可以实现带隔离的CAN收发电路,并且隔离电压可以达到 DC 2500V。在简化硬件电路开销的同时提高了系统的抗干扰性能。

参考文献:

1 邬宽明.CAN总线原理和应用系统设计.北京:北京航空航天出版社,1996。

2 Philips Semiconductors.LPC2292/LPC2294 DataSheet.2004。

3 广州致远电子有限公司.CTM1050高速CAN隔离收发器.2006。

4杨艳秋,李建勇,曹长修.基于嵌入式MPU和CAN总线的测控系统设计.微计算机信息,2007,2-2:31-32。

关键字:LPC2294  CAN总线  CTM1050T 引用地址:基于LPC2294的CAN总线智能节点设计

上一篇:实时操作系统µC/OS-II在ARM7上的移植
下一篇:一种新的BootLoader启动引导方式研究

推荐阅读最新更新时间:2024-03-16 12:56

CAN总线在机车监控系统中的应用
以Philips公司的SJA1000为例,介绍了CAN现场总线的特点,控制器的功能、结构和CAN2.0B总线协议的基本内容,阐述了一个基于CAN总线的火车机车监控系统,及其系统性能要求、系统硬件构建、软件设计思路和应用结果,由此说明CAN总线的优点及其用于工业现场控制系统的一个通用设计过程。 关键词:CAN,现场总线,SJA1000初始化,机车监控系统,信号检测,局域网 1 引 言   对火车机车监控系统而言,数据测量/传输的快速性、准确性、可靠性、通讯的灵活性都是至关重要的。以前的机车数据监控仅仅提供现场数据的显示和报警,在各设备上加智能仪表,比较分散,不便于观察机车运行情况和进行及时检修,机车运行数据也无法保存,而这些
[模拟电子]
CAN总线技术在工业码垛机器人控制系统中的应用研究
目前在用的工业码垛机器人种类繁多,但根据其多轴控制系统的技术特点一般可分为三种类型:1)基于PLC的多轴控制系统;2)基于PC的多轴控制系统;3)基于总线的多轴控制系统。其中,总线控制系统具有数字信号传输、系统完全开放等优点,得到广泛的应用。笔者通过研究发现,基于现场总线,尤其是CAN总线的工业码垛机器人在实际应用中具有便于组网、性价比高、扩展性强等特点,在大工业生产中具有广阔的发展前景。 工业码垛机器人 笔者所在科研团队开发的新型工业码垛机器人(机构简图如图1所示),其主体机械结构是基于平衡吊原理的七杆机构,具有承载力大、稳定性好、结构紧凑、节省能耗等特点。机器人的动力由四台交流伺服电机提供,分别负责机器人沿水平方向、沿垂直方
[工业控制]
<font color='red'>CAN总线</font>技术在工业码垛机器人控制系统中的应用研究
CAN总线在分布式变电所自动化系统中应用
CAN总线在分布式变电所自动化系统中应用 随着微机和电子技术的飞速发展,越来越多的智能装置在变电所中得到应用,极大地提高了变电所测量和控制系统的自动化水平。变电所强电磁干扰的工作场所,对自动化设备尤其是对其中涉及到的通信网络的抗干扰能力提出了很高的要求。根据变电所中开关设备和互感器的安装方式、环境以及对系统自动化程度的不同要求,整座变电所的测量控制系统一般采用集中与分散结合的方式构成,控制既可以做到集中控制(在主控制室中的集中控制台或屏上进行),也可对各开关进行分散控制(由安装在开关设备跟前的控制箱完成)。   变电所自动化系统主要由各种开关的智能控制单元、电气参数测量单元和继电保护装置构成,在这些智能化设备之间存在着信息交
[模拟电子]
<font color='red'>CAN总线</font>在分布式变电所自动化系统中应用
CAN总线转光纤在利达消防报警主机联网中应用
该小区位于山西省忻州市忻府区元遗山路,交通便利,紧邻山西师范学院,附近有CBD商业区、医院、学校等,配套设施齐全。小区共有10栋高层住宅楼,居民住宅1230余户,总建筑面积118450㎡,是忻州地区较大的高档小区之一。      项目共有10栋住宅楼10台利达JB-QB/LD128E主机信号传到中心机房,距离较近的三栋楼之间采用屏蔽电缆走CAN总线通讯,离中心机房距离较远的7台主机现场干扰比较大,距离远无法传输,采用光纤通讯点对点传输,数据传至中心机房。项目方经多方位测样、调试,最终选用Ci-AF110型CAN总线光端机转光纤进行连网,解决了距离、干扰、雷击问题。 系统要求: 系统主机均采用利达JB-QB/LD12
[嵌入式]
STM32的CAN总线调试
这一周调试STM32的CAN,从网上搜集了一些资料,感谢原作的无私奉献。 重点说明几个问题: 1、CAN的过滤器 对于过滤器,看中文手册上写的不是太清楚,STM32共有14组过滤器,用以对接收到的帧进行过滤。每组过滤器包括了2个可配置的32位寄存器:CAN_FxR0和CAN_FxR1。对于过滤器组,可以将其配置成屏蔽位模式,这样CAN_FxR0中保存的就是标识符匹配值,CAN_FxR1中保存的是屏蔽码,即CAN_FxR1中如果某一位为1,则CAN_FxR0中相应的位必须与收到的帧的标志符中的相应位吻合才能通过过滤器;CAN_FxR1中为0的位表示CAN_FxR0中的相应位可不必与收到的帧进行匹配。过滤器组还可以被配置成标识符列表
[单片机]
CAN总线抗干扰的6条“军规”
随着CAN总线在电动汽车、充电桩、电力电子、轨道交通等电磁环境比较恶劣的场合应用越来越多,信号干扰的问题已经严重影响到使用者对CAN总线的信任。究竟如何才能抗干扰?本文展示了致远电子CAN总线抗干扰的6条“军规”。 在汽油车时代,CAN总线遇到的干扰少之又少,即使有一些继电器和电磁阀的脉冲, 也不会有很大影响,稍微进行双绞处理,完全可以实现零错误帧。 可是到了电动汽车年代,逆变器、电动机、充电机等大功率设备对CAN的影响足以中断通讯,或者损坏CAN节点,如图1图2所示,就是被逆变器干扰的CAN波形。 图1 干扰前 图2 干扰后
[汽车电子]
<font color='red'>CAN总线</font>抗干扰的6条“军规”
基于CAN总线煤矿瓦斯智能节点的研究与设计
摘要:煤矿瓦斯气体监测的系统是保证煤矿生产安全的必备设备,分析国内外煤矿瓦斯气体监测系统特点,提出基于CAN总线煤矿瓦斯气体监测的网络系统。着重介绍以P80C592单片机作为CAN总线煤矿瓦斯智能节点,研究设计CAN总线通信接口电路、MAX306数据采集电路以及相应的软件设计等。通过研究设计表明智能节点具有简单明了、体积小、性能高、成本低廉、抗干扰能力强等特点,能够满足煤矿瓦斯气体监测的网络系统要求。 关键词:CAN总线;瓦斯;传感器;远程监控 0 引言 我国是世界上最大的煤炭生产和消费国,也是世界上少数几个以煤为主要能源的国家之一。煤炭中含有大量的甲烷(CH4)等易燃易爆气体,它是瓦斯形成的主要成分,发生瓦斯事故后会造成巨
[工业控制]
基于<font color='red'>CAN总线</font>煤矿瓦斯智能节点的研究与设计
DSP与CAN总线的测速和远程传送一体化
  速度测量是控制工程的基本问题之一。在许多情况下,测速信号需要远距离传送。实现这个问题的一个主要方法是使用SoC(片上系统)芯片。它所带的丰富外设改变了关于硬件和软件的观念。搭建硬件系统变为对硬件结构的理解掌握,软件的编程也从算法编制为主变为部件设置为主,具有简捷、完整的特点,体现了芯片的技术优势。SoC类的TMS320LF2407DSP芯片在测速和远程传送应用中的简捷一体化设计也体现了这一点。   1 相关系统结构   TMS320LF2407所带有的事件管理器和CAN控制器模块为测速和远程传送提供了便利。 TMS320LF2407有2个事件管理器EVA和EVB,各有3个捕获单元。对应6个捕获输入引脚CAPX(对EVA,X
[应用]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved