Microchip® Advanced Software Framework

tc.c File Reference

AVR XMEGA TC Driver.

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

#include <stdint.h>
#include "interrupt.h"
#include "compiler.h"
#include "parts.h"
#include "tc.h"
#include "sysclk.h"
#include "sleepmgr.h"
#include "status_codes.h"

Functions

 ISR (TCC0_OVF_vect)
 Interrupt handler for Timer Counter C0 overflow. More...
 
 ISR (TCC0_ERR_vect)
 Interrupt handler for Timer Counter C0 error. More...
 
 ISR (TCC0_CCA_vect)
 Interrupt handler for Timer Counter C0 Compare/CaptureA. More...
 
 ISR (TCC0_CCB_vect)
 Interrupt handler for Timer Counter C0 Compare/CaptureB. More...
 
 ISR (TCC0_CCC_vect)
 Interrupt handler for Timer Counter C0 Compare/CaptureC. More...
 
 ISR (TCC0_CCD_vect)
 Interrupt handler for Timer Counter C0 Compare/CaptureD. More...
 
 ISR (TCC1_OVF_vect)
 Interrupt handler for Timer Counter C1 overflow. More...
 
 ISR (TCC1_ERR_vect)
 Interrupt handler for Timer Counter C1 error. More...
 
 ISR (TCC1_CCA_vect)
 Interrupt handler for Timer Counter C1 Compare/CaptureA. More...
 
 ISR (TCC1_CCB_vect)
 Interrupt handler for Timer Counter C1 Compare/CaptureB. More...
 
 ISR (TCD0_OVF_vect)
 Interrupt handler for Timer Counter D0 overflow. More...
 
 ISR (TCD0_ERR_vect)
 Interrupt handler for Timer Counter D0 error. More...
 
 ISR (TCD0_CCA_vect)
 Interrupt handler for Timer Counter D0 Compare/CaptureA. More...
 
 ISR (TCD0_CCB_vect)
 Interrupt handler for Timer Counter D0 Compare/CaptureB. More...
 
 ISR (TCD0_CCC_vect)
 Interrupt handler for Timer Counter D0 Compare/CaptureC. More...
 
 ISR (TCD0_CCD_vect)
 Interrupt handler for Timer Counter D0 Compare/CaptureD. More...
 
 ISR (TCD1_OVF_vect)
 Interrupt handler for Timer Counter D1 overflow. More...
 
 ISR (TCD1_ERR_vect)
 Interrupt handler for Timer Counter D1 error. More...
 
 ISR (TCD1_CCA_vect)
 Interrupt handler for Timer Counter D1 Compare/CaptureA. More...
 
 ISR (TCD1_CCB_vect)
 Interrupt handler for Timer Counter D1 Compare/CaptureB. More...
 
 ISR (TCE0_OVF_vect)
 Interrupt handler for Timer Counter E0 overflow. More...
 
 ISR (TCE0_ERR_vect)
 Interrupt handler for Timer Counter E0 error. More...
 
 ISR (TCE0_CCA_vect)
 Interrupt handler for Timer Counter E0 Compare/CaptureA. More...
 
 ISR (TCE0_CCB_vect)
 Interrupt handler for Timer Counter E0 Compare/CaptureB. More...
 
 ISR (TCE0_CCC_vect)
 Interrupt handler for Timer Counter E0 Compare/CaptureC. More...
 
 ISR (TCE0_CCD_vect)
 Interrupt handler for Timer Counter E0 Compare/CaptureD. More...
 
 ISR (TCE1_OVF_vect)
 Interrupt handler for Timer Counter E1 overflow. More...
 
 ISR (TCE1_ERR_vect)
 Interrupt handler for Timer Counter E1 error. More...
 
 ISR (TCE1_CCA_vect)
 Interrupt handler for Timer Counter E1 Compare/CaptureA. More...
 
 ISR (TCE1_CCB_vect)
 Interrupt handler for Timer Counter E1 Compare/CaptureB. More...
 
 ISR (TCF0_OVF_vect)
 Interrupt handler for Timer Counter E0 overflow. More...
 
 ISR (TCF0_ERR_vect)
 Interrupt handler for Timer Counter F0 error. More...
 
 ISR (TCF0_CCA_vect)
 Interrupt handler for Timer Counter F0 Compare/CaptureA. More...
 
 ISR (TCF0_CCB_vect)
 Interrupt handler for Timer Counter F0 Compare/CaptureB. More...
 
 ISR (TCF0_CCC_vect)
 Interrupt handler for Timer Counter F0 Compare/CaptureC. More...
 
 ISR (TCF0_CCD_vect)
 Interrupt handler for Timer Counter F0 Compare/CaptureD. More...
 
 ISR (TCF1_OVF_vect)
 Interrupt handler for Timer Counter F1 overflow. More...
 
 ISR (TCF1_ERR_vect)
 Interrupt handler for Timer Counter F1 error. More...
 
 ISR (TCF1_CCA_vect)
 Interrupt handler for Timer Counter F1 Compare/CaptureA. More...
 
 ISR (TCF1_CCB_vect)
 Interrupt handler for Timer Counter F1 Compare/CaptureB. More...
 
void tc_disable (volatile void *tc)
 Disable TC. More...
 
void tc_enable (volatile void *tc)
 Enable TC. More...
 
void tc_set_cca_interrupt_callback (volatile void *tc, tc_callback_t callback)
 Set TC Capture Compare Channel A interrupt callback function. More...
 
void tc_set_ccb_interrupt_callback (volatile void *tc, tc_callback_t callback)
 Set TC Capture Compare Channel B interrupt callback function. More...
 
void tc_set_ccc_interrupt_callback (volatile void *tc, tc_callback_t callback)
 Set TC Capture Compare Channel C interrupt callback function. More...
 
void tc_set_ccd_interrupt_callback (volatile void *tc, tc_callback_t callback)
 Set TC Capture Compare Channel D interrupt callback function. More...
 
void tc_set_error_interrupt_callback (volatile void *tc, tc_callback_t callback)
 Set TC error interrupt callback function. More...
 
void tc_set_overflow_interrupt_callback (volatile void *tc, tc_callback_t callback)
 Set TC overflow interrupt callback function. More...
 

Variables

static tc_callback_t tc_tcc0_cca_callback
 
static tc_callback_t tc_tcc0_ccb_callback
 
static tc_callback_t tc_tcc0_ccc_callback
 
static tc_callback_t tc_tcc0_ccd_callback
 
static tc_callback_t tc_tcc0_err_callback
 
static tc_callback_t tc_tcc0_ovf_callback
 
static tc_callback_t tc_tcc1_cca_callback
 
static tc_callback_t tc_tcc1_ccb_callback
 
static tc_callback_t tc_tcc1_err_callback
 
static tc_callback_t tc_tcc1_ovf_callback
 
static tc_callback_t tc_tcd0_cca_callback
 
static tc_callback_t tc_tcd0_ccb_callback
 
static tc_callback_t tc_tcd0_ccc_callback
 
static tc_callback_t tc_tcd0_ccd_callback
 
static tc_callback_t tc_tcd0_err_callback
 
static tc_callback_t tc_tcd0_ovf_callback
 
static tc_callback_t tc_tcd1_cca_callback
 
static tc_callback_t tc_tcd1_ccb_callback
 
static tc_callback_t tc_tcd1_err_callback
 
static tc_callback_t tc_tcd1_ovf_callback
 
static tc_callback_t tc_tce0_cca_callback
 
static tc_callback_t tc_tce0_ccb_callback
 
static tc_callback_t tc_tce0_ccc_callback
 
static tc_callback_t tc_tce0_ccd_callback
 
static tc_callback_t tc_tce0_err_callback
 
static tc_callback_t tc_tce0_ovf_callback
 
static tc_callback_t tc_tce1_cca_callback
 
static tc_callback_t tc_tce1_ccb_callback
 
static tc_callback_t tc_tce1_err_callback
 
static tc_callback_t tc_tce1_ovf_callback
 
static tc_callback_t tc_tcf0_cca_callback
 
static tc_callback_t tc_tcf0_ccb_callback
 
static tc_callback_t tc_tcf0_ccc_callback
 
static tc_callback_t tc_tcf0_ccd_callback
 
static tc_callback_t tc_tcf0_err_callback
 
static tc_callback_t tc_tcf0_ovf_callback
 
static tc_callback_t tc_tcf1_cca_callback
 
static tc_callback_t tc_tcf1_ccb_callback
 
static tc_callback_t tc_tcf1_err_callback
 
static tc_callback_t tc_tcf1_ovf_callback
 

ISR ( TCC0_OVF_vect  )

Interrupt handler for Timer Counter C0 overflow.

This function will handle interrupt on Timer Counter CO overflow and call the callback function.

References tc_tcc0_ovf_callback.

ISR ( TCC0_ERR_vect  )

Interrupt handler for Timer Counter C0 error.

This function will handle interrupt on Timer Counter CO error and call the callback function.

References tc_tcc0_err_callback.

ISR ( TCC0_CCA_vect  )

Interrupt handler for Timer Counter C0 Compare/CaptureA.

This function will handle interrupt on Timer Counter CO Compare/CaptureA and call the callback function.

References tc_tcc0_cca_callback.

ISR ( TCC0_CCB_vect  )

Interrupt handler for Timer Counter C0 Compare/CaptureB.

This function will handle interrupt on Timer Counter CO Compare/CaptureB and call the callback function.

References tc_tcc0_ccb_callback.

ISR ( TCC0_CCC_vect  )

Interrupt handler for Timer Counter C0 Compare/CaptureC.

This function will handle interrupt on Timer Counter CO Compare/CaptureC and call the callback function.

References tc_tcc0_ccc_callback.

ISR ( TCC0_CCD_vect  )

Interrupt handler for Timer Counter C0 Compare/CaptureD.

This function will handle interrupt on Timer Counter CO Compare/CaptureD and call the callback function.

References tc_tcc0_ccd_callback.

ISR ( TCC1_OVF_vect  )

Interrupt handler for Timer Counter C1 overflow.

This function will handle interrupt on Timer Counter C1 overflow and call the callback function.

References tc_tcc1_ovf_callback.

ISR ( TCC1_ERR_vect  )

Interrupt handler for Timer Counter C1 error.

This function will handle interrupt on Timer Counter C1 error and call the callback function.

References tc_tcc1_err_callback.

ISR ( TCC1_CCA_vect  )

Interrupt handler for Timer Counter C1 Compare/CaptureA.

This function will handle interrupt on Timer Counter C1 Compare/CaptureA and call the callback function.

References tc_tcc1_cca_callback.

ISR ( TCC1_CCB_vect  )

Interrupt handler for Timer Counter C1 Compare/CaptureB.

This function will handle interrupt on Timer Counter C1 Compare/CaptureB and call the callback function.

References tc_tcc1_ccb_callback.

ISR ( TCD0_OVF_vect  )

Interrupt handler for Timer Counter D0 overflow.

This function will handle interrupt on Timer Counter D0 overflow and call the callback function.

References tc_tcd0_ovf_callback.

ISR ( TCD0_ERR_vect  )

Interrupt handler for Timer Counter D0 error.

This function will handle interrupt on Timer Counter D0 error and call the callback function.

References tc_tcd0_err_callback.

ISR ( TCD0_CCA_vect  )

Interrupt handler for Timer Counter D0 Compare/CaptureA.

This function will handle interrupt on Timer Counter D0 Compare/CaptureA and call the callback function.

References tc_tcd0_cca_callback.

ISR ( TCD0_CCB_vect  )

Interrupt handler for Timer Counter D0 Compare/CaptureB.

This function will handle interrupt on Timer Counter D0 Compare/CaptureB and call the callback function.

References tc_tcd0_ccb_callback.

ISR ( TCD0_CCC_vect  )

Interrupt handler for Timer Counter D0 Compare/CaptureC.

This function will handle interrupt on Timer Counter D0 Compare/CaptureC and call the callback function.

References tc_tcd0_ccc_callback.

ISR ( TCD0_CCD_vect  )

Interrupt handler for Timer Counter D0 Compare/CaptureD.

This function will handle interrupt on Timer Counter D0 Compare/CaptureD and call the callback function.

References tc_tcd0_ccd_callback.

ISR ( TCD1_OVF_vect  )

Interrupt handler for Timer Counter D1 overflow.

This function will handle interrupt on Timer Counter D1 overflow and call the callback function.

References tc_tcd1_ovf_callback.

ISR ( TCD1_ERR_vect  )

Interrupt handler for Timer Counter D1 error.

This function will handle interrupt on Timer Counter D1 error and call the callback function.

References tc_tcd1_err_callback.

ISR ( TCD1_CCA_vect  )

Interrupt handler for Timer Counter D1 Compare/CaptureA.

This function will handle interrupt on Timer Counter D1 Compare/CaptureA and call the callback function.

References tc_tcd1_cca_callback.

ISR ( TCD1_CCB_vect  )

Interrupt handler for Timer Counter D1 Compare/CaptureB.

This function will handle interrupt on Timer Counter D1 Compare/CaptureB and call the callback function.

References tc_tcd1_ccb_callback.

ISR ( TCE0_OVF_vect  )

Interrupt handler for Timer Counter E0 overflow.

This function will handle interrupt on Timer Counter E0 overflow and call the callback function.

References tc_tce0_ovf_callback.

ISR ( TCE0_ERR_vect  )

Interrupt handler for Timer Counter E0 error.

This function will handle interrupt on Timer Counter E0 error and call the callback function.

References tc_tce0_err_callback.

ISR ( TCE0_CCA_vect  )

Interrupt handler for Timer Counter E0 Compare/CaptureA.

This function will handle interrupt on Timer Counter E0 Compare/CaptureA and call the callback function.

References tc_tce0_cca_callback.

ISR ( TCE0_CCB_vect  )

Interrupt handler for Timer Counter E0 Compare/CaptureB.

This function will handle interrupt on Timer Counter E0 Compare/CaptureB and call the callback function.

References tc_tce0_ccb_callback.

ISR ( TCE0_CCC_vect  )

Interrupt handler for Timer Counter E0 Compare/CaptureC.

This function will handle interrupt on Timer Counter E0 Compare/CaptureC and call the callback function.

References tc_tce0_ccc_callback.

ISR ( TCE0_CCD_vect  )

Interrupt handler for Timer Counter E0 Compare/CaptureD.

This function will handle interrupt on Timer Counter E0 Compare/CaptureD and call the callback function.

References tc_tce0_ccd_callback.

ISR ( TCE1_OVF_vect  )

Interrupt handler for Timer Counter E1 overflow.

This function will handle interrupt on Timer Counter E1 overflow and call the callback function.

References tc_tce1_ovf_callback.

ISR ( TCE1_ERR_vect  )

Interrupt handler for Timer Counter E1 error.

This function will handle interrupt on Timer Counter E1 error and call the callback function.

References tc_tce1_err_callback.

ISR ( TCE1_CCA_vect  )

Interrupt handler for Timer Counter E1 Compare/CaptureA.

This function will handle interrupt on Timer Counter E1 Compare/CaptureA and call the callback function.

References tc_tce1_cca_callback.

ISR ( TCE1_CCB_vect  )

Interrupt handler for Timer Counter E1 Compare/CaptureB.

This function will handle interrupt on Timer Counter E1 Compare/CaptureB and call the callback function.

References tc_tce1_ccb_callback.

ISR ( TCF0_OVF_vect  )

Interrupt handler for Timer Counter E0 overflow.

This function will handle interrupt on Timer Counter F0 overflow and call the callback function.

References tc_tcf0_ovf_callback.

ISR ( TCF0_ERR_vect  )

Interrupt handler for Timer Counter F0 error.

This function will handle interrupt on Timer Counter F0 error and call the callback function.

References tc_tcf0_err_callback.

ISR ( TCF0_CCA_vect  )

Interrupt handler for Timer Counter F0 Compare/CaptureA.

This function will handle interrupt on Timer Counter F0 Compare/CaptureA and call the callback function.

References tc_tcf0_cca_callback.

ISR ( TCF0_CCB_vect  )

Interrupt handler for Timer Counter F0 Compare/CaptureB.

This function will handle interrupt on Timer Counter F0 Compare/CaptureB and call the callback function.

References tc_tcf0_ccb_callback.

ISR ( TCF0_CCC_vect  )

Interrupt handler for Timer Counter F0 Compare/CaptureC.

This function will handle interrupt on Timer Counter F0 Compare/CaptureC and call the callback function.

References tc_tcf0_ccc_callback.

ISR ( TCF0_CCD_vect  )

Interrupt handler for Timer Counter F0 Compare/CaptureD.

This function will handle interrupt on Timer Counter F0 Compare/CaptureD and call the callback function.

References tc_tcf0_ccd_callback.

ISR ( TCF1_OVF_vect  )

Interrupt handler for Timer Counter F1 overflow.

This function will handle interrupt on Timer Counter F1 overflow and call the callback function.

References tc_tcf1_ovf_callback.

ISR ( TCF1_ERR_vect  )

Interrupt handler for Timer Counter F1 error.

This function will handle interrupt on Timer Counter F1 error and call the callback function.

References tc_tcf1_err_callback.

ISR ( TCF1_CCA_vect  )

Interrupt handler for Timer Counter F1 Compare/CaptureA.

This function will handle interrupt on Timer Counter F1 Compare/CaptureA and call the callback function.

References tc_tcf1_cca_callback.

ISR ( TCF1_CCB_vect  )

Interrupt handler for Timer Counter F1 Compare/CaptureB.

This function will handle interrupt on Timer Counter F1 Compare/CaptureB and call the callback function.

References tc_tcf1_ccb_callback.

tc_callback_t tc_tcc0_cca_callback
static
tc_callback_t tc_tcc0_ccb_callback
static
tc_callback_t tc_tcc0_ccc_callback
static
tc_callback_t tc_tcc0_ccd_callback
static
tc_callback_t tc_tcc0_err_callback
static
tc_callback_t tc_tcc0_ovf_callback
static

Local storage of Timer Counter TCC0 interrupt callback function

Referenced by ISR(), and tc_set_overflow_interrupt_callback().

tc_callback_t tc_tcc1_cca_callback
static
tc_callback_t tc_tcc1_ccb_callback
static
tc_callback_t tc_tcc1_err_callback
static
tc_callback_t tc_tcc1_ovf_callback
static

Local storage of Timer Counter TCC1 interrupt callback function

Referenced by ISR(), and tc_set_overflow_interrupt_callback().

tc_callback_t tc_tcd0_cca_callback
static
tc_callback_t tc_tcd0_ccb_callback
static
tc_callback_t tc_tcd0_ccc_callback
static
tc_callback_t tc_tcd0_ccd_callback
static
tc_callback_t tc_tcd0_err_callback
static
tc_callback_t tc_tcd0_ovf_callback
static

Local storage of Timer Counter TCD0 interrupt callback function

Referenced by ISR(), and tc_set_overflow_interrupt_callback().

tc_callback_t tc_tcd1_cca_callback
static
tc_callback_t tc_tcd1_ccb_callback
static
tc_callback_t tc_tcd1_err_callback
static
tc_callback_t tc_tcd1_ovf_callback
static

Local storage of Timer Counter TCD1 interrupt callback function

Referenced by ISR(), and tc_set_overflow_interrupt_callback().

tc_callback_t tc_tce0_cca_callback
static
tc_callback_t tc_tce0_ccb_callback
static
tc_callback_t tc_tce0_ccc_callback
static
tc_callback_t tc_tce0_ccd_callback
static
tc_callback_t tc_tce0_err_callback
static
tc_callback_t tc_tce0_ovf_callback
static

Local storage of Timer Counter TCE0 interrupt callback function

Referenced by ISR(), and tc_set_overflow_interrupt_callback().

tc_callback_t tc_tce1_cca_callback
static
tc_callback_t tc_tce1_ccb_callback
static
tc_callback_t tc_tce1_err_callback
static
tc_callback_t tc_tce1_ovf_callback
static

Local storage of Timer Counter TCE1 interrupt callback function

Referenced by ISR(), and tc_set_overflow_interrupt_callback().

tc_callback_t tc_tcf0_cca_callback
static
tc_callback_t tc_tcf0_ccb_callback
static
tc_callback_t tc_tcf0_ccc_callback
static
tc_callback_t tc_tcf0_ccd_callback
static
tc_callback_t tc_tcf0_err_callback
static
tc_callback_t tc_tcf0_ovf_callback
static

Local storage of Timer Counter TCF0 interrupt callback function

Referenced by ISR(), and tc_set_overflow_interrupt_callback().

tc_callback_t tc_tcf1_cca_callback
static
tc_callback_t tc_tcf1_ccb_callback
static
tc_callback_t tc_tcf1_err_callback
static
tc_callback_t tc_tcf1_ovf_callback
static

Local storage of Timer Counter TCF1 interrupt callback function

Referenced by ISR(), and tc_set_overflow_interrupt_callback().