第10章 CAN总线及其应用

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2) MSCAN控制寄存器1(CANCTL1) MSCAN控制寄存器1(CANCTL1) 3) MSCAN总线时钟寄存器0(CANBTR0) MSCAN总线时钟寄存器0(CANBTR0) 4) MSCAN总线时钟寄存器1(CANBTR1) MSCAN总线时钟寄存器1(CANBTR1) 5) MSCAN接收器标志寄存器(CANRFLG) MSCAN接收器标志寄存器(CANRFLG) 6) MSCAN接收器中断使能寄存器(CANRIER) MSCAN接收器中断使能寄存器(CANRIER)
第1步:定义常量,初始化变量 第2步:禁止总中断 第3步:芯片初始化 第4步:模块初始化(串口初始化,MSCAN12模块初始化) 第5步:开放SCI0接收中断 第6步:开放总中断
25
嵌入式系统--使用HCS12微控制器的设计与应用
10.4 MSCAN12模块的自环通信实例 MSCAN12模块的自环通信实例
符合CAN2.0A/B协议标准 符合CAN2.0A/B协议标准 支持标准和扩展数据帧格式 数据长度为0~8字节 数据长度为0~8字节 可编程位速率,最大1Mbps 可编程位速率,最大1Mbps 支持远程帧 拥有5 FIFO机制的接收缓冲区 机制的接收缓冲区, 拥有5个FIFO机制的接收缓冲区,3个具有局 部优先级的发送缓冲区 具有灵活的标识符验收模式 …………
嵌入式系统--使用HCS12微控制器的设计与应用
2
10.1 CAN技术规范 CAN技术规范
10.1.1 CAN的基本概念 CAN的基本概念
报文 信息 路由 位速率 优先权
远程数据 请求
多主机
仲裁
错误标志和 恢复时间
故障 界定
连接
单通道
总线数据 表示
应答
嵌入式系统--使用HCS12微控制器的设计与应用
嵌入式系统--使用HCS12微控制器的设计与应用 24
来自百度文库
10.4 MSCAN12模块的自环通信实例 MSCAN12模块的自环通信实例
10.4.1 MSCAN12自环通信方式测试工程 MSCAN12自环通信方式测试工程 1. 自环通信方式测试工程主函数文件main.c 自环通信方式测试工程主函数文件main.c
数据帧 错误标志 错误标志的重叠 错误界定符 错误帧 帧间空间 或过载帧
错误帧的组成
嵌入式系统--使用HCS12微控制器的设计与应用
9
10.1 CAN技术规范 CAN技术规范
10.1.3 报文传输和帧结构 过载帧
数据帧 过载标志 过载标志的重叠 过载界定符 过载帧 帧间空间 或过载帧
过载帧的组成
嵌入式系统--使用HCS12微控制器的设计与应用
嵌入式系统--使用HCS12微控制器的设计与应用
1
本章目录
10.1 CAN技术规范 CAN技术规范 10.2 MSCAN12模块简介 MSCAN12模块简介 10.3 MSCAN12模块的内存映射以及 MSCAN12模块的内存映射以及 寄存器定义 10.4 MSCAN12模块的自环通信实例 MSCAN12模块的自环通信实例
嵌入式系统--使用HCS12微控制器的设计与应用 19
10.3 MSCAN12模块的内存映射 MSCAN12模块的内存映射
以及寄存器定义
10.3. 2 MSCAN12模块寄存器 MSCAN12模块寄存器 1. 控制寄存器
7) MSCAN发送器标志寄存器(CANTFLG) MSCAN发送器标志寄存器(CANTFLG) 8) MSCAN发送器中断使能寄存器(CANTIER) MSCAN发送器中断使能寄存器(CANTIER) 9) MSCAN发送器消息中止控制寄存器(CANTARQ) MSCAN发送器消息中止控制寄存器(CANTARQ) 10) MSCAN发送器消息中止控制寄存器(CANTAAK) MSCAN发送器消息中止控制寄存器(CANTAAK) 11) MSCAN发送缓冲区选择寄存器(CANTBSEL) MSCAN发送缓冲区选择寄存器(CANTBSEL) 12) MSCAN标识符验收控制寄存器(CANTIDAC) MSCAN标识符验收控制寄存器(CANTIDAC)
嵌入式系统--使用HCS12微控制器的设计与应用
17
10.3 MSCAN12模块的内存映射 MSCAN12模块的内存映射
以及寄存器定义
10.3.1 MSCAN12模块内存映射 MSCAN12模块内存映射
地址偏移量 控制寄存器 12 个字节 保留 2 个字节 错误计数器 2 个字节 标识符过滤器 16 个字节 接收缓冲区 16 个字节(窗口机制) 发送缓冲区 16 个字节(窗口机制)
数据帧组成
5
嵌入式系统--使用HCS12微控制器的设计与应用
10.1 CAN技术规范 CAN技术规范
10.1.3 报文传输和帧结构 数据帧
标准格式 仲裁场 11 位标识符 帧起始 r0 RTR IDE 控制场 DLC 数据场
数据帧标准格式中的仲裁场结构 数据帧标准格式中的仲裁场结构 标准
嵌入式系统--使用HCS12微控制器的设计与应用
接收/发送 驱动器
发送中断请求 接收中断请求 错误中断请求 唤醒中断请求
控制和 状态 配置 寄存器
消息过滤 和缓冲
唤醒 低通滤波
MSCAN模块框图 模块框图
嵌入式系统--使用HCS12微控制器的设计与应用 12
10.2 MSCAN12模块简介 MSCAN12模块简介
10.2.1 MSCAN12特性 MSCAN12特性
物理层
在不同节点之间根据所有的电气属性进行位 信息的实际传输. 信息的实际传输.
嵌入式系统--使用HCS12微控制器的设计与应用 4
10.1 CAN技术规范 CAN技术规范
10.1.3 报文传输和帧结构 数据帧
帧间空间 仲裁场 控制场 帧起始 数据帧 帧结束 应答场 帧间空间 或过载帧 数据场 CRC 场
嵌入式系统--使用HCS12微控制器的设计与应用
18
10.3 MSCAN12模块的内存映射 MSCAN12模块的内存映射
以及寄存器定义
10.3. 2 MSCAN12模块寄存器 MSCAN12模块寄存器 1. 控制寄存器 1) MSCAN控制寄存器0(CANCTL0) MSCAN控制寄存器0(CANCTL0)
嵌入式系统--使用HCS12微控制器的设计与应用
20
10.3 MSCAN12模块的内存映射 MSCAN12模块的内存映射
以及寄存器定义
10.3. 2 MSCAN12模块寄存器 MSCAN12模块寄存器 1. 控制寄存器
13) MSCAN接收错误计数寄存器(CANRXERR) MSCAN接收错误计数寄存器(CANRXERR) 14) MSCAN发送错误计数寄存器(CANTXERR) MSCAN发送错误计数寄存器(CANTXERR) 15) MSCAN标识符验收码寄存器(CANIDAR0~7) MSCAN标识符验收码寄存器(CANIDAR0~7) 16) MSCAN标识符屏蔽寄存器(CANIDMR0~7) MSCAN标识符屏蔽寄存器(CANIDMR0~7)
报文标识符位 本地标识符位 验收屏蔽位 = ≥
1
b0 b1 … & 1--验收通过 0--验收不通过

1
bn
MSCAN12报文验收过程示意图 报文验收过程示意图
16
嵌入式系统--使用HCS12微控制器的设计与应用
10.2 MSCAN12模块简介 MSCAN12模块简介
10.2.4 标识符验收滤波 MSCAN12有 MSCAN12有4种滤波器方式 双标识符验收过滤器 四个标识符验收过滤器 八个标识符验收过滤器 关闭过滤器
嵌入式系统--使用HCS12微控制器的设计与应用
21
10.3 MSCAN12模块的内存映射 MSCAN12模块的内存映射
以及寄存器定义
10.3. 2 MSCAN12模块寄存器 MSCAN12模块寄存器 2. 报文存储机制
(1) 标识符寄存器(IDR0~3) 标识符寄存器(IDR0~3) (2) 数据段寄存器(DSR0~7) 数据段寄存器(DSR0~7) (3) 数据长度寄存器(DLR) 数据长度寄存器(DLR) (4) 发送缓冲区优先级寄存器(TBPR) 发送缓冲区优先级寄存器(TBPR)
3
10.1 CAN技术规范 CAN技术规范 10.1.2 CAN的分层结构 CAN的分层结构 CAN对象层 CAN对象层
报文滤波以及状态和报文的处理. 报文滤波以及状态和报文的处理.
CAN传输层 CAN传输层
把接收到的报文提供给对象层, 把接收到的报文提供给对象层,以及接收来 自对象层的报文. 自对象层的报文.
10
10.1 CAN技术规范 CAN技术规范
10.1.4 位定时与同步
标称位时间 同步段 传播段 相位段 1 相位段 2 采样点
标称位时间的组成
嵌入式系统--使用HCS12微控制器的设计与应用
11
10.2 MSCAN12模块简介 MSCAN12模块简介
晶振时钟 总线时钟 MSCAN12 模块 CAN 时钟 时钟 选择 Tq 预 时钟 分频 CAN 接收 CAN 发送
嵌入式系统--使用HCS12微控制器的设计与应用
22
10.4 MSCAN12模块的自环通信实例 MSCAN12模块的自环通信实例 10.4.1 MSCAN12初始化 MSCAN12初始化
MSCAN12通信头文件(MSCAN12. MSCAN12通信头文件(MSCAN12.h)
(1)CAN通信寄存器及标志位定义 CAN通信寄存器及标志位定义 (2)CAN通信用到的设置量定义 CAN通信用到的设置量定义 (3)CAN通信相关函数声明 CAN通信相关函数声明 (4)CAN通信初始化 CAN通信初始化
6
10.1 CAN技术规范 CAN技术规范
10.1.3 报文传输和帧结构 数据帧
扩展格式 11 位标识符 帧起始 SRR IDE 仲裁场 18 位标识符 控制场 r1 r0 DLC RTR 数据场
数据帧扩展格式中的仲裁场结构 数据帧扩展格式中的仲裁场结构 扩展
嵌入式系统--使用HCS12微控制器的设计与应用
嵌入式系统--使用HCS12微控制器的设计与应用
23
10.4 MSCAN12模块的自环通信实例 MSCAN12模块的自环通信实例
10.4.1 MSCAN12初始化 MSCAN12初始化
MSCAN12通信函数文件(MSCAN12. MSCAN12通信函数文件(MSCAN12.c )
(1)CAN通信初始化 CAN通信初始化 void CANInit(void) (2)CAN发送1帧数据 CAN发送1 INT8U CANSND1DFRM(INT16U ID,INT8U * DataBUF, INT8U LEN) (3)查找空闲发送缓冲区 INT8U GetSNDBUF(void) (4)CAN接收1帧数据 CAN接收1 INT8U CANRCV1FRM(INT8U * CANRCVBUF)
收发器
CANH
120Ω
120Ω
CAN系统 系统
嵌入式系统--使用HCS12微控制器的设计与应用 14
10.2 MSCAN12模块简介 MSCAN12模块简介
10.2.3 报文存储结构
接收
报 文 缓 冲 区 组 织 图
--
HCS12
15
10.2 MSCAN12模块简介 MSCAN12模块简介
10.2.4 标识符验收滤波
10.4.1 MSCAN12自环通信方式测试工程 MSCAN12自环通信方式测试工程 1. 自环通信方式测试工程主函数文件main.c 自环通信方式测试工程主函数文件main.c
第7步:等待时间增加1.若等待时间到转第8步,否 则转第7步. 第8步:发送"Hello!!!",若发送成功转第9步,否则 转第10步. 第9步:CAN等待接收数据,若接收到则通过SCI向PC 发送数据,否则发送"ReceiveError! ".转第11步. 第10步:通过SCI向PC发送"SendError! " 第11步:等待时间清零,转第7步.
7
10.1 CAN技术规范 CAN技术规范
10.1.3 报文传输和帧结构 远程帧
帧间空间 仲裁场 帧起始 远程帧 控制场 CRC场 帧结束 应答场 帧间空间 或过载帧
远程帧的组成
嵌入式系统--使用HCS12微控制器的设计与应用
8
10.1 CAN技术规范 CAN技术规范
10.1.3 报文传输和帧结构 错误帧
嵌入式系统--使用HCS12微控制器的设计与应用 13
10.2 MSCAN12模块简介 MSCAN12模块简介
10.2.2 外部引脚
C AN 节 点 1 MCU CAN 控 制 器
( MSCAN12)
CAN 节 点 2
C AN 节 点 3
C A N TX C AN RX
CANH CANL CANL CANH CANL
相关文档
最新文档