版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、CAN通信,物理与电子工程学院 11级励志班,CAN是控制器局域网络(Controller Area Network, CAN)的简称,是由研发和生产汽车电子产品著称的德国BOSCH公司开发了的,并最终成为国际标准(ISO 11898)。是国际上应用最广泛的现场总线之一。 在北美和西欧,CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,并且拥有以CAN为底层协议专为大型货车和重工机械车辆设计的J1939协议。,什么是CAN ?,3,2 CAN总线特点,CAN总线是一种串行数据通信协议。 CAN总线特点如下: (1)多主机方式工作,网络上任意一个节点均可以在任意时刻主动地
2、向网络上的其他节点发送信息,而不分主从,通信方式灵活。 (2)网络上的节点(信息)可分成不同的优先级,可以满足不同的实时要求。 (3)采用非破坏性位仲裁总线结构机制,当两个节点同时向网络上传送信息时,优先级低的节点主动停止数据发送,而优先级高的节点可不受影响地继续传输数据。,4,(4)可以点对点、一点对多点(成组)及全局广播几种传送方式接收数据。 (5)直接通信距离最远可达6km(速率10Kbps以下)。 (6)通信速率最高可达1MB/s(此时距离最长40m)。 (7)节点数实际可达110个。 (8)采用短帧结构,每一帧的有效字节数为8个。 (9)每帧信息都有CRC校验及其它检错措施,数据出错
3、率极低。 (10)通信介质可采用双绞线,同轴电缆和光导纤维,一般采用廉价的双绞线即可,无特殊要求。 (11)节点在错误严重的情况下,具有自动关闭总线的功能,切断它与总线的联系,以使总线上的其他操作不受影响。,CAN 总线的连接,CAN H,CAN L,CAN 驱动,2块DSP2812的连接,CAN总线的位数值表示与通信距离,CAN总线上用显性(Dominant)和隐性(Recessive)两个互补的逻辑值表示0和1。当在总线上出现同时发送显性位和隐性位时,总线上数值将出现显性。如左图。,CAN_H,CAN_L,F2812 存储区映射,数据空间,CAN,0 x00 6000,0 x00 0000
4、,0 x 3F FFFF,0 x00 61FF,6080,6040,61FF,控制/状态 寄存器,消息对象时戳 32*32,邮箱 0,邮箱 1,邮箱31,局部接受掩码 32*32,消息对象超时 32*32,60C0,6108,6100,16BYTE*32=512,消息对象(邮箱)结构,消息标识符 29bit用于扩展标识符 11bit用于标准标识符 标识符扩展位,IDE(MSGID.31) 接受屏蔽使能位,AME(MSGID.30) 自动应答模式位,AAM(MSGID.29) 发送优先级,TPL(MSGCTRL.12-8) 远端发送请求位,RTR(MSGCTRL.4) 数据长度代码,DLC(MS
5、GCTRL.3-0) 最多8个字节的数据区,CAN 控制/状态寄存器,6000,6002,6004,6006,6008,600A,600C,600E,6010,6012,6014,6016,6018,601A,601C,6020,6022,6024,6026,6028,602A,602C,602E,6030,6032,601E,31,0,31,0,6034,6036,6038,603A,603C,603E,CAN 邮箱使能寄存器 (CANME) 0 x006000,15,16,31,CANME15:0,CANME31:16,0,0 = 邮箱RAM被禁止,可以被CPU作为普通RAM使用 1 =
6、邮箱被使能。对任何标识符区域写操作前,邮箱必须被禁止,CAN 邮箱方向寄存器 (CANMD) 0 x006002,15,16,31,CANMD15:0,CANMD31:16,0,0 = 对应的邮箱被定义成发送邮箱 1 = 对应的邮箱被定义成接受邮箱,CAN 发送请求置位寄存器 (CANTRS) 0 x006004,15,16,31,CANTRS15:0,CANTRS31:16,0,当邮箱准备发送时,CPU设置TRS.n位为1开始发送 0 = 无操作。注意:在发送成功后,该位将被CAN模块清零 1 =置位该位发送对应邮箱的消息。可以同时置位多个bit以同时发送多个消息 用户软件置位或者在远程发送
7、请求种由CAN模块置位,CAN 发送请求复位寄存器 (CANTRR) 0 x006006,15,16,31,CANTRR15:0,CANTRR31:16,0,当消息发送成功或失败时被置位。只能通过CPU或者内部逻辑来置位 0 = 无操作。 1 = 取消一次发送请求(如果当前消息没有被处理率),CAN 发送响应寄存器 (CANTA) 0 x006008,15,16,31,CANTA15:0,CANTA31:16,0,发送成功则置位 0 = 消息没有被发送 1 = 如果信箱N中的消息被发送成功,则该邮箱对应被置位 注意:软件写1复位TA,CAN 失败响应寄存器 (CANAA) 0 x00600A,
8、15,16,31,CANAA15:0,CANAA31:16,0,如果邮箱N中的消息发送失败,则AA.n位和AAIF(GIF.14)置位,同时也产生中断 0 = 发送没有失败 1 = 邮箱N的发送失败 注意:通过软件写1编程复位一个AA位,CAN模块初始化,在使用CAN模块之前必须进行初始化,并且只有CAN模块工作在初始化模式下才能进行初始化。,CAN模块配置步骤,(1)使能CAN模块时钟。 设置CANTX和CANRX作为CAN通信接口引脚, 复位后,CCR(CANMC.12)位和CCE(CANES.4)位置1,允许用户配置位时间配置寄存器(CANBTC)。如果CCE位置1,进行下一步;否则将C
9、CR位置l,然后等待直到 CCE置1。 (4)设置通信波特率TSEG1和TEEG2。 (5) 对于标准CAN模式(SCC),现在对接收屏蔽寄存器编程。 (6)对主控制寄存器(CANMC)编程。 将MSGCTRLn寄存器的所有位清零进行初始化。 检查CCE是否被清零(CANES.4=0),如果被清零则表明CAN模块已经配置完成。,配置发送邮箱,(1)向寄存器CANME写0禁止邮箱。 (2)通过寄存器CANMC请求改变数据区。 (3) 设置发送邮箱的消息的ID。 (4)通过消息控制寄存器CANMSGCTRL设置消息控制区,如果该消息发送的是远程帧,需要将RTR置位。 (5)使能邮箱。,发送消息,(
10、1) 写消息到邮箱的数据区, (2) 发送请求标志写CANTRS.x=1:启动消息发送。 (3) 等待发送响应标志位TA.x=1; (4) 发送成功后,复位TRS位 (5) 置TA.x=1。,void InitECan(void) EALLOW; /*配置Gpio引脚工作在CAN功能*/ GpioMuxRegs.GPFMUX.bit.CANTXA_GPIOF6=1; GpioMuxRegs.GPFMUX.bit.CANRXA_GPIOF7=1; ECanaRegs.CANTIOC.bit.TXFUNC=1;/配置TX为CAN发送引脚 ECanaRegs.CANRIOC.bit.RXFUNC=1
11、;/,配置RX为CAN接收引脚 EDIS; ECanaRegs.CANME.all = 0; /*发送邮箱5的ID号*/要接收消息必须有扩展标志 ECanaMboxes.MBOX5.MID.all = 0 x9555AAA6; /*接收邮箱6的ID号*/要接收消息必须有扩展标志 ECanaMboxes.MBOX6.MID.all = 0 x9555AAA5; ECanaRegs.CANMD.bit.MD5 =0; /*5 为发送邮箱 */ ECanaRegs.CANMD.bit.MD6 =1; /*6 为发送邮箱 */ ECanaRegs.CANME.all = 0 xFFFFFFFF; /*
12、32个邮箱使能*/ ECanaMboxes.MBOX5.MCF.bit.DLC = 8; /*数据长度 8个BYTE*/ ECanaMboxes.MBOX6.MCF.bit.DLC = 8;,/*没有远方应答帧被请求*/ ECanaMboxes.MBOX5.MCF.bit.RTR = 0; ECanaMboxes.MBOX6.MCF.bit.RTR = 0; EALLOW; ECanaRegs.CANMIM.all = 0; /*屏蔽邮箱中断*/ ECanaRegs.CANTA.all=0 xffffffff; /清除所以发送响应位。 ECanaRegs.CANRMP.all=0 xffffffff; /清除消息挂起位 ECanaRegs.CANMC.bit.CCR = 1;/CCR置位 EDIS; wh
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 城市配套供水工程规划设计方案
- 养老护理员老年人心理支持
- 儿科常见传染病的预防和护理
- 先天性心脏病患者日常护理要点
- 儿科急救护理
- 养老机构教学配图素材
- 高中主题班会 别让玩笑成为伤害的借口教案 高二上学期人际交往主题班会
- 物业管理服务提质增效专项工作制度
- 乡村医生服务规范考核试题及答案
- 消化道感染防控试题及答案
- 2025至2030中国高纯SiCl4行业产业运行态势及投资规划深度研究报告
- 结肠透析病人护理查房
- 部编版语文六年级下册 《阅读理解》专项练习题含答案
- GB/T 45613-2025皮革物理和机械试验吸湿性的测定
- 医院运营助理员管理制度
- 统编版语文五年级下册第二单元教材解读 课件
- 厂区环卫清扫管理制度
- DZ/T 0033-1992固体矿产勘查报告编写规定
- 2025年无人机驾驶员职业技能考核试卷(新手级)
- 西方教育思想史
- 2025年宅基地赠与协议书模板电子版
评论
0/150
提交评论