8051-ELL库  beta 1.1.6
8051-ELL library API Document Center
STC8x_TIMER.h 文件参考
#include "ELL_CORE.h"
#include "STC8Ax_REG.h"
STC8x_TIMER.h 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

结构体

struct  TIMER_InitType
 定时器初始化结构体句柄,初始化时请定义该句柄,并用其地址来传参。 更多...
 

宏定义

#define PER_LIB_MCU_MUODEL   STC8Ax
 如果没有定义这个宏,默认为STC8Ax。 If the mirco is undefined,select to STC8Ax 更多...
 
#define PER_LIB_TIMER_CTRL   1
 如果没有定义这个宏,默认为1。 If the mirco is undefined,select to "1" 更多...
 
#define PER_LIB_TIMER_INIT_CTRL   1
 如果没有定义这个宏,默认为1。 If the mirco is undefined,select to "1" 更多...
 
#define PER_LIB_TIMER_WORK_CTRL   1
 如果没有定义这个宏,默认为1。 If the mirco is undefined,select to "1" 更多...
 
#define PER_LIB_TIMER_NVIC_CTRL   1
 如果没有定义这个宏,默认为1。 If the mirco is undefined,select to "1" 更多...
 

枚举

TIMERType_Type

定时器类型状态枚举体。

Timer type state enumeration body.

enum  TIMERType_Type { TIMER_Type_Timer = 0x00 , TIMER_Type_Counter = 0x01 }
 
TIMERMode_Type

定时器工作模式枚举体。

Timer work mode enumeration body.

enum  TIMERMode_Type { TIMER_16BitAutoReload = 0x00 , TIMER_16Bit = 0x01 , TIMER_8BitAutoReload = 0x02 , TIMER_16BitAutoReloadNoMask = 0x03 }
 

TIMERTCycle_Type

定时器指令周期枚举体。

Timer instruction cycle enumeration body.

#define TIMER2_CLEAR_FLAG()   do{ AUXINTIF &= 0xFE; }while(0)
 定时器2清除中断请求标志位宏函数, 只有STC8A,STC8F需要清,STC8AxD4和其它STC8型号不需要清。 更多...
 
#define TIMER3_CLEAR_FLAG()   do{ AUXINTIF &= 0xFD; }while(0)
 定时器3清除中断请求标志位宏函数, 只有STC8A,STC8F需要清,STC8AxD4和其它STC8型号不需要清。 更多...
 
#define TIMER4_CLEAR_FLAG()   do{ AUXINTIF &= 0xFB; }while(0)
 定时器4清除中断请求标志位宏函数, 只有STC8A,STC8F需要清,STC8AxD4和其它STC8型号不需要清。 更多...
 
#define NVIC_TIMER0_PRI(pri)
 TIMER0选择中断优先级宏函数。 更多...
 
#define NVIC_TIMER1_PRI(pri)
 TIMER1选择中断优先级宏函数。 更多...
 
#define NVIC_TIMER0_CTRL(run)   do{ ET0 = run; }while(0)
 定时器0中断开关控制宏函数。 更多...
 
#define NVIC_TIMER1_CTRL(run)   do{ ET1 = run; }while(0)
 定时器1中断开关控制宏函数。 更多...
 
#define NVIC_TIMER2_CTRL(run)   do{ IE2 = (IE2 & 0xFB) | (run << 2); }while(0)
 定时器2中断开关控制宏函数。 更多...
 
#define NVIC_TIMER3_CTRL(run)   do{ IE2 = (IE2 & 0xDF) | (run << 5); }while(0)
 定时器3中断开关控制宏函数。 更多...
 
#define NVIC_TIMER4_CTRL(run)   do{ IE2 = (IE2 & 0xBF) | (run << 6); }while(0)
 定时器4中断开关控制宏函数。 更多...
 
#define TIMER0_WORK_CTRL(run)   do{ TR0 = run; }while(0)
 定时器0工作开关控制宏函数。 更多...
 
#define TIMER1_WORK_CTRL(run)   do{ TR1 = run; }while(0)
 定时器1工作开关控制宏函数。 更多...
 
#define TIMER2_WORK_CTRL(run)   do{AUXR = (AUXR & 0xEF) | (run << 4); }while(0)
 定时器2工作开关控制宏函数。 更多...
 
#define TIMER3_WORK_CTRL(run)   do{ T4T3M = (T4T3M & 0xF7) | (run << 3)}while(0)
 定时器3工作开关控制宏函数。 更多...
 
#define TIMER4_WORK_CTRL(run)   do{ T4T3M = (T4T3M & 0x7F) | (run << 7)}while(0)
 定时器4工作开关控制宏函数。 更多...
 
#define TIMER0_CLEAR_CNT()   do{T0L = 0; T0H = 0;}while(0)
 定时器0计数器重清零宏函数。 更多...
 
#define TIMER1_CLEAR_CNT()   do{T1L = 0; T1H = 0;}while(0)
 定时器1计数器重清零宏函数。 更多...
 
#define TIMER2_CLEAR_CNT()   do{T2L = 0; T2H = 0;}while(0)
 定时器2计数器重清零宏函数。 更多...
 
#define TIMER3_CLEAR_CNT()   do{T3L = 0; T3H = 0;}while(0)
 定时器3计数器重清零宏函数。 更多...
 
#define TIMER4_CLEAR_CNT()   do{T4L = 0; T4H = 0;}while(0)
 定时器4计数器重清零宏函数。 更多...
 
#define TIMER0_RELOAD_CNT()
 定时器0计数器重装载宏函数。 更多...
 
#define TIMER1_RELOAD_CNT()
 定时器1计数器重装载宏函数。 更多...
 
enum  TIMERTCycle_Type { TIMER_TCY_1T = 0x00 , TIMER_TCY_12T = 0x01 }
 
FSCSTATE TIMER5_Wake_Up_Power (uint16_t value, BOOL run)
 调电唤醒定时器5初始化函数。 更多...
 
FSCSTATE TIMER0_Init (const TIMER_InitType *timerx)
 定时器0初始化函数。 更多...
 
FSCSTATE TIMER1_Init (const TIMER_InitType *timerx)
 定时器1初始化函数。 更多...
 
FSCSTATE TIMER2_Init (const TIMER_InitType *timerx)
 定时器2初始化函数。 更多...
 
FSCSTATE TIMER3_Init (const TIMER_InitType *timerx)
 定时器3初始化函数。 更多...
 
FSCSTATE TIMER4_Init (const TIMER_InitType *timerx)
 定时器4初始化函数。 更多...
 
FSCSTATE NVIC_TIMER0_Init (NVICPri_Type pri, BOOL run)
 定时器0中断初始化函数。 更多...
 
FSCSTATE NVIC_TIMER1_Init (NVICPri_Type pri, BOOL run)
 定时器1中断初始化函数。 更多...
 
FSCSTATE NVIC_TIMER2_Init (BOOL run)
 定时器2中断初始化函数。 更多...
 
FSCSTATE NVIC_TIMER3_Init (BOOL run)
 定时器3中断初始化函数。 更多...
 
FSCSTATE NVIC_TIMER4_Init (BOOL run)
 定时器4中断初始化函数。 更多...
 
FSCSTATE TIMER0_Set_Time (uint32_t time)
 定时器0设置定时时间函数。 更多...
 
FSCSTATE TIMER1_Set_Time (uint32_t time)
 定时器1设置定时时间函数。 更多...
 
FSCSTATE TIMER2_Set_Time (uint32_t time)
 定时器2设置定时时间函数。 更多...
 
FSCSTATE TIMER3_Set_Time (uint32_t time)
 定时器3设置定时时间函数。 更多...
 
FSCSTATE TIMER4_Set_Time (uint32_t time)
 定时器4设置定时时间函数。 更多...
 

宏定义说明

◆ NVIC_TIMER0_CTRL

#define NVIC_TIMER0_CTRL (   run)    do{ ET0 = run; }while(0)

定时器0中断开关控制宏函数。

timer0 interrupt switch control macro function.

参数
[in]run使能控制位。Enable control bit.

◆ NVIC_TIMER0_PRI

#define NVIC_TIMER0_PRI (   pri)
值:
do{ \
IPH = (IPH & 0xFD) | (pri & 0x02) ; \
IP = (IP & 0xFD) | ((pri & 0x01) << 1); \
}while(0)
sfr IPH
Definition: STC15x_REG.h:212
sfr IP
Definition: STC15x_REG.h:210

TIMER0选择中断优先级宏函数。

TIMER0 select interrupt pri macro function.

参数
[in]pri中断优先级。 pri of interrupt.

◆ NVIC_TIMER1_CTRL

#define NVIC_TIMER1_CTRL (   run)    do{ ET1 = run; }while(0)

定时器1中断开关控制宏函数。

timer1 interrupt switch control macro function.

参数
[in]run使能控制位。Enable control bit.

◆ NVIC_TIMER1_PRI

#define NVIC_TIMER1_PRI (   pri)
值:
do{ \
IPH = (IPH & 0xF7) | ((pri & 0x02) << 2); \
IP = (IP & 0xF7) | ((pri & 0x01) << 3); \
}while(0)

TIMER1选择中断优先级宏函数。

TIMER1 select interrupt pri macro function.

参数
[in]pri中断优先级。 pri of interrupt.

◆ NVIC_TIMER2_CTRL

#define NVIC_TIMER2_CTRL (   run)    do{ IE2 = (IE2 & 0xFB) | (run << 2); }while(0)

定时器2中断开关控制宏函数。

timer2 interrupt switch control macro function.

参数
[in]run使能控制位。Enable control bit.

◆ NVIC_TIMER3_CTRL

#define NVIC_TIMER3_CTRL (   run)    do{ IE2 = (IE2 & 0xDF) | (run << 5); }while(0)

定时器3中断开关控制宏函数。

timer3 interrupt switch control macro function.

参数
[in]run使能控制位。Enable control bit.

◆ NVIC_TIMER4_CTRL

#define NVIC_TIMER4_CTRL (   run)    do{ IE2 = (IE2 & 0xBF) | (run << 6); }while(0)

定时器4中断开关控制宏函数。

timer4 interrupt switch control macro function.

参数
[in]run使能控制位。Enable control bit.

◆ PER_LIB_MCU_MUODEL

#define PER_LIB_MCU_MUODEL   STC8Ax

如果没有定义这个宏,默认为STC8Ax。 If the mirco is undefined,select to STC8Ax

◆ PER_LIB_TIMER_CTRL

#define PER_LIB_TIMER_CTRL   1

如果没有定义这个宏,默认为1。 If the mirco is undefined,select to "1"

◆ PER_LIB_TIMER_INIT_CTRL

#define PER_LIB_TIMER_INIT_CTRL   1

如果没有定义这个宏,默认为1。 If the mirco is undefined,select to "1"

◆ PER_LIB_TIMER_NVIC_CTRL

#define PER_LIB_TIMER_NVIC_CTRL   1

如果没有定义这个宏,默认为1。 If the mirco is undefined,select to "1"

◆ PER_LIB_TIMER_WORK_CTRL

#define PER_LIB_TIMER_WORK_CTRL   1

如果没有定义这个宏,默认为1。 If the mirco is undefined,select to "1"

◆ TIMER0_CLEAR_CNT

#define TIMER0_CLEAR_CNT ( )    do{T0L = 0; T0H = 0;}while(0)

定时器0计数器重清零宏函数。

Timer 0 counter reset zero macro function.

◆ TIMER0_RELOAD_CNT

#define TIMER0_RELOAD_CNT ( )
值:
do{ \
T0H = (uint8_t)(G_Time0_CntValue >> 8); \
}while(0)
unsigned char uint8_t
Definition: ELL_TYPE.h:72
uint32_t G_Time0_CntValue
Definition: STC8x_TIMER.c:201

定时器0计数器重装载宏函数。

Timer 0 counter reload macro function。

注解
适用于定时器0十六位手动重装载模式。 Suitable for timer 0 sixteen-bit manual reload mode.

◆ TIMER0_WORK_CTRL

#define TIMER0_WORK_CTRL (   run)    do{ TR0 = run; }while(0)

定时器0工作开关控制宏函数。

timer0 working switch control macro function.

参数
[in]run使能控制位。Enable control bit.

◆ TIMER1_CLEAR_CNT

#define TIMER1_CLEAR_CNT ( )    do{T1L = 0; T1H = 0;}while(0)

定时器1计数器重清零宏函数。

Timer 1 counter reset zero macro function.

◆ TIMER1_RELOAD_CNT

#define TIMER1_RELOAD_CNT ( )
值:
do{ \
T1H = (uint8_t)(G_Time1_CntValue >> 8); \
}while(0)
uint32_t G_Time1_CntValue
Definition: STC8x_TIMER.c:202

定时器1计数器重装载宏函数。

Timer 1 counter reload macro function。

注解
适用于定时器1十六位手动重装载模式。 Suitable for timer 1 sixteen-bit manual reload mode.

◆ TIMER1_WORK_CTRL

#define TIMER1_WORK_CTRL (   run)    do{ TR1 = run; }while(0)

定时器1工作开关控制宏函数。

timer1 working switch control macro function.

参数
[in]run使能控制位。Enable control bit.

◆ TIMER2_CLEAR_CNT

#define TIMER2_CLEAR_CNT ( )    do{T2L = 0; T2H = 0;}while(0)

定时器2计数器重清零宏函数。

Timer 2 counter reset zero macro function.

◆ TIMER2_CLEAR_FLAG

#define TIMER2_CLEAR_FLAG ( )    do{ AUXINTIF &= 0xFE; }while(0)

定时器2清除中断请求标志位宏函数, 只有STC8A,STC8F需要清,STC8AxD4和其它STC8型号不需要清。

TIMER2 clears interrupt request flag bit macro function.

◆ TIMER2_WORK_CTRL

#define TIMER2_WORK_CTRL (   run)    do{AUXR = (AUXR & 0xEF) | (run << 4); }while(0)

定时器2工作开关控制宏函数。

timer2 working switch control macro function.

参数
[in]run使能控制位。Enable control bit.

◆ TIMER3_CLEAR_CNT

#define TIMER3_CLEAR_CNT ( )    do{T3L = 0; T3H = 0;}while(0)

定时器3计数器重清零宏函数。

Timer 3 counter reset zero macro function.

◆ TIMER3_CLEAR_FLAG

#define TIMER3_CLEAR_FLAG ( )    do{ AUXINTIF &= 0xFD; }while(0)

定时器3清除中断请求标志位宏函数, 只有STC8A,STC8F需要清,STC8AxD4和其它STC8型号不需要清。

TIMER3 clears interrupt request flag bit macro function.

◆ TIMER3_WORK_CTRL

#define TIMER3_WORK_CTRL (   run)    do{ T4T3M = (T4T3M & 0xF7) | (run << 3)}while(0)

定时器3工作开关控制宏函数。

timer3 working switch control macro function.

参数
[in]run使能控制位。Enable control bit.

◆ TIMER4_CLEAR_CNT

#define TIMER4_CLEAR_CNT ( )    do{T4L = 0; T4H = 0;}while(0)

定时器4计数器重清零宏函数。

Timer 4 counter reset zero macro function.

◆ TIMER4_CLEAR_FLAG

#define TIMER4_CLEAR_FLAG ( )    do{ AUXINTIF &= 0xFB; }while(0)

定时器4清除中断请求标志位宏函数, 只有STC8A,STC8F需要清,STC8AxD4和其它STC8型号不需要清。

TIMER4 clears interrupt request flag bit macro function.

◆ TIMER4_WORK_CTRL

#define TIMER4_WORK_CTRL (   run)    do{ T4T3M = (T4T3M & 0x7F) | (run << 7)}while(0)

定时器4工作开关控制宏函数。

timer4 working switch control macro function.

参数
[in]run使能控制位。Enable control bit.

枚举类型说明

◆ TIMERMode_Type

枚举值
TIMER_16BitAutoReload 

十六位自动重装载模式。16 Bit auto reload timer.

TIMER_16Bit 

十六位手动重装载模式。16 Bit non auto reload timer.

TIMER_8BitAutoReload 

八位自动重装载模式。8 Bit auto reload timer.

TIMER_16BitAutoReloadNoMask 

十六位自动重装载不可被打断模式。16 Bit auto reload non maskable interrupt.

◆ TIMERTCycle_Type

枚举值
TIMER_TCY_1T 

1T指令周期。The machine executes 1 cycles.

TIMER_TCY_12T 

12T指令周期(其实是1T的十二分频)。The machine executes 12 cycles.

◆ TIMERType_Type

枚举值
TIMER_Type_Timer 

工作在定时器类型。Working on timer type.

TIMER_Type_Counter 

工作在计数器类型。Working on counter type.

函数说明

◆ NVIC_TIMER0_Init()

FSCSTATE NVIC_TIMER0_Init ( NVICPri_Type  pri,
BOOL  run 
)

定时器0中断初始化函数。

TIMER0 NVIC function.

参数
[in]pri中断优先级。interrupt priority.
[in]run使能控制位。enable control.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ NVIC_TIMER1_Init()

FSCSTATE NVIC_TIMER1_Init ( NVICPri_Type  pri,
BOOL  run 
)

定时器1中断初始化函数。

TIMER1 NVIC function.

参数
[in]pri中断优先级。interrupt priority.
[in]run使能控制位。enable control.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ NVIC_TIMER2_Init()

FSCSTATE NVIC_TIMER2_Init ( BOOL  run)

定时器2中断初始化函数。

TIMER2 NVIC function.

参数
[in]run使能控制位。enable control.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ NVIC_TIMER3_Init()

FSCSTATE NVIC_TIMER3_Init ( BOOL  run)

定时器3中断初始化函数。

TIMER3 NVIC function.

参数
[in]run使能控制位。enable control.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ NVIC_TIMER4_Init()

FSCSTATE NVIC_TIMER4_Init ( BOOL  run)

定时器4中断初始化函数。

TIMER4 NVIC function.

参数
[in]run使能控制位。enable control.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ TIMER0_Init()

FSCSTATE TIMER0_Init ( const TIMER_InitType timerx)

定时器0初始化函数。

TIMER0 peripheral init function.

参数
[in]timerx定时器初始化结构体句柄,初始化时请定义该句柄,并将其地址传参。 The timer initializes the structure handle. When initializing, please define the handle and pass its address to the parameter.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ TIMER0_Set_Time()

FSCSTATE TIMER0_Set_Time ( uint32_t  time)

定时器0设置定时时间函数。

Timer 0 sets the timing function.

参数
[in]time定时时间。timing.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ TIMER1_Init()

FSCSTATE TIMER1_Init ( const TIMER_InitType timerx)

定时器1初始化函数。

TIMER1 peripheral init function.

参数
[in]timerx定时器初始化结构体句柄,初始化时请定义该句柄,并将其地址传参。 The timer initializes the structure handle. When initializing, please define the handle and pass its address to the parameter.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ TIMER1_Set_Time()

FSCSTATE TIMER1_Set_Time ( uint32_t  time)

定时器1设置定时时间函数。

Timer 1 sets the timing function.

参数
[in]time定时时间。timing.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ TIMER2_Init()

FSCSTATE TIMER2_Init ( const TIMER_InitType timerx)

定时器2初始化函数。

TIMER2 peripheral init function.

参数
[in]timerx定时器初始化结构体句柄,初始化时请定义该句柄,并将其地址传参。 The timer initializes the structure handle. When initializing, please define the handle and pass its address to the parameter.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ TIMER2_Set_Time()

FSCSTATE TIMER2_Set_Time ( uint32_t  time)

定时器2设置定时时间函数。

Timer 2 sets the timing function.

参数
[in]time定时时间。timing.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ TIMER3_Init()

FSCSTATE TIMER3_Init ( const TIMER_InitType timerx)

定时器3初始化函数。

TIMER3 peripheral init function.

参数
[in]timerx定时器初始化结构体句柄,初始化时请定义该句柄,并将其地址传参。 The timer initializes the structure handle. When initializing, please define the handle and pass its address to the parameter.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ TIMER3_Set_Time()

FSCSTATE TIMER3_Set_Time ( uint32_t  time)

定时器3设置定时时间函数。

Timer 3 sets the timing function.

参数
[in]time定时时间。timing.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ TIMER4_Init()

FSCSTATE TIMER4_Init ( const TIMER_InitType timerx)

定时器4初始化函数。

TIMER4 peripheral init function.

参数
[in]timerx定时器初始化结构体句柄,初始化时请定义该句柄,并将其地址传参。 The timer initializes the structure handle. When initializing, please define the handle and pass its address to the parameter.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ TIMER4_Set_Time()

FSCSTATE TIMER4_Set_Time ( uint32_t  time)

定时器4设置定时时间函数。

Timer 4 sets the timing function.

参数
[in]time定时时间。timing.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.

◆ TIMER5_Wake_Up_Power()

FSCSTATE TIMER5_Wake_Up_Power ( uint16_t  value,
BOOL  run 
)

调电唤醒定时器5初始化函数。

Power up timer 5 initialization function.

参数
[in]time定时器5调电唤醒时间值。Timer power up time value.
[in]run定时器5调电唤醒运行控制位。Timer 5 power up operation control bit.
返回
FSC_SUCCESS 返回成功。Return to success.
FSC_FAIL 返回失败。Return to fail.