113 #if ((SUPPORT_SLAVE_MODE == 1U) && (SUPPORT_PROTOCOL_21 == 1U))
114 l_u8 volatile associate_frame;
123 lin_frame_ptr = &(prot_user_config_ptr->
frame_tbl_ptr[frame_index]);
124 if (0xFFU != frame_index)
140 #if (SUPPORT_PROTOCOL_21 == 1U)
148 #if (SUPPORT_SLAVE_MODE == 1U)
152 associate_frame = (
l_u8)(*((lin_frame_ptr->
frame_data_ptr)->associated_uncond_frame_ptr));
156 for (i = 0U; i < flag_size; i++)
233 l_u8 frame_index, flag_offset, flag_size, i, associate_id;
236 #if (SUPPORT_MASTER_MODE == 1U)
254 if (0xFFU != frame_index)
300 for (i = 0U; i < flag_size; i++)
306 #if (SUPPORT_MASTER_MODE == 1U)
315 #if (SUPPORT_SLAVE_MODE == 1U)
348 #if (SUPPORT_MASTER_MODE == 1U)
351 #if ((SUPPORT_PROTOCOL_J2602 == 1U) && (SUPPORT_SLAVE_MODE == 1U))
353 l_u8* bit_offset_temp_ptr;
354 l_u8* byte_offset_temp_ptr;
377 #if (SUPPORT_MASTER_MODE == 1U)
403 #if (SUPPORT_SLAVE_MODE == 1U)
407 #if (SUPPORT_PROTOCOL_21 == 1U)
415 #if (SUPPORT_PROTOCOL_J2602 == 1U)
451 #if ((SUPPORT_PROTOCOL_21 == 1U) || (SUPPORT_SLAVE_MODE == 1U))
456 #if ((SUPPORT_MASTER_MODE == 1U) && (SUPPORT_PROTOCOL_21 == 1U))
460 #if (SUPPORT_PROTOCOL_21 == 1U)
487 #if (SUPPORT_PROTOCOL_21 == 1U)
493 #if (SUPPORT_MASTER_MODE == 1U)
507 if ((0x3CU ==
id) || (0x3DU ==
id))
519 #if (SUPPORT_SLAVE_MODE == 1U)
523 #if (SUPPORT_PROTOCOL_21 == 1U)
533 #if (SUPPORT_PROTOCOL_J2602 == 1U)
554 #if (SUPPORT_SLAVE_MODE == 1U)
559 #if (SUPPORT_PROTOCOL_21 == 1U)
566 #if (SUPPORT_PROTOCOL_J2602 == 1U)
581 #if (SUPPORT_MASTER_MODE == 1U)
592 l_u8 * active_schedule_id;
593 const l_u8 * previous_schedule_id;
606 *active_schedule_id = *previous_schedule_id;
645 l_u8 flag_offset = 0U;
649 l_u8 associate_frame_offset = 0U;
661 for (i = 0U; i < flag_size; i++)
695 l_u8 associate_frame_offset;
698 lin_frame_ptr = &(prot_user_config_ptr->
frame_tbl_ptr[frm_id]);
705 for (i = 0U; i < flag_size; i++)
715 associate_frame_offset = (
l_u8)(*((lin_frame_ptr->
frame_data_ptr)->associated_uncond_frame_ptr));
719 for (i = 0U; i < flag_size; i++)
767 l_u8 * response_buffer_ptr;
768 l_u16 frame_byte_offset;
773 #if (SUPPORT_SLAVE_MODE == 1U)
776 #if (SUPPORT_MASTER_MODE == 1U)
781 if (0xFFU != frame_index)
792 #if (SUPPORT_SLAVE_MODE == 1U)
816 #if (SUPPORT_MASTER_MODE == 1U)
836 #if (SUPPORT_MASTER_MODE == 1U)
841 master_data_ptr->
frm_offset = frame_byte_offset;
#define UPDATE_UNCONDITIONAL_FRAME
l_u8 * list_identifiers_RAM_ptr
lin_sch_tbl_type_t sch_tbl_type
static void lin_bus_activity_timeout(l_ifc_handle iii)
l_ifc_master_handle master_ifc_handle
l_u8 lin_process_parity(l_u8 pid, l_u8 typeAction)
Makes or checks parity bits. If action is checking parity, the function returns ID value if parity bi...
void lin_make_res_evnt_frame(l_ifc_handle iii, l_u8 pid)
This function packs signals associated with event trigger frame into buffer.
lin_protocol_state_t g_lin_protocol_state_array[LIN_NUM_OF_IFCS]
l_ifc_slave_handle slave_ifc_handle
lin_master_data_t g_lin_master_data_array[LIN_NUM_OF_MASTER_IFCS]
#define LIN_TL_CALLBACK_HANDLER(iii, tl_event_id, id)
void lin_update_word_status_lin21(l_ifc_handle iii, lin_lld_event_id_t event_id)
Update node status flags.
#define LIN_SLAVE
Mode of LIN node (master or slave)
void lin_update_err_signal(l_ifc_handle iii, l_u8 frm_id)
Update error signal.
l_diagnostic_mode_t diagnostic_mode
LIN master configuration structure Implements : lin_master_data_t_Class.
const lin_node_attribute_t g_lin_node_attribute_array[LIN_NUM_OF_SLAVE_IFCS]
l_u8 previous_schedule_id
const lin_frame_t * frame_tbl_ptr
l_u8 g_lin_frame_data_buffer[LIN_FRAME_BUF_SIZE]
const lin_associate_frame_t * frame_data_ptr
l_u8 lin_lld_set_response(l_ifc_handle iii, l_u8 response_length)
This function sends frame data that is contained in LIN_lld_response_buffer[iii]. ...
void lin_update_status_byte(l_ifc_handle iii, lin_lld_event_id_t event_id)
The function is to perform the update of error signal in J2602 system.
void lin_switch_sch_table(l_ifc_handle iii)
l_u8 lin_lld_set_low_power_mode(l_ifc_handle iii)
Let the low level driver go to low power mode.
l_u8 num_frame_have_esignal
static void lin_handle_error(l_ifc_handle iii, lin_lld_event_id_t event_id, l_u8 id)
l_u8 * resp_err_frm_id_ptr
Configuration structure Implements : lin_protocol_user_config_t_Class.
l_bool event_trigger_collision_flg
l_u8 g_lin_flag_handle_tbl[LIN_FLAG_BUF_SIZE]
static void lin_update_rx(l_ifc_handle iii, l_u8 id)
lin_frame_type_t frm_type
l_u8 * response_buffer_ptr
l_u8 * response_error_bit_offset_ptr
void lin_update_word_status_j2602(l_ifc_handle iii)
Update date word status.
void lin_pid_resp_callback_handler(l_ifc_handle iii, const lin_lld_event_id_t event_id, l_u8 id)
Callback handler for low level events.
#define MAKE_UNCONDITIONAL_FRAME
l_u8 lin_check_sporadic_update(l_ifc_handle iii, l_u8 frm_id)
LIN protocol status structure Implements : lin_protocol_state_t_Class.
static void lin_update_tx(l_ifc_handle iii, l_u8 id)
static void lin_process_id(l_ifc_handle iii, l_u8 id)
static void lin_update_tx_flags(l_ifc_handle iii, l_u8 frm_id)
l_u8 num_of_processed_frame
l_u8 * response_error_byte_offset_ptr
l_u8 num_of_associated_uncond_frames
const lin_protocol_user_config_t g_lin_protocol_user_cfg_array[LIN_NUM_OF_IFCS]
Informations of associated frame Implements : lin_associate_frame_t_Class.
l_u8 lin_get_frame_index(l_ifc_handle iii, l_u8 id)
unsigned char l_u8
Unsigned 8 bit integer Implements : l_u8_Class.
const lin_schedule_t * schedule_tbl
lin_protocol_handle_t protocol_version
Attributes of LIN node Implements : lin_node_attribute_t_Class.
lin_frame_response_t frm_response
l_u8 lin_lld_ignore_response(l_ifc_handle iii)
This function terminates an on-going data transmission/reception.
const l_frame_handle * associated_uncond_frame_ptr
l_u8 number_of_configurable_frames
l_bool g_lin_frame_flag_handle_tbl[LIN_NUM_OF_FRMS]
l_u8 lin_lld_rx_response(l_ifc_handle iii, l_u8 response_length)
This function receives frame data into the LIN_lld_response_buffer[iii] buffer.
l_u8 master_data_buffer[8]
void lin_update_rx_evnt_frame(l_ifc_handle iii, l_u8 pid)
The function updates the receive flags associated with signals/frames in case receive an event trigge...
lin_lld_event_id_t
Event id Implements : lin_lld_event_id_t_Class.
Frame description structure Implements : lin_frame_t_Class.
void lin_process_uncd_frame(l_ifc_handle iii, l_u8 id, l_u8 type)
l_u8 * schedule_start_entry_ptr
unsigned short int l_u16
Unsigned 16 bit integer Implements : l_u16_Class.
l_bool transmit_error_resp_sig_flg