CAN总线及其应用-苦心收集_第1页
CAN总线及其应用-苦心收集_第2页
CAN总线及其应用-苦心收集_第3页
CAN总线及其应用-苦心收集_第4页
CAN总线及其应用-苦心收集_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

嵌入式系统-使用HCS12微控制器的设计与应用,1,第10章CAN总线及其应用,嵌入式系统-使用HCS12微控制器的设计与应用,2,10.1CAN技术规范10.2MSCAN12模块简介10.3MSCAN12模块的内存映射以及寄存器定义10.4MSCAN12模块的自环通信实例,本章目录,嵌入式系统-使用HCS12微控制器的设计与应用,3,10.1.1CAN的基本概念,10.1CAN技术规范,嵌入式系统-使用HCS12微控制器的设计与应用,4,10.1.2CAN的分层结构CAN对象层报文滤波以及状态和报文的处理。CAN传输层把接收到的报文提供给对象层,以及接收来自对象层的报文。物理层在不同节点之间根据所有的电气属性进行位信息的实际传输。,10.1CAN技术规范,嵌入式系统-使用HCS12微控制器的设计与应用,5,10.1.3报文传输和帧结构数据帧,10.1CAN技术规范,数据帧组成,嵌入式系统-使用HCS12微控制器的设计与应用,6,10.1.3报文传输和帧结构数据帧,10.1CAN技术规范,数据帧标准格式中的仲裁场结构,嵌入式系统-使用HCS12微控制器的设计与应用,7,10.1.3报文传输和帧结构数据帧,10.1CAN技术规范,数据帧扩展格式中的仲裁场结构,嵌入式系统-使用HCS12微控制器的设计与应用,8,10.1.3报文传输和帧结构远程帧,10.1CAN技术规范,嵌入式系统-使用HCS12微控制器的设计与应用,9,10.1.3报文传输和帧结构错误帧,10.1CAN技术规范,错误帧的组成,嵌入式系统-使用HCS12微控制器的设计与应用,10,10.1.3报文传输和帧结构过载帧,10.1CAN技术规范,过载帧的组成,嵌入式系统-使用HCS12微控制器的设计与应用,11,10.1.4位定时与同步,10.1CAN技术规范,标称位时间的组成,嵌入式系统-使用HCS12微控制器的设计与应用,12,10.2MSCAN12模块简介,MSCAN模块框图,嵌入式系统-使用HCS12微控制器的设计与应用,13,10.2MSCAN12模块简介,10.2.1MSCAN12特性符合CAN2.0A/B协议标准支持标准和扩展数据帧格式数据长度为08字节可编程位速率,最大1Mbps支持远程帧拥有5个FIFO机制的接收缓冲区,3个具有局部优先级的发送缓冲区具有灵活的标识符验收模式,嵌入式系统-使用HCS12微控制器的设计与应用,14,10.2MSCAN12模块简介,10.2.2外部引脚,CAN系统,嵌入式系统-使用HCS12微控制器的设计与应用,15,10.2MSCAN12模块简介,10.2.3报文存储结构,报文缓冲区组织图,嵌入式系统-使用HCS12微控制器的设计与应用,16,10.2MSCAN12模块简介,10.2.4标识符验收滤波,嵌入式系统-使用HCS12微控制器的设计与应用,17,10.2MSCAN12模块简介,10.2.4标识符验收滤波MSCAN12有4种滤波器方式双标识符验收过滤器四个标识符验收过滤器八个标识符验收过滤器关闭过滤器,嵌入式系统-使用HCS12微控制器的设计与应用,18,10.3MSCAN12模块的内存映射以及寄存器定义,10.3.1MSCAN12模块内存映射,嵌入式系统-使用HCS12微控制器的设计与应用,19,10.3MSCAN12模块的内存映射以及寄存器定义,10.3.2MSCAN12模块寄存器1.控制寄存器1)MSCAN控制寄存器0(CANCTL0)2)MSCAN控制寄存器1(CANCTL1)3)MSCAN总线时钟寄存器0(CANBTR0)4)MSCAN总线时钟寄存器1(CANBTR1)5)MSCAN接收器标志寄存器(CANRFLG)6)MSCAN接收器中断使能寄存器(CANRIER),嵌入式系统-使用HCS12微控制器的设计与应用,20,10.3MSCAN12模块的内存映射以及寄存器定义,10.3.2MSCAN12模块寄存器1.控制寄存器7)MSCAN发送器标志寄存器(CANTFLG)8)MSCAN发送器中断使能寄存器(CANTIER)9)MSCAN发送器消息中止控制寄存器(CANTARQ)10)MSCAN发送器消息中止控制寄存器(CANTAAK)11)MSCAN发送缓冲区选择寄存器(CANTBSEL)12)MSCAN标识符验收控制寄存器(CANTIDAC),嵌入式系统-使用HCS12微控制器的设计与应用,21,10.3MSCAN12模块的内存映射以及寄存器定义,10.3.2MSCAN12模块寄存器1.控制寄存器13)MSCAN接收错误计数寄存器(CANRXERR)14)MSCAN发送错误计数寄存器(CANTXERR)15)MSCAN标识符验收码寄存器(CANIDAR07)16)MSCAN标识符屏蔽寄存器(CANIDMR07),嵌入式系统-使用HCS12微控制器的设计与应用,22,10.3MSCAN12模块的内存映射以及寄存器定义,10.3.2MSCAN12模块寄存器2.报文存储机制(1)标识符寄存器(IDR03)(2)数据段寄存器(DSR07)(3)数据长度寄存器(DLR)(4)发送缓冲区优先级寄存器(TBPR),嵌入式系统-使用HCS12微控制器的设计与应用,23,10.4MSCAN12模块的自环通信实例,10.4.1MSCAN12初始化MSCAN12通信头文件(MSCAN12.h)(1)CAN通信寄存器及标志位定义(2)CAN通信用到的设置量定义(3)CAN通信相关函数声明(4)CAN通信初始化,嵌入式系统-使用HCS12微控制器的设计与应用,24,10.4MSCAN12模块的自环通信实例,10.4.1MSCAN12初始化MSCAN12通信函数文件(MSCAN12.c)(1)CAN通信初始化voidCANInit(void)(2)CAN发送1帧数据INT8UCANSND1DFRM(INT16UID,INT8U*DataBUF,INT8ULEN)(3)查找空闲发送缓冲区INT8UGetSNDBUF(void)(4)CAN接收1帧数据INT8UCANRCV1FRM(INT8U*CANRCVBUF),嵌入式系统-使用HCS12微控制器的设计与应用,25,10.4MSCAN12模块的自环通信实例,10.4.1MSCAN12自环通信方式测试工程1.自环通信方式测试工程主函数文件main.c第1步:定义常量,初始化变量第2步:禁止总中断第3步:芯片初始化第4步:模块初始化(串口初始化、MSCAN12模块初始化)第5步:开放SCI0接收中断第6步:开放总中断,嵌入式系统-使用HCS12微控制器的设计与应用,26,10.4MSCAN12模块的自环通信实例,10.4.1MSCAN12自环通信方式测试工程1.自环通信方式测试工程主函数文件main.c第7步:等待时间增加1。若等待时间到转第8步,否则转第7步。第8步:发送Hello!,若发送成功转第9步,否则转第10步。第9步:CAN等待接收数据,若接收到则通过SCI向PC发送数据,否则发送“ReceiveError!”。转第11步。第10步:通过SCI向PC发送“SendError!”第11步:等待时间清零,转第7步。,嵌入式系统-使用HCS12微控制器的设计与应用,27,10.4MSCAN12模块的自环通信实例,10.4.1MSCAN12自环

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论