Microchip® Advanced Software Framework

st_lin_message Struct Reference

This structure allows to handle a LIN message and, at the end of the received/transmitted message, allows to call a function associated to this message, the update or the capture of "signals".

#include <lin.h>

Data Fields

enum_lin_cmd lin_cmd
 Select an action for a specific message. More...
 
void(* pt_function )(uint8_t *)
 Pointer on the function which handles the data. More...
 
uint8_t uc_dlc
 Length of the LIN message, it is the number of data bytes of the LIN response. More...
 
uint8_t uc_id
 LIN message ID (in case of LIN 1.3 - without lenght) More...
 
uint8_t * uc_pt_data
 Pointer on the data buffer, the data buffer where the bytes of the LIN response are stored. More...
 
uint8_t uc_status
 Status of the last communication: More...
 

enum_lin_cmd st_lin_message::lin_cmd

Select an action for a specific message.

Referenced by lin_register_descriptor(), main(), and run_lin_test().

void(* st_lin_message::pt_function)(uint8_t *)

Pointer on the function which handles the data.

This has as parameter 'uc_pt_data'. This function could update the received 'signals' and could capture and store signals for the next transmission.

Referenced by lin_register_descriptor(), main(), and usart_lin_handler().

uint8_t st_lin_message::uc_dlc

Length of the LIN message, it is the number of data bytes of the LIN response.

Referenced by lin_register_descriptor(), main(), and run_lin_test().

uint8_t st_lin_message::uc_id

LIN message ID (in case of LIN 1.3 - without lenght)

Referenced by lin_register_descriptor(), lin_tx_header_and_response(), main(), and run_lin_test().

uint8_t* st_lin_message::uc_pt_data

Pointer on the data buffer, the data buffer where the bytes of the LIN response are stored.

Referenced by lin_register_descriptor(), main(), and run_lin_test().

uint8_t st_lin_message::uc_status

Status of the last communication:

  • == 0x00: RXOK or TXOK
  • != 0x00: LINERR, content of LIN Error Register 'LINERR'

Referenced by lin_register_descriptor(), main(), run_lin_test(), and usart_lin_handler().