CAN具有较高的效率是因为总线仅仅被那些请求总线悬而未决的站利用,这些请求是根据报文在整个系统中的重要性按顺序处理的。这种方法在网络负载较重时有很多优点,因为总线读取的优先级已被按顺序放在每个报文中了,这可以保证在实时系统中较低的个体隐伏时间。
对于主站的可靠性,由于CAN协议执行非集中化总线控制,所有主要通信,包括总线读取 (许可)控制,在系统中分几次完成。这是实现有较高可靠性的通信系统的独有方法。
CAN总线转换器中CAN的报文格式在总线中传送的报文,每帧由7部分组成。CAN协议支持两种报文格式,其独有的不同是标识符(ID)长度不同,标准格式为11位,扩展格式为29位。
在标准格式中,报文的起始位称为帧起始(SOF),然后是由11位标识符和远程发送请求位 (RTR)组成的仲裁场。RTR位标明是数据帧还是请求帧,在请求帧中没有数据字节。
控制场包括标识符扩展位(IDE),指出是标准格式还是扩展格式。它还包括一个保留位 (ro),为将来扩展使用。它的较后四个位用来指明数据场中数据的长度(DLC)。数据场范围为0~8个字节,其后有一个检测数据错误的循环冗余检查(CRC)。
应答场(ACK)包括应答位和应答分隔符。发送站发送的这两位均为隐性电平(逻辑1),这时正确接收报文的接收站发送主控电平(逻辑0)覆盖它。用这种方法,发送站可以保证网络中至少有一个站能正确接收到报文。
报文的尾部由帧结束标出。在相邻的两条报文间有一很短的间隔位,如果这时没有站进行总线存取,总线将处于空闲状态。
CAN总线转换器中can总线 rs232转换器使用前必须要滤波吗?如果你想正常的实现串口数据与CAN总线数据之间的转换,如果你不想在数据转换的时候发生丢帧现象,那滤波设置是必须的,滤的是CAN总线端的波。因为,相对而言,CAN总线的通讯速率远高于串口总线,如果我们不进行滤波,单位时间里大量的CAN端数据就没办法同时被转换成串口端的数据,比如说CAN端有10个数据,但同一时间串口端只能接收一个,那剩下的9个该怎么办呢?只能丢失掉了,这当然是我们不能接收的。
CAN总线转换器中can总线接头的连线方式是怎样的呢?CAN总线设备有很多种,比如USBCAN分析仪,比如说CAN数据转换器,等等等等。以上这些CAN设备在与CAN线进行连接的时候,往往会有如下方法:
1、如果CAN设备的CAN接头样式是OBD类型的,那我们直接将OBD接头插入OBD接口里就行。如果设备A的CAN接头是OBD类型,B设备不是,那我们就使用一个OBD转接头连在CAN接头是OBD的设备上,这样就可以进行后续的连线了。
2、如果CAN设备的CAN接头样式是DB9的,基本道理同OBD。
3、如果CAN设备的CAN接头样式是凤凰端子的,那使用一把螺丝刀松紧端子接头的挡板然后连线就可以了。