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

[复制链接]
1100|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

粉丝
快速回复 在线客服 返回列表 返回顶部