Data Structures | Macros | Typedefs | Functions
timer_a.h File Reference
#include <stdint.h>
#include <msp.h>
#include <stdbool.h>

Go to the source code of this file.

Data Structures

struct  _Timer_A_ContinuousModeConfig
 Type definition for _Timer_A_ContinuousModeConfig structure. More...
 
struct  _Timer_A_UpModeConfig
 Type definition for _Timer_A_UpModeConfig structure. More...
 
struct  _Timer_A_UpDownModeConfig
 Type definition for _Timer_A_UpDownModeConfig structure. More...
 
struct  _Timer_A_CaptureModeConfig
 Type definition for _Timer_A_CaptureModeConfig structure. More...
 
struct  _Timer_A_CompareModeConfig
 Type definition for _Timer_A_CompareModeConfig structure. More...
 
struct  _Timer_A_PWMConfig
 Type definition for _Timer_A_PWMConfig structure. More...
 

Macros

#define TIMER_A_CMSIS(x)   ((Timer_A_Type *) x)
 
#define TIMER_A_CCR0_INTERRUPT   0x00
 
#define TIMER_A_CCRX_AND_OVERFLOW_INTERRUPT   0x01
 
#define TIMER_A_THRESHOLD   50
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_1   0x01
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_2   0x02
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_4   0x04
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_8   0x08
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_3   0x03
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_5   0x05
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_6   0x06
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_7   0x07
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_10   0x0A
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_12   0x0C
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_14   0x0E
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_16   0x10
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_20   0x14
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_24   0x18
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_28   0x1C
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_32   0x20
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_40   0x28
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_48   0x30
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_56   0x38
 
#define TIMER_A_CLOCKSOURCE_DIVIDER_64   0x40
 
#define TIMER_A_STOP_MODE   TIMER_A_CTL_MC_0
 
#define TIMER_A_UP_MODE   TIMER_A_CTL_MC_1
 
#define TIMER_A_CONTINUOUS_MODE   TIMER_A_CTL_MC_2
 
#define TIMER_A_UPDOWN_MODE   TIMER_A_CTL_MC_3
 
#define TIMER_A_DO_CLEAR   TIMER_A_CTL_CLR
 
#define TIMER_A_SKIP_CLEAR   0x00
 
#define TIMER_A_CLOCKSOURCE_EXTERNAL_TXCLK   TIMER_A_CTL_SSEL__TACLK
 
#define TIMER_A_CLOCKSOURCE_ACLK   TIMER_A_CTL_SSEL__ACLK
 
#define TIMER_A_CLOCKSOURCE_SMCLK   TIMER_A_CTL_SSEL__SMCLK
 
#define TIMER_A_CLOCKSOURCE_INVERTED_EXTERNAL_TXCLK   TIMER_A_CTL_SSEL__INCLK
 
#define TIMER_A_TAIE_INTERRUPT_ENABLE   TIMER_A_CTL_IE
 
#define TIMER_A_TAIE_INTERRUPT_DISABLE   0x00
 
#define TIMER_A_CCIE_CCR0_INTERRUPT_ENABLE   TIMER_A_CCTLN_CCIE
 
#define TIMER_A_CCIE_CCR0_INTERRUPT_DISABLE   0x00
 
#define TIMER_A_CAPTURECOMPARE_INTERRUPT_DISABLE   0x00
 
#define TIMER_A_CAPTURECOMPARE_INTERRUPT_ENABLE   TIMER_A_CCTLN_CCIE
 
#define TIMER_A_CAPTURE_INPUTSELECT_CCIxA   TIMER_A_CCTLN_CCIS_0
 
#define TIMER_A_CAPTURE_INPUTSELECT_CCIxB   TIMER_A_CCTLN_CCIS_1
 
#define TIMER_A_CAPTURE_INPUTSELECT_GND   TIMER_A_CCTLN_CCIS_2
 
#define TIMER_A_CAPTURE_INPUTSELECT_Vcc   TIMER_A_CCTLN_CCIS_3
 
#define TIMER_A_OUTPUTMODE_OUTBITVALUE   TIMER_A_CCTLN_OUTMOD_0
 
#define TIMER_A_OUTPUTMODE_SET   TIMER_A_CCTLN_OUTMOD_1
 
#define TIMER_A_OUTPUTMODE_TOGGLE_RESET   TIMER_A_CCTLN_OUTMOD_2
 
#define TIMER_A_OUTPUTMODE_SET_RESET   TIMER_A_CCTLN_OUTMOD_3
 
#define TIMER_A_OUTPUTMODE_TOGGLE   TIMER_A_CCTLN_OUTMOD_4
 
#define TIMER_A_OUTPUTMODE_RESET   TIMER_A_CCTLN_OUTMOD_5
 
#define TIMER_A_OUTPUTMODE_TOGGLE_SET   TIMER_A_CCTLN_OUTMOD_6
 
#define TIMER_A_OUTPUTMODE_RESET_SET   TIMER_A_CCTLN_OUTMOD_7
 
#define TIMER_A_CAPTURECOMPARE_REGISTER_0   0x02
 
#define TIMER_A_CAPTURECOMPARE_REGISTER_1   0x04
 
#define TIMER_A_CAPTURECOMPARE_REGISTER_2   0x06
 
#define TIMER_A_CAPTURECOMPARE_REGISTER_3   0x08
 
#define TIMER_A_CAPTURECOMPARE_REGISTER_4   0x0A
 
#define TIMER_A_CAPTURECOMPARE_REGISTER_5   0x0C
 
#define TIMER_A_CAPTURECOMPARE_REGISTER_6   0x0E
 
#define TIMER_A_CAPTUREMODE_NO_CAPTURE   TIMER_A_CCTLN_CM_0
 
#define TIMER_A_CAPTUREMODE_RISING_EDGE   TIMER_A_CCTLN_CM_1
 
#define TIMER_A_CAPTUREMODE_FALLING_EDGE   TIMER_A_CCTLN_CM_2
 
#define TIMER_A_CAPTUREMODE_RISING_AND_FALLING_EDGE   TIMER_A_CCTLN_CM_3
 
#define TIMER_A_CAPTURE_ASYNCHRONOUS   0x00
 
#define TIMER_A_CAPTURE_SYNCHRONOUS   TIMER_A_CCTLN_SCS
 
#define TIMER_A_CAPTURE_OVERFLOW   TIMER_A_CCTLN_COV
 
#define TIMER_A_CAPTURECOMPARE_INTERRUPT_FLAG   TIMER_A_CCTLN_CCIFG
 
#define TIMER_A_READ_SYNCHRONIZED_CAPTURECOMPAREINPUT   TIMER_A_CCTLN_SCCI
 
#define TIMER_A_READ_CAPTURE_COMPARE_INPUT   TIMER_A_CCTLN_CCI
 
#define TIMER_A_CAPTURECOMPARE_INPUT_HIGH   0x01
 
#define TIMER_A_CAPTURECOMPARE_INPUT_LOW   0x00
 
#define TIMER_A_OUTPUTMODE_OUTBITVALUE_HIGH   TIMER_A_CCTLN_OUT
 
#define TIMER_A_OUTPUTMODE_OUTBITVALUE_LOW   0x00
 
#define TIMER_A_INTERRUPT_NOT_PENDING   0x00
 
#define TIMER_A_INTERRUPT_PENDING   0x01
 
#define Timer_A_setDutyCycle(timer, dutyCycle)   Timer_A_setCompareValue(timer,dutyCycle)
 
#define Timer_A_clearTimerInterrupt   Timer_A_clearInterruptFlag
 
#define Timer_A_clear   Timer_A_clearTimer
 
#define Timer_A_initCaptureMode   Timer_A_initCapture
 
#define Timer_A_initCompareMode   Timer_A_initCompare
 
#define Timer_A_initContinuousMode   Timer_A_configureContinuousMode
 
#define Timer_A_initUpDownMode   Timer_A_configureUpDownMode
 
#define Timer_A_initUpMode   Timer_A_configureUpMode
 
#define Timer_A_outputPWM   Timer_A_generatePWM
 
#define Timer_A_stop   Timer_A_stopTimer
 

Typedefs

typedef struct
_Timer_A_ContinuousModeConfig 
Timer_A_ContinuousModeConfig
 
typedef struct
_Timer_A_UpModeConfig 
Timer_A_UpModeConfig
 
typedef struct
_Timer_A_UpDownModeConfig 
Timer_A_UpDownModeConfig
 
typedef struct
_Timer_A_CaptureModeConfig 
Timer_A_CaptureModeConfig
 
typedef struct
_Timer_A_CompareModeConfig 
Timer_A_CompareModeConfig
 
typedef struct _Timer_A_PWMConfig Timer_A_PWMConfig
 

Functions

void Timer_A_startCounter (uint32_t timer, uint_fast16_t timerMode)
 
void Timer_A_configureContinuousMode (uint32_t timer, const Timer_A_ContinuousModeConfig *config)
 
void Timer_A_configureUpMode (uint32_t timer, const Timer_A_UpModeConfig *config)
 
void Timer_A_configureUpDownMode (uint32_t timer, const Timer_A_UpDownModeConfig *config)
 
void Timer_A_initCapture (uint32_t timer, const Timer_A_CaptureModeConfig *config)
 
void Timer_A_initCompare (uint32_t timer, const Timer_A_CompareModeConfig *config)
 
void Timer_A_clearTimer (uint32_t timer)
 
uint_fast8_t Timer_A_getSynchronizedCaptureCompareInput (uint32_t timer, uint_fast16_t captureCompareRegister, uint_fast16_t synchronizedSetting)
 
uint_fast8_t Timer_A_getOutputForOutputModeOutBitValue (uint32_t timer, uint_fast16_t captureCompareRegister)
 
uint_fast16_t Timer_A_getCaptureCompareCount (uint32_t timer, uint_fast16_t captureCompareRegister)
 
void Timer_A_setOutputForOutputModeOutBitValue (uint32_t timer, uint_fast16_t captureCompareRegister, uint_fast8_t outputModeOutBitValue)
 
void Timer_A_generatePWM (uint32_t timer, const Timer_A_PWMConfig *config)
 
void Timer_A_stopTimer (uint32_t timer)
 
void Timer_A_setCompareValue (uint32_t timer, uint_fast16_t compareRegister, uint_fast16_t compareValue)
 
uint16_t Timer_A_getCounterValue (uint32_t timer)
 
void Timer_A_clearInterruptFlag (uint32_t timer)
 
void Timer_A_clearCaptureCompareInterrupt (uint32_t timer, uint_fast16_t captureCompareRegister)
 
void Timer_A_enableInterrupt (uint32_t timer)
 
void Timer_A_disableInterrupt (uint32_t timer)
 
uint32_t Timer_A_getInterruptStatus (uint32_t timer)
 
uint32_t Timer_A_getEnabledInterruptStatus (uint32_t timer)
 
void Timer_A_enableCaptureCompareInterrupt (uint32_t timer, uint_fast16_t captureCompareRegister)
 
void Timer_A_disableCaptureCompareInterrupt (uint32_t timer, uint_fast16_t captureCompareRegister)
 
uint32_t Timer_A_getCaptureCompareInterruptStatus (uint32_t timer, uint_fast16_t captureCompareRegister, uint_fast16_t mask)
 
uint32_t Timer_A_getCaptureCompareEnabledInterruptStatus (uint32_t timer, uint_fast16_t captureCompareRegister)
 
void Timer_A_registerInterrupt (uint32_t timer, uint_fast8_t interruptSelect, void(*intHandler)(void))
 
void Timer_A_unregisterInterrupt (uint32_t timer, uint_fast8_t interruptSelect)
 

Copyright 2016, Texas Instruments Incorporated