can主要用于汽车、航空等控制行业,是一种串行异步通信方式,因为其相较于其他通信方式抗干扰能力更强,更加稳定。原因在于CAN不像其他通信方式那样,以高电平代表1,以低电平代表0,而是通过电压差来表示逻辑10。这样当干扰到来时,电压差是固定的,所以通信距离在1000米左右。
其通信线路为两根,当两根线的电压差小于0.5V时,逻辑为1,当电压差大于0.9V时,为逻辑0。当多个节点同时发送数据时,CAN总线采用非破坏性位仲裁机制,通过比较报文的标识符来确定哪个节点获得总线的发送权。标识符越小,优先级越高。
一帧数据包括如下所示的数据:后七位为结束位,另外两位为ACK信号

//图来自@爱上半导体







![c++ map operator[] 陷阱](https://i-blog.csdnimg.cn/direct/e918d907265c4f92b3b2dbcdd8a2b6bb.png)









![金蝶云星空与金蝶云星空对接集成付款单查询打通[标准][付款单新增]-v1](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=https%3A%2F%2Fqeasy-1305182502.cos.ap-guangzhou.myqcloud.com%2Far%2Fp7-1.png&pos_id=KSrEfnEL)
