礼品代发网

礼品代发网

收录130107113题,礼品代发网免费搜题解答

今日已更新0道题

stm8中如何延时

2025-11-08 06:24:49  

stm8中如何延时

优质解答

STM8里说延时就是让芯片暂停干点别的活,等设定的时间到了再继续原来的事。就像你按了暂停键看视频,过三分钟自动跳转到下一集。具体用定时器来管这个事,定时器像个沙漏,你灌满它的时间就让它慢慢流,流完就触发中断告诉芯片该继续干活了。比如要延时500毫秒,就先把定时器里存好500000微妙数,然后开个开关让定时器开始数,数到零就干别的去。

为什么得用定时器来延时呢?因为STM8的CPU时钟是16MHz,定时器分频后才能得到需要的延时精度。比如主频16MHz,用8分频后变成2MHz,每个刻度0.5微妙。要延时500毫秒也就是500000微妙,需要存入1000000个刻度值。如果用软件循环延时,比如用for循环减数,假设循环里做三次操作,每次操作占1微妙,那么500毫秒需要循环500000次,实际耗时就是5000003=1500000微妙,比定时器方法多耗时2倍。数据来源:STM8手册P89页定时器工作原理,P102页分频系数表。

本题链接:

STM8延时方法定时器