1. 概述
控制器区域**(Controller Area Network,CAN)是一种高度可靠、实时性强的串行通信协议和总线系统,最初为汽车电子应用而设计,但已广泛应用于多个领域。CAN 通信采用点对点或总线拓扑结构,支持多种通信速率,使用帧格式传输数据。其强大的错误检测和冲突处理机制使其在恶劣环境下依然可靠。多级优先级机制确保实时通信需求得以满足。CAN 通信在汽车、工业控制、医疗设备和航空航天等领域得到广泛应用,为嵌入式系统提供了可靠的通信基础。
2.硬件连接
如下所示为板子的外设接口示意图,引出了RS232引脚,通过USB转CAN与电脑连接。
电路硬件设计,对应引脚编号96,97,电路设计如下所示:
使用SSH连接至开发板,使用ifconfig–a 查看can网卡是否存在,如下所示,说明FDcan驱动工作正常。
实物连接使用过usb转can工具与开发板对应连接,上位机使用canpro进行数据收发测试。
3.通信测试
通过SSH连接或者串口终端连接至开发板,配置并启动can,本次只进行CAN的测试。 配置can的通讯速率为500k如下所示:
打开canpro上位机,配置通讯速率也为500k,通过开发板上次数据给上位机。
上位机接受数据,如下所示,与开发板终端上传的一致:
|