?? timer.h
字號:
/** @file timer.h
* @brief LPC2200 Timer n驅動程序
* @Notice 采用中斷方式, 如有問題請聯系作者
* @Author Mars.zhu@hotmail.com 2007-7-6 17:03
* @Modify
*/
#ifndef __TIMER_H
#define __TIMER_H
#ifdef __cplusplus
extern "C" {
#endif
/** 中斷相關結構*/
typedef struct {
uint8 VIC_no; /** 向量中斷通道號*/
uint8 VIC_type; /** 中斷類型, 0 IRQ, 1 FIQ*/
uint32 ISR; /** 中斷服務程序*/
} INT_ATTR;
/** @func TnMR_Init()
* @brief 定時器n初始化
* @param Tn 定時器選擇
* ms 定時時間
* @Retval void
*/
void TnMR_Init(uint8 Tn, uint16 ms);
/** @func TnCAP_Init()
* @brief 定時器n捕獲模式初始化
* @param Tn 定時器選擇
* CAP_MODE 捕獲方式,按位操作方式
* bit0:1--CAP上跳沿捕獲
* bit1:1--CAP下降沿捕獲
* CAPn 捕獲通道選擇,0~3
* @Retval void
*/
void TnCAP_Init(uint8 Tn, uint8 CAP_MODE, uint8 CAPn);
/** @func TnMAT_Init()
* @brief 定時器n匹配模式初始化
* @param Tn 定時器選擇
* time 匹配時間,該值會直接寫入到匹配寄存器中
* T_MODE 匹配控制模式
* 0: 匹配時,定時器復位
* 1: 匹配時,定時器停止
* EXT_MODE 匹配時,外部輸出控制
* 0: 不執行任何動作
* 1: 外部匹配輸出0
* 2: 外部匹配輸出1
* 3: 外部匹配輸出翻轉
* MATn 匹配通道選擇,0~3
* @Retval void
*/
void TnMAT_Init(uint8 Tn, uint32 time, uint8 T_MODE, uint8 EXT_MODE, uint8 MATn);
/** @func TnCNT_Init()
* @brief 計數器n初始化
* @param Tn 定時器選擇
* MODE 計數器模式選擇
* 0: CAPn的上升沿計數
* 1: CAPn的下降沿計數
* 2: CAPn上升沿和下降沿都計數
* CAPn 計數器輸入端0~3
* @Retval void
*/
void TnCNT_Init(uint8 Tn, uint8 MODE, uint8 CAPn);
void TnPWM_Init(uint8 ch, uint32 Cyc, uint32 H_time);
/** @func TnPWM_Flush()
* @brief 重設PWM信號占空比
* @param ch PWM 通道號
* time PWM 高電平時間
* @Retval void
*/
void TnPWM_Flush(uint8 ch, uint32 time);
#ifdef __cplusplus
}
#endif
#endif /** __TIMER_H*/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -