引 言
随着信息技术的飞速发展,32位ARM微控制器以其低功耗、高性能以及小体积等特性,得到了广泛的应用。在汽车、消费娱乐、仪器仪表、工业控制、海量存储、网络、安保和无线等领域,随处可见其应用实例。因而,基于ARM的技术方案是最具市场前景和市场优势的解决方案。
现场总线是当前工业通信领域中应用最广的技术之一。作为现场总线之一的CAN总线,以其高性能、高可靠性以及灵活的设计越来越受到人们的重视,越来越多的 ARM微控制器带有CAN控制器。Philips 2000系列ARM微控制器是基于ARM7的集成有2个或4个CAN控制器的微控制器,在工业通信网络中有广泛的应用。
1 CAN总线的硬/软件设计简述
1.1 硬件设计
LPC2000系列ARM内置CAN控制器,每一个CAN控制器都与SJAl000有相似的寄存器结构,只是寄存器访问由8位字节访问转变为32位双字访问,因而使得硬件连接相对变得简单。 CAN总线驱动器使用82C250或TJA1050。为增强节点的抗干扰能力,CAN控制器与总线驱动器可不直接相连,而是通过高速光耦6N137连接。光耦部分采用的两个电源应隔离,故采用电源隔离模块。
1.2 软件设计
CAN节点的基本软件设计包括CAN节点初始化、报文发送、报文接收3部分。在这3部分程序的基础上可编出CAN总线通信的一般应用程序。当然,要将CAN总线应用于通信任务比较复杂的系统中,还需要编写CAN总线异常处理、验收滤波设置等内容。
2 验收滤波器的设置及工作原理
当CAN控制器接收一完整的标识符时,将通知验收滤波器。验收滤波器响应这个信号,并读出标识符,与AF(验收滤波)RAM中的标识符表格进行匹配,以决定接收或放弃此帧信息。
AF RAM是一个容量为512×32位(2KB)的RAM。通过软件设置,可在RAM中存放1~5个标识符表格。图1为一个完整的AFRAM内部表格分布。
为方便编程实现,把AF RAM的内容按32位模式排列,每个32位称为一个“cell”。表格就是cell的集合。前两种表格中每个cell包含2个标识符,且配置时每个 cell中高位标识符小于低位标识符,否则会引起验收滤波器执行失败。接下来的2个表格,每一对范围或每一个标识符占用1个cell,而合法的扩展标识符范围表格必须以偶数个cell出现。每个表格均需按升序排列,每种表格可根据应用需要适当裁减。
3 验收滤波编程实现
程序用C语言编制,在ADSl.2开发环境下通过JTAG接口进行实时调试、仿真和下载,并在实际应用中得到了验证。要说明的是,Fullcan模式应用较少,程序未涉及它的设置;设置了独立标准标识符和标准标识符范围表格,对标准ID{1,2, 0x10,0x20}和指定范围{{90<=ID<=100}及{0x300<=ID<=0x400}}的信号进行接收,独立扩展标识符表格和扩展标识符范围表格未设置。需要设置时,可参考前两种表格的设置程序。[page]
在CANREG.H中,定义验收滤波模式寄存器结构如下:
②初始化一个独立标准标识符表格的内容。
③初始化一个标准标识符组表格的内容。
④用独立标准标识符表格内容初始化1,uT的独立标准标淤符表格。
⑤用标准标识符范围表格内容初始化LuT的标准标识符范围表格。
⑥模式2,启动全局验收滤波器。
在majn.c中所含的4个相关函数略。
结语
在SJAlO∞的应用巾,验收滤波器只能对一些规律性较强的ID和个数较少的ID进行滤波‘硼。当需要设计复杂的验收滤波器时,以上的验收滤波模块能起到一定的作用。当然,在具体的应.Hj场合.还需要考虑通信协议、CAK总线异常处理、cAN初始化、接收和发送等程序。
关键字:LPC2000 CAN 验收滤波 SJAl000
引用地址:
LPC2000系列CAN验收滤波的编程及应用
推荐阅读最新更新时间:2024-03-16 12:56
CANScope分析仪与电动汽车之间的协议解析
随着新能源战略的部署和实施,电动汽车必将走进千家万户。与之配套的电动汽车充换电设施已率先开始建设,将逐步形成充电桩、充电站、换电站、配送站等设施相结合的电动汽车充换电系统。电动汽车充换电系统是一个庞大的电力网络资源,其通信系统的特点是被测点多且分散、覆盖面广、通信距离短。随着城市充换电设施的持续建设,其网络拓扑要求具有灵活性和扩展性的结构。 CANScope分析仪广州致远电子股份有限公司研发的一款综合性的CAN总线开发与测试的专业工具,集海量存储示波器、网络分析仪、误码率分析仪、协议分析仪及可靠性测试工具于一身,并把各种仪器有机的整合和关联;重新定义CAN总线的开发测试方法,可对CAN网络通信正确性、可靠性、合理性进行多角度全
[测试测量]
Tekscan在丝网印刷刮条的力和压力分布上应用
script type=text/javascript /script script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type=text/javascript /script script src="http://pagead2.googlesyndication.com/pagead/js/r20101117/r20110208/show_ads_impl.js" /script script google_protectAndRun("ads_core.google_render_ad", google_
[传感器]
基于CAN总线的电梯外呼系统方案设计
随着现代社会的发展,科学技术的进步,出现了众多高层建筑和智能建筑。电梯,作为高层建筑内部一种重要的交通工具,其应用规模日益扩大。而作为电梯系统中必不可少的一部分,电梯召唤显示板(简称电梯外呼板)的应用也随之剧增。 电梯外呼板应用于每层楼的电梯门外,供乘客及电梯维保人员使用。电梯外呼板将乘客及维保人员的需求信息通过CAN总线传达给电梯主板,电梯主板接收信息并执行相应的操作。同时,电梯主板将电梯的实时运行信息通过CAN总线传递给电梯外呼板,通过外呼板LED显示出来,供乘客参阅。 AVR单片机具有高可靠性、功能强、高速度、低功耗和低价位的特点,本系统选用了高档ATmega列AVR单片机ATmegal6。它具有先进的RI- SC结构,具有
[嵌入式]
现场总线CAN-bus和PC在现代化的智能楼宇小区安防中的应用
前言 随着社会生活方式的不断变化,科技的不断进步,人们要求更加人性化、智能化的生活条件。不用事必躬亲,尽可能地让智能系统代替手工方式,来进行有效的管理和执行。当前越来越复杂的交通状况,如行路难、停车难等问题大大降低了城市的工作和生活效率,迫使我们寻找一个能够方便解决问题的办法。
智能化的停车场便在这样的背景下应运而生了。智能停车场的产生不但规范了城市交通管理和车辆管理水平,扩充了城市的容量,在安全防范方面也有巨大的保障,同时还能方便的和其他智能系统接口(如智能大厦、智能小区等),组成更完善的物流及设备管理系统。
智能停车场通讯现状
[嵌入式]
基于DSP的CAN总线接口设计
1. CAN总线简介 控制器局部网络(CAN ControllerAreaNetwork)是德国Bosch公司从20世纪80年代初为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通讯协议。1991年9月PHILIPS公司制定并颁布了CAN2.0技术规范;1993年11月国际标准化组织(ISO)正式颁布了关于CAN总线的ISO11898标准 ,为CAN总线的标准化、规范化应用铺平了道路。 世界各半导体厂商推出了许多CAN总线产品。一类是专用的CAN控制器芯片,如Intel公司的82526,82527;PHILIP公司的82C200,SJA1000;NEC公司的72005等;另一类是嵌入CAN接口
[嵌入式]
利用普源示波器搞懂汽车CAN-FD总线技术
随着工业的发展,工业总线上的数据量逐日增长,尤其是在CAN总线运用较多的汽车领域,总线通讯的数据量愈发庞大。例如汽车内部出现更多的辅助系统和人机交互系统,使得传统的CAN总线在传输速率和带宽方面越来越力不从心,CAN总线已逐渐达到负荷极限。根据CAN规范 ISO11898-2所定义的标准帧结构,一帧报文最大只能传输 64 位(8 个字节)的数据,在最好的情况下总线负载也已达到 70%左右。 为了应对现今巨大数据量的挑战,亟需改进原有的总线来提高总线传输速率,CAN-FD (CAN with Flexible Data-Rate)便在这样的背景下诞生了。 一、汽车CAN网络拓扑图 下图举例了一个汽车CAN网络拓扑图。从中可以看到
[测试测量]
基于μCOS-II的CAN通讯模块设计
在系统越来越复杂,功能越来越强大的今天,嵌入式系统的设计中采用实时多任务操作系统已经成为嵌入式应用设计的主流。μCOS-II是一个开源嵌入式实时操作系统(Real Time Operating System, RTOS),它已经被成功移植到各种CPU上。但是基于μCOS-II的应用软件需要在移植操作系统后自行完成。模块化的应用程序设计可以使得嵌入式设计变得更加方便,产品的开发更加迅速。S3C44B0是三星公司生产的一种ARM7芯片,性能强大,在通用嵌入式设计中运用广泛。 CAN 总线(Control Area Network)是一种有效支持分布式控制和实时控制的现场总线,由于其高性能和高可靠性,CAN总线的应用范围广布过程工业
[单片机]
基于MSP430系列单片机的CAN总线接口转换卡设计
1 引言 控制器局域网(Controller Area Network,简称CAN)是德国奔驰公司20世纪80年代为解决汽车众多控制设备与仪器仪表之间的数据交换开发的一种串行通信协议。它作为现场总线的一种广泛应用于各种工业现场,根据不同的需要或以主从方式、或以多主方式工作。CAN总线使用的通信介质为双绞线或其他电缆,传输速率可达lMb/s。CAN总线与其他通信网的不同之处有二:一是报文传送中不包含目标地址,它是以全网广播为基础,各接收站根据报文中反映数据性质的标识符过滤报文,该收的收下,不该收的弃而不用。其好处是可在线上网下网、即插即用和多站接收;二是特别强化了对数据安全性的关注,满足控制系统及其他较高数据要求的系统需求
[应用]