Estructura del telegrama LIN


Especificación de protocolo (marco de mensaje)

(1) El intervalo de bytes se encuentra entre cada byte;

(2) El intervalo de respuesta se encuentra entre el encabezado y la respuesta;

(3) Dejar suficiente tiempo de procesamiento para la MCU;

(4) La longitud del marco puede aumentar;

Un marco de mensaje de bus LIN completo "Message Frame" incluye el encabezado "Header" y la respuesta "Response". La tarea maestra es responsable de enviar el encabezado del marco; la tarea esclava recibe el encabezado del marco y analiza la información contenida en el encabezado del marco, y luego decide si enviar una respuesta, recibir una respuesta o no responder.
LIN1


1. Campo de bytes

1) formato de comunicación basado en SCI;

2) La longitud de cada campo de bytes está cronometrada por 10 bits de temporización (BIT TIME); ①El
campo de bytes
bit de inicio (BIT DE INICIO) es un bit "dominante", que marca el comienzo del byte;
②8 es el bit de datos, el bit más bajo se envía primero;
③El bit de parada (STOP BIST) es un bit "recesivo", que marca el final del campo de bytes.

2. Campo de encabezado

encabezamiento

Interrupción de sincronización

El segmento de intervalo de sincronización se compone de un intervalo de sincronización (Pausa) y un delimitador de segmento de intervalo de sincronización (Delimitador de pausa).

Función: Identificar el inicio del mensaje, enviado por el nodo maestro; hacer que todas las tareas del esclavo se sincronicen con la señal del reloj del bus.
La señal de intervalo consta de al menos 13 bits dominantes seguidos de un delimitador de intervalo de al menos 1 bit recesivo;
campo de intervalo

La función del delimitador de intervalo: se utiliza para detectar el bit de inicio del siguiente campo de sincronización (Synch Field).

Segmento de sincronización (SyncByte FIELD)

1) Asegúrese de que todos los nodos esclavos utilicen la misma velocidad en baudios que el nodo para enviar y recibir datos;

2) Un byte, estructura fija: 0X55;
campo síncrono

Campo de ID protegido (Campo de identificador protegido)

Los primeros 6 bits del segmento de ID protegido se denominan ID de marco (Frame ID), más dos bits de paridad se denominan ID protegido.
1) ID varía de 0 a 63 (0x3f);
2) Paridad (Paridad) P0, P1;
campo de identificador
ID4 e ID5 definen la longitud de datos del campo de datos.
Si es necesario (por ejemplo, compatible con la especificación LIN 1.1), los bits de identificación ID4 e ID5 pueden definir el número de campos de datos NDATA en el mensaje (consulte la tabla a continuación). Esto divide el conjunto de 64 identificadores en 4 subconjuntos de 16 identificadores con 2, 4 y 8 campos de datos respectivamente.

ID5 ID4 Número de campos de datos
0 0 2
0 1 2
1 0 4
1 1 8
【LIN2.0相对于LIN1.3最主要的差别】
1、支持最多8个字节的数据序列;
2、取消了受保护标识符中的数据长度字段,即传输长度不再受限于ID,并将最后一个字节视为校验和;
3、校验和的验算包括了受保护标识符。
4、支持自动波特率检测功能;
5、对偶发帧进行了定义;
6、网络管理的定时用秒来定义,而不是用比特数来定义;

②Bit de paridad P0 P1 (⊕Operación XOR)
Paridad

3. Campo de datos

1) La longitud del campo de datos es de 1 a 8 bytes;

2) El byte bajo se envía primero y el byte bajo se envía primero;

3) Si la longitud de una determinada señal supera 1 byte, se envía primero con el bit bajo (little endian);
campo de datos

4. Campo de suma de comprobación

Se utiliza para verificar si los datos recibidos son correctos

1) Classic Checksum solo verifica el campo de datos (LIN1.3)

2) Enhance Checksum (Enhance Checksum) verifique el campo del identificador y el contenido del campo de datos (LIN2.0, LIN2.1)

Antes de LIN2.0 LIN2.0 y posterior
marco de comunicación clásico Mejorado
marco de diagnóstico clásico clásico

Los marcos con identificadores 0x3C y 0x3D solo pueden usar la suma de verificación clásica

campo de suma de comprobación
Algoritmo (Clásico): Acumula todos los bytes. Para juzgar cada suma, si la suma es mayor que 0xFF, entonces sume el 1 de los ocho bits superiores a los ocho bits inferiores, lo que en realidad es sumar 1 a los ocho bits inferiores (invirtiendo la suma de ocho bits). Después de obtener el resultado final, tome su inversa y obtendremos la suma de verificación final.
Por ejemplo: utilizando la suma de comprobación estándar, Data1 = 0x4A, Data2 = 0x55, Data3 = 0x93, Data4 = 0xE5 Explique
controlar
la cifra anterior, 0x4A+0x55 = 0x9F es sin duda, más 0x93 = 0x132, obviamente, supera 0xFF, se descompone en 0x1 y 0x32, los 8 bits altos sobresalientes se eliminan y se suman a los 8 bajos. bits, 0x1+0x3 2=0x33. Agregue 0xE5 = 0x118, que está más allá, 0x1+0x18=0x19. Negar (No), 0xE6.

Supongo que te gusta

Origin blog.csdn.net/qq_41908302/article/details/130796111
Recomendado
Clasificación