赞
踩
CAN是控制器局域网络(Controller Area Network, CAN)的简称,是国际上应用最广泛的现场总线之一。 在北美和西欧,CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,并且拥有以CAN为底层协议专为大型货车和重工机械车辆设计的J1939协议。
本例通过用MC9S12XS128MAA来实现CAN标准帧的接收。
以下为本例所用到的寄存器介绍(CAN初始化部分用到的寄存器此篇不再赘述,见“利用CAN进行简单的数据发送”)
CANRFLG寄存器
WUPIF (唤醒中断标志)= 1 时,MSCAN在CAN总线上检测到活动并请求唤醒
= 0 时,睡眠模式下未观察到唤醒活动
CSCIF(CAN状态改变中断标志) = 1 时, MSCAN更改了当前CAN总线状态
= 0 时,CAN总线状态未发生变化
RSTAT[1:0] (接收状态位)= 00 时,RxOK :0 ≤ 接收错误计数器 ≤ 96
= 01 时,RxWRN :96 < 接收错误计数器 ≤ 127
= 10 时,RxERR :127 < 接收错误计数器 ≤ 255
= 11 时,Bus-off : 传输错误计数器 > 255
TSTAT[1:0] (发送状态位) = 00 时,TxOK :0 ≤ 发送错误计数器 ≤ 96
= 01 时,TxWRN :96 < 发送错误计数器 ≤ 127
= 10 时,RxERR :127 < 发送错误计数器 ≤ 255
= 11
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。