CAN总线的收发问题

1.我想问下单片机控制的CAN总线,一般用一个CAN收发器芯片和一个CAN总线电平驱动芯片,CAN通信里有很多层帧,这些东西是要我们写入单片机软件里的,还是它已经做到收发器的硬件寄存器里了??
2.有的单片机内部就有CAN控制器,就不用外接的CAN收发芯片了吧?它是起什么作用的?是不是单片机软件里就不用写什么帧格式??

第1个回答  推荐于2016-01-29
1.CAN协议只有两层:物理层和数据链路层。CAN收发器(也就是协议控制器)的作用就是完成数据链路层组帧和生成物理层比特流,驱动器的作用是吧控制器输出的高低逻辑电平编程CAN总线的差分式电平。协议相关的内容基本都由协议控制器完成,单片机软件上只要配置需要的通信速率、帧ID以及发送的数据内容,然后告知收发器,让它发送就OK。不需要从软件上编写协议。
2.单片机内部的CAN控制器和外接CAN控制器功能相同,省去了再加外围硬件。单片机对帧格式不用特别关心,但是发送之前至少需要告诉协议控制器你所要发送的数据内容以及帧的ID。本回答被提问者采纳
相似回答