在stm32调试过程中加入一个延时,有两种方式:一种是纯计数方式,另一种是使用系统计数器的方式。
现使用系统计数器产生中断的方式实现,查阅STM32的编程手册可知,STM32有一个24bit的系统计时器,并有STK_CTRL、STK_LOAD、STK_VAL、STK_CALIB寄存器供读写配置。
本文介绍了在STM32开发中如何利用系统计数器实现精确延时,通过配置STK_CTRL、STK_LOAD、STK_VAL、STK_CALIB寄存器,并结合CORTEX_M3的库函数,来设置不同周期的延时。当系统时钟为72MHz时,可以通过设置ticks值来控制延时时间,如ticks=72,000,000对应1s,ticks=72,000对应1ms,ticks=72对应1us。通过在中断服务程序中自减计数,确保延时精度。"
116175488,10073026,LeetCode 动态规划解题心得:1011. 在 D 天内送达包裹的能力,"['算法', '动态规划', '二分查找', 'LeetCode', 'Java']
在stm32调试过程中加入一个延时,有两种方式:一种是纯计数方式,另一种是使用系统计数器的方式。
现使用系统计数器产生中断的方式实现,查阅STM32的编程手册可知,STM32有一个24bit的系统计时器,并有STK_CTRL、STK_LOAD、STK_VAL、STK_CALIB寄存器供读写配置。
1395
6724
2211

被折叠的 条评论
为什么被折叠?