/*! \brief CAN Call Back when message is transmitted * */ void can_out_callback_channel1(U8 handle, U8 event) { gpio_tgl_gpio_pin(LED2_GPIO); // Transmission Only can_mob_free(1,handle); message_transmitted_on_channel1 = true; }
/*! \brief CAN Call Back when message is received */ void can_out_callback_channel0(U8 handle, U8 event) { gpio_tgl_gpio_pin(LED3_GPIO); // Reception Only pCANMOB_message2[0].can_msg->data.u64 = can_get_mob_data(0,handle).u64; pCANMOB_message2[0].can_msg->id = can_get_mob_id(0,handle); pCANMOB_message2[0].dlc = can_get_mob_dlc(0,handle); pCANMOB_message2[0].status = event; can_mob_free(0,handle); message_received_on_channel0 = true; }
//! Call Back called by can_drv void can_out_callback_channel0(U8 handle, U8 event) { /* Reception of Wakeup frame */ if (handle == NO_MOB) { /* Disable Wake-Up Mode */ CANIF_disable_wakeup(CAN_CHANNEL_EXAMPLE); /* Clear Interrupt Flag */ CANIF_clr_interrupt_status(CAN_CHANNEL_EXAMPLE); gpio_clr_gpio_pin(LED0_GPIO); } else { /* Reception of Data frame */ appli_rx_msg.can_msg->data.u64 = can_get_mob_data(CAN_CHANNEL_EXAMPLE,handle).u64; appli_rx_msg.can_msg->id = can_get_mob_id(CAN_CHANNEL_EXAMPLE,handle); appli_rx_msg.dlc = can_get_mob_dlc(CAN_CHANNEL_EXAMPLE,handle); appli_rx_msg.status = event; can_mob_free(CAN_CHANNEL_EXAMPLE,handle); nb_message_received_on_channel0 = 1; gpio_clr_gpio_pin(LED1_GPIO); } }