C8051F040在基于CAN总线的分布式测控系统中的应用
关键词:C8051F040;CAN总线;分布式;测控节点
1 概述
分布式在线测控系统是由多个面向设备的、以MCU为核心的智能处理单元和多个并行运行且具有不同监测和故障诊断功能的微机构成的。该系统采取“分治”的设计思想?它将数据采集以及部分数据处理任务交给设备层的智能处理单元去完成?而监测诊断层主要负责监视和故障诊断。分布式测控系统设计均应考虑各个节点之间的通信问题?因为通信网络的选取对系统性能有很大影响。 国内已开展了基于现场总线的在线测控系统的研究?并利用CAN总线实现设备层的检测处理、单元间的通信以及与上层监测主机的通信。CAN总线就是一种支持分布式实时控制系统的串行通信局域网络总线。它的主要特点如下:
●任一个节点均可在任一时刻主动向网络上的其它节点发送数据,而从不分主从,因此,通信比较灵活;
●节点可分为不同的优先级,可以满足不同的实时要求;
●采用非破坏性总线仲裁,当两节点同时向总线发送信息时,优先级低的节点主动停止数据发送?而优先级高的节点可不受影响地继续发送数据;
●通信距离最远可达10km,通信最高速率可达1Mbps?
●每帧数据的有效字节数为8,因此,可保证很短的传输时间,而且实时性强,受干扰的概率低;
(凹丫丫范文网fanwen.oyaya.net收集整理)
●每帧数据都含有CRC(循环冗余)校验及其它校验措施,因而数据出错率很低;
●CAN总线节点在严重错误的情况下,可自动切断与总线的联系,以使总线上的其它操作不受影响。
目前,CAN总线协议以其可靠性高、实时性好以及独特的设计已经成为总线通信网络的首选?国内目前使用较广的是PHILIPS 生产的SJA1000 、82C200等独立的CAN控制器,由于这种独立的控制器限制了测控节点的集成度,因此,很多微处理器生产厂家已经开始生产内部集成有CAN控制器的MCU。美国CYGNAL公司生产C8051F040就是内部集成有BOSCH CAN控制器的混合信号系统级芯片(SOC)。本文将分析C8051F040 的CAN总线结构、与CPU 的接口及初始化配置,同时将给出基于C8051F040的分布式测控节点的设计及系统的实现框架。
2 C8051F040及其内部BOTSH CAN
Cygnal公司的单片机C8051F040具有与8051指令集完全兼容的CIP-51内核。它的最高频率可达25MHz?内置64kB FLASH RAM和4kB的数据存储器。C8051F040在一个芯片内集成了构成单片机数据采集或控制系统所需要的几乎所有模拟和数字外设及其它功能部件,包括ADC、可编程增益放大器、DAC、电压比较器、温度传感器、SMBus/I2C、UART、SPI、定时器、内部振荡器、看门狗电路以及CAN 控制器等,这种高度集成为设计小体积、低功耗、高可靠和高性能的测控系统提供了方便,同时也使测控设备整体成本能够降低。
C8051F040内部集成有BOTSH CAN,它兼容CAN技术规范2.0A和2.0B,主要由CAN内核、消息RAM(独立于CIP-51的RAM)、消息处理单元和控制寄存器组成,图1所示是C8051F040内部的CAN总线结构图。
图1中,CAN内核由CAN协议控制器和负责消息收发的串行/并行转换RX/TX移位寄存器组成。消息RAM用于存储消息目标和每个目标的仲裁掩码。这种CAN处理器有32个随意配置为发送和接受的消息目标?并且每一个消息目标都有它自己的识别掩码,所有的数据传输和接收滤波都是由CAN控制器完成的,而不是由CIP-51来完成。
CAN内部寄存器中存储了所有CAN的控制和
《C8051F040在基于CAN总线的分布式测控系统中的应用》