LIN Middleware
Signal Interaction

General Description

Functions

l_bool l_bool_rd (l_signal_handle sss, const mtb_stc_lin_context_t *context)
 Reads and returns the current value of the signal for one-bit signals. More...
 
void l_bool_wr (l_signal_handle sss, l_bool v, const mtb_stc_lin_context_t *context)
 Sets the current value of the signal for one-bit signals to "v". More...
 
l_u8 l_u8_rd (l_signal_handle sss, const mtb_stc_lin_context_t *context)
 Reads and returns the current value of the signal for 2-8-bit size signals. More...
 
void l_u8_wr (l_signal_handle sss, l_u8 v, const mtb_stc_lin_context_t *context)
 Sets the current value of the signal for 2-8-bit size signals to v. More...
 
l_u16 l_u16_rd (l_signal_handle sss, const mtb_stc_lin_context_t *context)
 Reads and returns the current value of the signal for 9-16-bit size signals. More...
 
void l_u16_wr (l_signal_handle sss, l_u16 v, const mtb_stc_lin_context_t *context)
 Writes the value v to the signal. More...
 
void l_bytes_rd (l_signal_handle sss, l_u8 start_byte, l_u8 count, l_u8 *pData, const mtb_stc_lin_context_t *context)
 Reads and returns the current values of the selected bytes in the signal. More...
 
void l_bytes_wr (l_signal_handle sss, l_u8 start_byte, l_u8 count, const l_u8 *const pData, const mtb_stc_lin_context_t *context)
 Writes the current value of the selected bytes to the signal specified by the name "sss". More...
 

Function Documentation

◆ l_bool_rd()

l_bool l_bool_rd ( l_signal_handle  sss,
const mtb_stc_lin_context_t context 
)

Reads and returns the current value of the signal for one-bit signals.

If an invalid signal handle is passed into the function, does nothing.

Parameters
sssThe signal handle of the signal to read. See l_signal_handle.
contextThe pointer to the context structure mtb_stc_lin_context_t allocated by the user. This structure is used during LIN Slave operation for internal configuration and data retention. The user must not modify anything in this structure.
Returns
Returns the current value of a signal. Returns a non-zero value for an unknown signal.

◆ l_bool_wr()

void l_bool_wr ( l_signal_handle  sss,
l_bool  v,
const mtb_stc_lin_context_t context 
)

Sets the current value of the signal for one-bit signals to "v".

If an invalid signal handle is passed into the function, does nothing

Parameters
sssThe signal handle of the signal to write. See l_signal_handle.
vThe value of the signal to be set.
contextThe pointer to the context structure mtb_stc_lin_context_t allocated by the user. This structure is used during LIN Slave operation for internal configuration and data retention. The user must not modify anything in this structure.

◆ l_u8_rd()

l_u8 l_u8_rd ( l_signal_handle  sss,
const mtb_stc_lin_context_t context 
)

Reads and returns the current value of the signal for 2-8-bit size signals.

If an invalid signal handle is passed into the function, does nothing.

Parameters
sssThe signal handle of the signal to read. See l_signal_handle.
contextThe pointer to the context structure mtb_stc_lin_context_t allocated by the user. This structure is used during LIN Slave operation for internal configuration and data retention. The user must not modify anything in this structure.
Returns
Returns current value of the signal.

◆ l_u8_wr()

void l_u8_wr ( l_signal_handle  sss,
l_u8  v,
const mtb_stc_lin_context_t context 
)

Sets the current value of the signal for 2-8-bit size signals to v.

Parameters
sssThe signal handle of the signal to write. See l_signal_handle.
vThe value of the signal to be set.
contextThe pointer to the context structure mtb_stc_lin_context_t allocated by the user. This structure is used during LIN Slave operation for internal configuration and data retention. The user must not modify anything in this structure.

◆ l_u16_rd()

l_u16 l_u16_rd ( l_signal_handle  sss,
const mtb_stc_lin_context_t context 
)

Reads and returns the current value of the signal for 9-16-bit size signals.

If an invalid signal handle is passed into the function, does nothing.

Parameters
sssThe signal handle of the signal to read. See l_signal_handle.
contextThe pointer to the context structure mtb_stc_lin_context_t allocated by the user. This structure is used during LIN Slave operation for internal configuration and data retention. The user must not modify anything in this structure.
Returns
Returns the current value of the signal.

◆ l_u16_wr()

void l_u16_wr ( l_signal_handle  sss,
l_u16  v,
const mtb_stc_lin_context_t context 
)

Writes the value v to the signal.

If an invalid signal handle is passed into the function, does nothing.

Parameters
sssThe signal handle of the signal to write. See l_signal_handle.
vThe value of the signal to be set.
contextThe pointer to the context structure mtb_stc_lin_context_t allocated by the user. This structure is used during LIN Slave operation for internal configuration and data retention. The user must not modify anything in this structure.

◆ l_bytes_rd()

void l_bytes_rd ( l_signal_handle  sss,
l_u8  start_byte,
l_u8  count,
l_u8 pData,
const mtb_stc_lin_context_t context 
)

Reads and returns the current values of the selected bytes in the signal.

The sum of the "start" and "count" parameters must never be greater than the length of the byte array. Note that when the sum of "start" and "count" is greater than the length of the signal byte array then an accidental data is read.

If an invalid signal handle is passed into the function, no action is done. Assume that a byte array is 8 bytes long, numbered 0 to 7. Reading bytes from 2 to 6 from user selected array requires start to be 2 (skipping byte 0 and 1) and count to be 5. In this case byte 2 is written to user_selected_array[0] and all consecutive bytes are written into user_selected_array in ascending order.

Parameters
sssThe signal handle of the signal to read. See l_signal_handle.
start_byteThe first byte to read from.
countThe number of bytes to read.
pDataThe pointer to the array, in which the data read from the signal is stored.
contextThe pointer to the context structure mtb_stc_lin_context_t allocated by the user. This structure is used during LIN Slave operation for internal configuration and data retention. The user must not modify anything in this structure.

◆ l_bytes_wr()

void l_bytes_wr ( l_signal_handle  sss,
l_u8  start_byte,
l_u8  count,
const l_u8 *const  pData,
const mtb_stc_lin_context_t context 
)

Writes the current value of the selected bytes to the signal specified by the name "sss".

The sum of "start" and "count" must never be greater than the length of the byte array, although the device driver may choose not to enforce this in runtime. Note that when the sum of "start" and "count" is greater than the length of the signal byte array then an accidental memory area is to be affected.

If an invalid signal handle is passed into the function, no action is done. Assume that a byte array signal is 8 bytes long, numbered 0 to 7. Writing byte 3 and 4 of this array requires "start" to be 3 (skipping byte 0, 1 and 2) and "count" to be 2. In this case byte 3 of the byte array signal is written from user_selected_array[0] and byte 4 is written from user_selected_array[1].

Parameters
sssThe signal handle of the signal to write. See l_signal_handle.
start_byteThe first byte to write to.
countThe number of bytes to write.
pDataThe pointer to the array, in which the data to transmit to LIN master is located.
contextThe pointer to the context structure mtb_stc_lin_context_t allocated by the user. This structure is used during LIN Slave operation for internal configuration and data retention. The user must not modify anything in this structure.