CAN控制器和CAN收发器区别

CAN控制器用于实现CAN总线的协议底层以及数据链路层,用于生成CAN帧并以二进制码流的方式发送,在此过程中进行位填充、添加CRC校验、应答检测等操作;将接收到的二进制码流进行解析并接收,在此过程中进行收发比对、去位填充、执行CRC校验等操作。此外还需要进行冲突判断、错误处理等诸多任务。

CAN收发器(有时也称为驱动器)是CAN总线的物理层,用于将二进制码流转换为差分信号发送,将差分信号转换为二进制码流接收。

在CAN总线中二者都是必须的。

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

posted @ 2020-09-09 15:16  海大富_上海  阅读(2850)  评论(0编辑  收藏  举报