⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 timer.h

📁 基于NXP2200平台的OS移植模板
💻 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 + -