打印

STM32H7的低功耗定时器超时函数HAL_LPTIM_TimeOut_Start_IT使用注意事项

[复制链接]
758|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
3月的尾巴|  楼主 | 2018-8-10 08:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
函数:
void bsp_StartLPTIM(void)
{
        /*
           ARR是自动重装寄存器,对应函数HAL_LPTIM_TimeOut_Start_IT的第2个参数
           Compare是比较寄存器,对应函数HAL_LPTIM_TimeOut_Start_IT的第3个参数

           ---------------------
           LSE = 32768Hz
           分频设置为LPTIM_PRESCALER_DIV8,即8分频(函数bsp_InitLPTIM里面做的初始化配置)
           ARR自动重载寄存器 = 32768
           实际测试发现溢出中断与ARR寄存器无关,全部由第3个参数,Compare寄存器决定
        
           LPTIM的计数器计数1次的时间是 1 / (32768 / 8) = 8 /32768。
           第三个参数配置的是32767,那么计数到32767就是 (32767 + 1)*(8 /32768) = 8秒,计算的时候要加1。
        */
        if (HAL_LPTIM_TimeOut_Start_IT(&LptimHandle, 0, 32767) != HAL_OK)
        {
                Error_Handler(__FILE__, __LINE__);
        }
}

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

433

主题

433

帖子

0

粉丝