Пример #1
0
/*! \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;
}
Пример #2
0
/*! \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;
}
Пример #3
0
//! 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);
	}
}