解决stm8s配置timer2中断时间不准
问题描述:项目工程基于stm8s003芯片,以定时器2为例,定时器初始化后,发现第一次进入中断的时间不是设定的值,似乎是立即进入了中断。后面的中断时间就正常了。实际首次进入中断时间可以通过设置GPIO电平变化,用示波器测量得到。项目中由于在处理超声波测距时使用定时器来计数定时中断,初始化过程中偷偷的触发了中断导致第一次测距出现了误差。问题分析:软件规避:配置定时器时,先关闭更新中断,死等中断标志,清除标志后再开中断即可,跳过第一次的中断发生。根本原因:当然是翻官方datasheet,查看time