CI13LC SDK API手册  2.1.1
本手册用于描述CI13LC SDK各个组件和驱动API
结构体 | 宏定义 | 枚举 | 函数
ci13lc_timer

CI13LC芯片TIMER驱动 更多...

结构体

struct  timer_init_t
 timer配置结构体定义 更多...
 

宏定义

#define TIMER_S_COUNT   (get_apb_clk())
 
#define TIMER_MS_COUNT   (get_apb_clk() / 1000)
 

枚举

enum  timer_base_t {
  TIMER0 = HAL_TIMER0_BASE,
  TIMER1 = HAL_TIMER1_BASE
}
 TIMER控制器定义 更多...
 
enum  timer_count_mode_t {
  timer_count_mode_single = 0,
  timer_count_mode_auto = 1,
  timer_count_mode_free = 2,
  timer_count_mode_event = 3
}
 计数模式定义 更多...
 
enum  timer_clock_div_t {
  timer_clk_div_0 = 0,
  timer_clk_div_2 = 1,
  timer_clk_div_4 = 2,
  timer_clk_div_16 = 3
}
 分频系数定义 更多...
 
enum  timer_iqr_width_t {
  timer_iqr_width_f = 0,
  timer_iqr_width_2 = 1,
  timer_iqr_width_4 = 2,
  timer_iqr_width_8 = 3
}
 中断信号宽度定义 更多...
 
enum  timer_clk_sel_t {
  timer_clk_pclk = 0,
  timer_clk_exit = 1
}
 时钟选择 更多...
 

函数

void timer_init (timer_base_t base, timer_init_t init)
 定时器初始化 更多...
 
void timer_set_mode (timer_base_t base, timer_count_mode_t mode)
 设置计数模式 更多...
 
void timer_start (timer_base_t base)
 启动定时器 更多...
 
void timer_stop (timer_base_t base)
 暂停定时器 更多...
 
void timer_event_start (timer_base_t base)
 事件计数(必须处于事件计数模式下) 更多...
 
void timer_set_count (timer_base_t base, unsigned int count)
 设置计时周期 更多...
 
void timer_get_count (timer_base_t base, unsigned int *count)
 获取当前计数值 更多...
 
void timer_cascade_set (timer_base_t base, unsigned int count)
 设置级联时钟计数模式 更多...
 
void timer_clear_irq (timer_base_t base)
 清除中断 更多...
 

详细描述

CI13LC芯片TIMER驱动


结构体说明

◆ timer_init_t

struct timer_init_t

timer配置结构体定义

成员变量
timer_clk_sel_t clk_sel

计数时钟来源选择

unsigned int count

计数值

timer_clock_div_t div

时钟分频系数

timer_count_mode_t mode

计数模式

timer_iqr_width_t width

中断信号宽度

宏定义说明

◆ TIMER_MS_COUNT

#define TIMER_MS_COUNT   (get_apb_clk() / 1000)

计时1ms的count值

◆ TIMER_S_COUNT

#define TIMER_S_COUNT   (get_apb_clk())

计时1s的count值

枚举类型说明

◆ timer_base_t

TIMER控制器定义

枚举值
TIMER0 

TIMER0控制器

TIMER1 

TIMER1控制器

◆ timer_clk_sel_t

时钟选择

枚举值
timer_clk_pclk 

TIMER的计数时钟来源于pclk

timer_clk_exit 

TIMER的计数时钟来源于晶振时钟

◆ timer_clock_div_t

分频系数定义

枚举值
timer_clk_div_0 

不分频

timer_clk_div_2 

2分频

timer_clk_div_4 

4分频

timer_clk_div_16 

16分频

◆ timer_count_mode_t

计数模式定义

枚举值
timer_count_mode_single 

单周期模式

timer_count_mode_auto 

自动重新计数模式

timer_count_mode_free 

自由计数模式

timer_count_mode_event 

事件计数模式

◆ timer_iqr_width_t

中断信号宽度定义

枚举值
timer_iqr_width_f 

由 TIMER_CFG1[CT]清除

timer_iqr_width_2 

2 个时钟周期

timer_iqr_width_4 

4 个时钟周期

timer_iqr_width_8 

8 个时钟周期

函数说明

◆ timer_cascade_set()

void timer_cascade_set ( timer_base_t  base,
unsigned int  count 
)

设置级联时钟计数模式

注解
以TIMERO作为基础的级联:TIMER0/1
参数
base外设基地址TIMER1
count计数值

◆ timer_clear_irq()

void timer_clear_irq ( timer_base_t  base)

清除中断

参数
base外设基地址TIMER0/TIMER1

◆ timer_event_start()

void timer_event_start ( timer_base_t  base)

事件计数(必须处于事件计数模式下)

参数
base外设基地址TIMER0/TIMER1

◆ timer_get_count()

void timer_get_count ( timer_base_t  base,
unsigned int *  count 
)

获取当前计数值

参数
base外设基地址TIMER0/TIMER1
count当前计数值

◆ timer_init()

void timer_init ( timer_base_t  base,
timer_init_t  init 
)

定时器初始化

参数
base外设基地址TIMER0/TIMER1
init初始化结构体

◆ timer_set_count()

void timer_set_count ( timer_base_t  base,
unsigned int  count 
)

设置计时周期

参数
base外设基地址TIMER0/TIMER1
count计数周期

◆ timer_set_mode()

void timer_set_mode ( timer_base_t  base,
timer_count_mode_t  mode 
)

设置计数模式

参数
base外设基地址TIMER0/TIMER1
modetimer_mode_single/timer_mode_auto/timer_mode_free/timer_mode_event

◆ timer_start()

void timer_start ( timer_base_t  base)

启动定时器

参数
base外设基地址TIMER0/TIMER1

◆ timer_stop()

void timer_stop ( timer_base_t  base)

暂停定时器

参数
base外设基地址TIMER0/TIMER1