Microchip® Advanced Software Framework

lin_task.c File Reference

Application Lin Task Management.

Copyright (c) 2014-2018 Microchip Technology Inc. and its subsidiaries.

#include <avr32/io.h>
#include "compiler.h"
#include "board.h"
#include "power_clocks_lib.h"
#include "gpio.h"
#include "tc.h"
#include "intc.h"
#include "usart.h"
#include "can.h"
#include "lin.h"
#include "dsp.h"
#include "lin_task.h"
#include "conf_demo.h"

Functions

void lin_master_cb_task_ID12 (U8 *d_buf)
 Lin Callback when message is transmitted. More...
 
void lin_master_task_ID12 (void)
 Lin Command When Id is transmitted. More...
 
void lin_slave_task_ID12 (U8 *d_buf)
 Lin Callback when message is received. More...
 
void lin_task ()
 LIN Task. More...
 
void lin_task_init (void)
 LIN Task Init. More...
 
void lin_task_restart ()
 LIN Task Restart. More...
 
void lin_task_stop ()
 LIN Task Stop. More...
 
void start_scheduler (void)
 Start LIN scheduler for periodic transmission of LIN message. More...
 
static void tc_irq (void)
 TC interrupt. More...
 

Variables

volatile U8 lin_data_in_node1 [8]
 
uint8_t lin_data_out_node0 [8]
 
can_mob_t pCANMOB_message2 [1]
 
A_ALIGNED dsp16_t signal2_buf [BUFFER_LENGTH]
 
volatile uint8_t task_id = 0
 
volatile avr32_tc_t * tc = TC_INSTANCE
 
volatile avr32_usart_t * usart_lin_node1
 

void lin_master_cb_task_ID12 ( U8 d_buf)

Lin Callback when message is transmitted.

References can_mob_t::can_msg, can_msg_t::data, gpio_tgl_gpio_pin(), and Union64::u8.

Referenced by lin_task_init().

void lin_master_task_ID12 ( void  )

Lin Command When Id is transmitted.

lin_master_task_ID12

References lin_descript_list_node0, and lin_send_cmd().

Referenced by tc_irq().

void lin_slave_task_ID12 ( U8 d_buf)

Lin Callback when message is received.

lin_slave_task_ID12

References gpio_tgl_gpio_pin().

Referenced by lin_task_init(), and main().

void lin_task ( void  )

LIN Task.

  • Update LIN Message content (message to be sent)

References BUFFER_LENGTH, i, and signal2_buf.

Referenced by main().

void lin_task_restart ( void  )

LIN Task Restart.

References Disable_global_interrupt, Enable_global_interrupt, and lin_init().

void lin_task_stop ( void  )

LIN Task Stop.

static void tc_irq ( void  )
static

TC interrupt.

References lin_master_task_ID12(), TC_CHANNEL, TC_INSTANCE, and tc_read_sr().

Referenced by start_scheduler().

volatile U8 lin_data_in_node1[8]

Referenced by lin_task_init().

uint8_t lin_data_out_node0[8]

Referenced by lin_task_init(), and main().

Referenced by gui_task(), and lin_task().

volatile uint8_t task_id = 0

Referenced by tc_irq().

volatile avr32_tc_t* tc = TC_INSTANCE
volatile avr32_usart_t* usart_lin_node1