📄 timerprivate.h
字号:
/***********************************************Copyright (c)*********************************************
** Guangzou ZLG-MCU Development Co.,LTD.
**
** http://www.zlgmcu.com
**
**--------------File Info---------------------------------------------------------------------------------
** File name: Timer.c
** Last modified Date: 2007-11-05
** Last Version: 2.0
** Descriptions: 定时器函数实现,采用设备描述符来操作
**
**--------------------------------------------------------------------------------------------------------
** Created by: WangGuoguang
** Created date: 2007-10-31
** Version: 1.0
** Descriptions: 此头文件可在config.h中包含.
**
**--------------------------------------------------------------------------------------------------------
** Modified by: WangGuoguang
** Modified Date: 2007-11-05
** Version: 2.0
** Descriptions: 增加关中断保护设置处理.
**
*********************************************************************************************************/
#ifndef __TIMER_PRIVATE_H
#define __TIMER_PRIVATE_H
/*********************************************************************************************************
TIMER 最大个数定义
*********************************************************************************************************/
#define __TIMER_MAX_NUM 2 /* TIMER 最多个数总共有两个 */
/*********************************************************************************************************
TIMER 软件包引脚功能函数裁剪 建议用户不要打开.
当定义相关的宏为0,则会裁剪匹配与捕获函数的管脚连接初始化模块.
*********************************************************************************************************/
#define __TIMER_MAT_GPIO 0 /* 裁去匹配引脚初始化模块 */
#define __TIMER_CAP_GPIO 0 /* 裁去捕获引脚初始化模块 */
/*********************************************************************************************************
引脚 匹配 / 捕获 设置寄存器偏移地址 & 相关信息
*********************************************************************************************************/
#define __TIMER_GPIO_MAX 1
#define __B_TIMER_PINSEL0 0x0 /* GPIO_0 引脚配置地址宏 */
#define __B_TIMER_PINSEL1 0x1 /* GPIO_1 引脚配置地址宏 */
/*********************************************************************************************************
TIMER 功能模式设置
*********************************************************************************************************/
/*
* 设置定时器边沿状态
*/
#define __TIME_UP 0x00 /* __TIME_UP: 上升沿 */
#define __TIME_DOWN 0x01 /* __TIME_DOWN :下降沿 */
#define __TIME_DOUBLE 0x02 /* __TIME_DOUBLE:双边沿 */
/*********************************************************************************************************
TIMER 寄存器偏移地址
*********************************************************************************************************/
#define __B_TIMER_IR 0x0 /* 各个功能寄存器偏址宏 */
#define __B_TIMER_TCR 0x1
#define __B_TIMER_TC 0x2
#define __B_TIMER_PR 0x3
#define __B_TIMER_PC 0x4
#define __B_TIMER_MCR 0x5
#define __B_TIMER_MR0 0x6
#define __B_TIMER_MR1 0x7
#define __B_TIMER_MR2 0x8
#define __B_TIMER_MR3 0x9
#define __B_TIMER_CCR 0x0A
#define __B_TIMER_CR0 0x0B
#define __B_TIMER_CR1 0x0C
#define __B_TIMER_CR2 0x0D
#define __B_TIMER_CR3 0x0E
#define __B_TIMER_EMR 0x0F
#define __B_TIMER_CTCR 0x1C
/*********************************************************************************************************
TIMER 结构体偏移地址宏参数
*********************************************************************************************************/
#define __TIMER_OFFSET_BASE 0
/*********************************************************************************************************
Timer 功能标记宏
*********************************************************************************************************/
#define __TIMER_TIME 0
#define __TIMER_MAT 1
#define __TIMER_CAP 2
#define __TIEMR_COUNT 3
/*********************************************************************************************************
Timer 设备信息结构体
*********************************************************************************************************/
struct __timer_info {
uint32 uiTimerID; /* 定时器ID编号 */
/*
* 定时器功能标志,当对应数组位设置1, 则标志选择了对应功能
* 0- 定时功能
* 1- 匹配功能
* 2- 捕获功能
* 3- 计数功能
*/
uint32 uiTimerFun[4];
/*
* 设备信息结构体初始化标志: TRUE(1)- 已初始化 FALSE(0)- 未初始化
*/
uint32 uiTimerInitInfo; /* 标志同一个ID设备是否已初始化*/
volatile uint32 uiOffsetBase; /* timer寄存器偏移地址 */
volatile uint32 *puiAddrBase; /* timer寄存器基地址 */
};
typedef struct __timer_info __TIMER_INFO; /* 定义结构体类型 */
typedef __TIMER_INFO *__PTIMER_INFO; /* 定义结构体指针类型 */
#endif /* __TIMER_PRIVATE_H */
/*********************************************************************************************************
END FILE
*********************************************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -