sinc_mark 发表于 2012-2-7 12:25:08

关于CAN协议的请教问题

最近零星看了一些关于CAN协议的说明性文档,对于CAN通讯有了一些概念,但还是有很多不明白的地方,例如:
关于通讯时不同CAN器件拥有不同的标识符,这些标识符是怎么定义的,是通过外部电路来定义的吗?SOF是什么样的信号来,EOF呢?如何能做到所有CAN器件的同步的?
请知道的大虾告知,或者给些资料我吧,谢谢!

hao8703 发表于 2012-3-7 18:32:09

回复【楼主位】sinc_mark
-----------------------------------------------------------------------


SOF是帧的起始,只是用于同步而已,也是高低电平,因为CAN中0是显性位,而1是隐性位,节点给的是0的时候,就说明节点有数据传输过来了。
我只能解答这么多,我现在还在研究中

avrstm32 发表于 2012-3-7 18:37:26

标识符全靠自己去定义。作为一个应用者,根本不用去考虑SOF,EOF等。。。。。

jude90 发表于 2012-4-9 14:48:28

标识符是在设置CAN控制器的时候写到一个寄存器里面的。同菜鸟,拿分走人~

star_tale 发表于 2014-8-15 11:55:09

sof,eof属于硬件层,can控制器会自行输出

steaven2000 发表于 2014-8-15 12:42:27

你会用RS232不?你用RS232通信时有用过某些标准协议如MODBUS或者自定义协议通信没?
如果有,OK,那CAN是类似的,使用RS232时不必关注起始位停止位,CAN也一样无需关注哪些SOF啥的,你唯一需求做的就是发和收,至于这些数据的意义,完全取决于协议的定义了。
正如给你面粉,你可以做包.Zi.馒头,也可以做烧饼,CAN的数据即这些面粉。
页: [1]
查看完整版本: 关于CAN协议的请教问题