新手不太懂CAN通信帧和标识符ID的位大小关系

2019-07-21 00:13发布

标识符ID是包含在帧里面的,标准标识符是11位,扩展是增加18位,而筛选器可以选择16位和32位模式,这两者有什么联系呢?在例程里TxMessage.StdId=0x12;        是这样一句语句,标准标识符0x12是8位呀,这是为什么?               
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
35条回答
jxhzht1990
1楼-- · 2019-07-21 02:40
标准帧是11位,111 1111 1111满了的话是0x7FF,所以用16为筛选器。
扩展帧是29位,您这个18位是不对的,还需要加上原来的11位,详见原子哥的开发指南。这样满了的话是 1 1111 1111 1111 1111 1111 1111 1111,也就是0x1FFF FFFF,所以需要用32位。不知道这样说您是否明白
新手求罩F103
2楼-- · 2019-07-21 07:42
jxhzht1990 发表于 2016-9-23 18:18
标准帧是11位,111 1111 1111满了的话是0x7FF,所以用16为筛选器。
扩展帧是29位,您这个18位是不对的,还 ...

谢谢您啦,明白了
rindy
3楼-- · 2019-07-21 08:27
 精彩回答 2  元偷偷看……
贝壳gg
4楼-- · 2019-07-21 12:33
rindy 发表于 2016-10-20 20:50
希望这份资料对你有帮助

感谢大佬,看了理解的更深刻了
贝壳gg
5楼-- · 2019-07-21 14:41
rindy 发表于 2016-10-20 20:50
希望这份资料对你有帮助

楼主有没有多个CAN通信的代码啊?能否借鉴学习下?
贝壳gg
6楼-- · 2019-07-21 20:15
 精彩回答 2  元偷偷看……

一周热门 更多>