泰凌微TLSR825X开发十 定时器

本文详细介绍了泰凌微处理器中硬件定时器Timer0~Timer2的配置与使用,包括四种工作模式,如系统时钟模式、GPIO触发模式等。同时提到了看门狗定时器Timer2的特性以及在休眠状态下的行为。此外,还阐述了软件定时器的原理和应用场景,它是基于systemtick的非精确定时器,适用于资源有限和非精确延迟的场景。最后,给出了硬件和软件定时器的代码实例以及中断处理函数。
该文章已生成可运行项目,
前言

泰凌微的定时器可以应用在计时、电平测量、脉冲捕捉等方面,本章主要讲解下硬件定时器与软定时器的配置使用
如有异议,欢迎留言指正

特性
  • 硬件定时器支持Timer0~Timer2
  • 支持四种模式
    • 系统时钟模式(System Clock)
    • GPIO触发模式(脉冲数捕捉)
    • GPIO脉宽模式(脉冲宽度捕获)
    • 计时模式(Tick)
  • 定时器Timer2可用于看门狗计时
  • 休眠状态下定时器停止计时
寄存器组
  • Wd_status:地址0x72,看门狗复位状态寄存器,最低位为1时为看门狗复位状态,写1清除
  • TMR_CTRL0:地址0x620,控制寄存器0,配置定时器使能位与模式选择
  • TMR_CTRL[1~2]:地址0x621~0x622, 看门狗比较计数配置
  • TMR_STATUS:地址0x623,Timer0~2与wdog状态寄存器,写1清除状态
  • TMR_CAPT0_[0~3]:地址0x624~0x627, timer0 4字节捕获寄存器
  • TMR_CAPT1_[0~3]:地址0x628~0x62b,timer1 4字节捕获寄存器
  • TMR_CAPT2_[0~3]:地址0x62c~0x62f,timer2 4字节捕获寄存器
  • TMR_TICK0_[0-3]:地址0x630~0x633,timer0 4字节tick寄存器
  • TMR_TICK1_[0-3]:地址0x634~0x637,timer1 4字节tick寄存器
  • TMR_TICK2_[0-3]:地址0x638~0x63b,timer2 4字节tick寄存器
硬件定时器
代码实例

参考SDK中app_timer.c中的例程代码讲解

  • 定时器初始化,封装好的API接口可以查看驱动目录下的timer.c
void app_timer_test_init(void)
{
   
   
    //timer0 配置
    reg_irq_mask |= FLD_IRQ_TMR0_EN;//使能timer0中断
    reg_tmr0_tick = 0; //tick清0
    reg_tmr0_capt = 100 * CLOCK_SYS_CLOCK_1MS;//100ms定时
    reg_tmr_sta = FLD_TMR_STA_TMR0; //清中断状态
    reg_tmr_ctrl |= FLD_TMR0_EN;  //使能定时器0  
    //timer1 配置
    reg_irq_mask |= FLD_IRQ_TMR1_EN;//使能timer1中断
    reg_tmr1_tick = 0; //tick清0
    reg_tmr1
本文章已经生成可运行项目
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值