📄 timer.h
字号:
/*****************************************************************************
* timer.h: Header file for NXP LPC23xx/24xx Family Microprocessors
*
* Copyright(C) 2006, NXP Semiconductor
* All rights reserved.
*
* History
* 2006.07.13 ver 1.00 Prelimnary version, first Release
*
******************************************************************************/
#ifndef __TIMER_H
#define __TIMER_H
#define TIME_INTERVAL Fpclk/100 - 1
#define TIM_MCR_INT (0x01<<0) /* on match take interrupt */
#define TIM_MCR_RST (0x01<<1) /* on match reset */
#define TIM_MCR_STP (0x01<<2) /* on match stop */
#define TIM_CCR_RE (0x01<<0) /* make Rising Edge active capture event */
#define TIM_CCR_FE (0x01<<1) /* make Falling Edge active capture event */
#define TIM_CCR_INT (0x01<<2) /* on capture event take interrupt */
#define TIM_EMC_NOTHING (0x00) /* External Match Do Nothing */
#define TIM_EMC_CLRB (0x01) /* External Match Clear Bit */
#define TIM_EMC_SETB (0x02) /* External Match Set Bit */
#define TIM_EMC_TOGGLE (0x03) /* External Match Toggle Bit */
#define TIM_MODE_TIMER (0x00) /* mode is Timer */
#define TIM_MODE_CNT_ON_RE (0x01) /* mode is count on Rising Edge */
#define TIM_MODE_CNT_ON_FE (0x02) /* mode is count on Falling Edge */
#define TIM_MODE_CNT_ON_BE (0x03) /* mode is count on Both Edges */
/* depending on the CCLK and PCLK setting, CCLK = 60Mhz, PCLK = 1/4 CCLK
10mSec = 150.000-1 counts */
// #define TIME_INTERVAL 149999
extern DWORD init_timer( BYTE timer_num, DWORD timerInterval );
extern DWORD init_timer0 (DWORD timerInterval);
extern DWORD init_timer1 (DWORD timerInterval);
extern DWORD init_timer2 ( void );
extern DWORD setTimerMatchValue(DWORD timer, DWORD match, DWORD timerInterval);
extern DWORD setTimerMatchControl(DWORD timer, DWORD match, DWORD control);
extern DWORD setTimerCounterMode(DWORD timer, DWORD mode, DWORD inputSelect);
extern DWORD setTimerExternalMatch(DWORD timer, DWORD match, DWORD value, DWORD matchControl);
extern DWORD clearTimerExternalMatch(DWORD timer, DWORD match);
extern DWORD setTimerPrescaleValue(DWORD timer, DWORD value);
extern void enable_timer( BYTE timer_num );
extern void disable_timer( BYTE timer_num );
extern void reset_timer( BYTE timer_num );
extern void Timer2_Handler (void) __irq;
#endif /* end __TIMER_H */
/*****************************************************************************
** End Of File
******************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -