资源描述:
《c8051f040单片机在can通信网络中的应用new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、xcane.h一业鱼丛旦丝EgHtP:刀wwwehinaPower.net技术交流C8051F040单片机在CAN通信网络中的应用绝丰王映波哀尚志武汉新瑞科电气技术有限公司湖北式汉43072。摘要:CAN(ControllerAreaNetwork)总线是一种使用CAN协议的串行通信网络SilieonLaboratories公司的单片机c8051F040是完全集成的混合信号系统级芯片,而且内部集成了CAN控制器。本文着重对该芯片中的CAN控制器的结构作了分析,并给出了节点的硬件、软件设计方案。关键词:C805lF040:CAN;
2、报文;寄存器sae:ontroer.AbtrtCAN(CllAreaNetwork)bus15akindofserialeoeationnetworkusingCANProtocolTbeslenu耐ing一一ChiPProeessorC805lF040PrC刁ueedbySilieonLaboratorieseoany15afullyintegrated而xedsigna】Systema-mP训C,明aCANeonller15igratedinit.eeonfiationofCANeollerisaZedandsiofh.月w
3、hiPdtIOnteThgUrthentroanlythedegnarereontrone.andsofwarefoCANllingod15givenKeos:C805lF040;CAN:messe;rester州rdaggi0引,,CAN具有十分优越的特点:其主要特性包括低成本、极高的总线利用率、很远的数据传输距离(10km)、高速的数据传输效率(l扬it/s)、可根据报文的ID决定接收或屏蔽该报文、可靠的错误处理和检错机制、发送的信息遭到破坏以后可自动重发、节点在错误严重的情况下具有自动退出总线的功能、报文不含源地址和目标地
4、址,仅用标识符来指示功能信息和优先级信息。单片机与C姗总线连接的传统方式是将CPU与c胡总,图1CAN控制器原理框图线控制器和总线收发器相连后再接入总线网络这样使·,。P51CCPU外围电路复杂化整个系统受外部影响较大为了cI可以通过特殊功能寄存器直接或间接访问胡,、解决这一问题很多单片机厂商纷纷将CA”控制器集成控制器中的C从控制寄存器(C胡0())C^N测试寄存器,。.cCs在单片机芯片上目前单片机内部集成的CAN控制器(c胭OTsT)和^N状态寄存器(胡oTA)所有其它的、a、CORCODACANODATL有枷torol公
5、司的Mc68HC912叨128Aphili声公司的寄存器只能通过州AD胡粉和寄存器、、。p87c591At二i公司的AT89c51cc01和AT89csicc02以地址索引的方式间接访问Intel公司的侧87c196cA和m87c196CB以及siliconZC朋控创拐应用时,存.砚,.。Laboratories公司的c8051F040等21报文对象初始化处理,,CAN在控制器复位后cPU对Init清O以前需要将各个这里以c8051F’040为例详细介绍了其内部控制器,。不使用的消息对象池gval清0并对程序中使用的消息的使用方
6、法及其在分布式电源系统中的应用。1C8051F040C朋控翻.构成对象初始化c8051F040内部集成的C从控制器是Bosch全功能报文对象的配置是通过相应的接口寄存器来设里其c^N、、,模块的完全实现,完全符合CAN规范2.OB。此C胡控制器屏蔽码仲裁场控制场和数据场值而这一设置过程。:、RAMI由以下几部分构成CA”内核报文(与C8051侧以相由相应的Fx命令请求寄存器来完成,n互独立、C。当C人月控制寄存器中的Iit位清零CA月内核中的以N)报文处理状态机制和胡控制寄存器其原。C一胡理框图如图1所示协议控制器状态巾1制和报
7、文处理状态机制将控制.:ena一oer.netehnicalExchangeHtP/hiPwTew技术交流.·。3Zc枷通信的软件实现的内部数据流接收到的报文通过接收滤波后都存放在。:报文RAM中本系统要实现的主要任务是双机热备的通讯控制2.2发送对象的配置器将采集到的给定信号(电压信号)进行A/D转换以后,,I8一。.,当报文对象作为发送对象时仲裁寄存器(D2判断有几个电源模块在正常工作然后通过CAN总线发,,和xtd位)将被应用它们定义了即将发送的报文识别符送到各个电源模块同时接收各个电源模块的系统状态和类型,如果使用,。1
8、位识别符(标准帧)那么使用的以及实际输出电流大小,。,、是ID28~ID18而ID17~Io将被忽视如果TxIE位被置由上可知C胡通信主要包括系统初始化程序发,、。,则1ntP;如送程序在本例中系统软件采用结构化位nd位在此报文对象被成功发送后被置位接收程序等,