LPCOpen Platform  v1.03
LPCOpen Platform for NXP LPC Microcontrollers
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
sct_001.h File Reference
#include "sys_config.h"
#include "cmsis.h"

Go to the source code of this file.

Data Structures

struct  IP_SCT_001_T
 State Configurable Timer register block structure. More...
 

Macros

#define CONFIG_SCT_nEV   (16)
 SCT Module configuration.
 
#define CONFIG_SCT_nRG   (16)
 
#define CONFIG_SCT_nOU   (16)
 
#define SCT_CONFIG_16BIT_COUNTER   0x00000000
 Macro defines for SCT configuration register.
 
#define SCT_CONFIG_32BIT_COUNTER   0x00000001
 
#define SCT_CONFIG_CLKMODE_BUSCLK   (0x0 << 1)
 
#define SCT_CONFIG_CLKMODE_SCTCLK   (0x1 << 1)
 
#define SCT_CONFIG_CLKMODE_INCLK   (0x2 << 1)
 
#define SCT_CONFIG_CLKMODE_INEDGECLK   (0x3 << 1)
 
#define SCT_CONFIG_NORELOADL_U   (0x1 << 7)
 
#define SCT_CONFIG_NORELOADH   (0x1 << 8)
 
#define COUNTUP_TO_LIMIT_THEN_CLEAR_TO_ZERO   0
 
#define COUNTUP_TO   LIMIT_THEN_COUNTDOWN_TO_ZERO 1
 
#define SCT_CTRL_STOP_L   (1 << 1)
 
#define SCT_CTRL_HALT_L   (1 << 2)
 
#define SCT_CTRL_CLRCTR_L   (1 << 3)
 
#define SCT_CTRL_BIDIR_L(x)   (((x) & 0x01) << 4)
 
#define SCT_CTRL_PRE_L(x)   (((x) & 0xFF) << 5)
 
#define COUNTUP_TO_LIMIT_THEN_CLEAR_TO_ZERO   0
 
#define COUNTUP_TO   LIMIT_THEN_COUNTDOWN_TO_ZERO 1
 
#define SCT_CTRL_STOP_H   (1 << 17)
 
#define SCT_CTRL_HALT_H   (1 << 18)
 
#define SCT_CTRL_CLRCTR_H   (1 << 19)
 
#define SCT_CTRL_BIDIR_H(x)   (((x) & 0x01) << 20)
 
#define SCT_CTRL_PRE_H(x)   (((x) & 0xFF) << 21)
 
#define SCT_RES_NOCHANGE   (0)
 
#define SCT_RES_SET_OUTPUT   (1)
 
#define SCT_RES_CLEAR_OUTPUT   (2)
 
#define SCT_RES_TOGGLE_OUTPUT   (3)
 

Functions

STATIC INLINE void IP_SCT_SetCount (IP_SCT_001_T *pSCT, uint32_t count)
 Set the value in SCT unified count register.
 
STATIC INLINE void IP_SCT_SetCountL (IP_SCT_001_T *pSCT, uint16_t count)
 Set the value in SCT Lower count register.
 
STATIC INLINE void IP_SCT_SetCountH (IP_SCT_001_T *pSCT, uint16_t count)
 Set the value in SCT Higher count register.
 
STATIC INLINE void IP_SCT_SetMatchCount (IP_SCT_001_T *pSCT, uint32_t n, uint32_t count)
 Set the match value in SCT Unified match register.
 
STATIC INLINE void IP_SCT_SetMatchReload (IP_SCT_001_T *pSCT, uint32_t n, uint32_t count)
 Set the match reload value in SCT Unified match reload register.
 
STATIC INLINE void IP_SCT_EventIntEnable (IP_SCT_001_T *pSCT, uint32_t evt)
 Enable the interrupt for the specified event.
 
STATIC INLINE void IP_SCT_EventIntDisable (IP_SCT_001_T *pSCT, uint32_t evt)
 Disable the interrupt for the specified event.
 
STATIC INLINE void IP_SCT_ClearEventFlag (IP_SCT_001_T *pSCT, uint32_t evt)
 Clear the specified event flag.
 
void IP_SCT_Config (IP_SCT_001_T *pSCT, uint32_t value)
 Configure SCT.
 
void IP_SCT_ControlSetClr (IP_SCT_001_T *pSCT, uint32_t value, FunctionalState ena)
 Set or Clear the Control register.
 
void IP_SCT_ConflictResolutionSet (IP_SCT_001_T *pSCT, uint8_t outnum, uint8_t value)
 Set the conflict resolution.
 
void IP_SCT_EventFlagClear (IP_SCT_001_T *pSCT, uint8_t even_num)
 Clear the SCT event flag.