协议背景
J1708是专门针对重型车辆(卡车和客车)开发的一种SAE规范。协议旨在推广用于带微控制器的模块之间通信的标准。标准规范以更经济的方式在设备之间进行数据传送。更多优点包括:
- 把硬件成本降到最小。
- 为现有系统的进一步扩展提供灵活性和可能性。
- 使用标准的工业电子产品,便于开发。
应用领域
因为J1708协议只描述OSI模型的底层部分,所以始终需要与一种上层应用协议一起使用。这种上层协议的一个例子是J1587(用于重型车辆中微控制器之间的数据交换)。
2025年11月11日 08:11:40 来源:广州智维电子科技有限公司 >> 进入该公司展台 阅读量:0
J1708是专门针对重型车辆(卡车和客车)开发的一种SAE规范。协议旨在推广用于带微控制器的模块之间通信的标准。标准规范以更经济的方式在设备之间进行数据传送。更多优点包括:
因为J1708协议只描述OSI模型的底层部分,所以始终需要与一种上层应用协议一起使用。这种上层协议的一个例子是J1587(用于重型车辆中微控制器之间的数据交换)。
协议既描述诸如应该如何解释总线上的电压电平的物理特性,也描述报文的组成。
J1708协议使用与RS-485相同的收发器。总线网络支持至少20个使用这些收发器的节点。J1708不使用RS-485所使用的总线端接电阻。
RS-485收发器(图片摘自J1708规范)
注意,这种收发器基本上与用于CAN总线的收发器相同。
J1708总线由两路线缆(A和B)组成,每英寸(2.54厘米)至少包含一个绞点(360°),总长度可达40米。总线上的电压水平由线路“A”和“B”之间的电势差确定。当A点高出B点至少200 mV时,达到逻辑高电平(1)。逻辑低电平(0)表示A点至少低于B点200 mV(参见下图)。收发器的供电电压应在+6V到-6V(相对于同一地线,适用于所有设备)。
逻辑总线电平的确定
如果所有发送节点都已不活动或者当所有发送节点在发送逻辑高位 (1)时,总线处于空闲模式则处于逻辑高电平。如要将总线置于逻辑低电平状态,只需有一个发送节点发送一个逻辑低位0,这使得逻辑低位变成显性。
J1708网络使用一种可以“随机”访问总线的总线技术。随机访问表示任何节点都可以在需要的时候进行传送,除非总线尚未进入忙碌状态。总线必须已经处于空闲模式(逻辑高电平)至少一次总线访问时间后,节点才可以访问它。
时间计数基于位时间。如果速度是9600 bps,时间计数大约是104.2微秒。每条报文都有一个1和8之间的优先级,其中1的优先级。一次总线访问时间是最短空闲时间(至少10比特时间)加上报文优先级的两倍。
如果两条报文恰好同时发送,那么总线上发生冲突。发生这种情况时,两个发送节点都必须放弃对总线的控制,也就是说,取消激活它们的发送器。然后,两个节点都必须在等待一个总线访问时间后才能重新开始发送。结果是,具有优先级的节点将首先获得对总线的访问权并开始传送其报文。
报文面向字节,也就是由许多字节组成。每个字节由一个起始位、八个数据位和一个停止位组成。起始位具有逻辑低电平,停止位是一个逻辑高电平。八个数据位首先以有效位发送。
这遵循标准串行UART(通用异步收发传输器)通信。
报文由一个MID(报文标识符)、数据字节和最后面的1字节长检验和组成。J1708规范中没有描述数据部分的内容,而是在高层协议(例如J1587)中进行描述。报文前面必须始终有一个空闲时间,这个时间至少是最短的总线访问时间。报文中两个字节之间的时间不允许超过两个位时间。
J1708报文
每条报文的个字节必须始终是一个MID。MID的有效值为0-255。
J1708标准列出所有MID及其使用范围。
报文中的字节。一种决定报文是否已经正确传送的简单方法是把检验和加上所有数据字节的8位总和,再加上接收到的报文的MID。如果报文得以正确传送,那么8位总和应当是零(0)。
举例如下(使用上图中的示例报文),