STM32的滴答时钟怎么设置延时时间?

2025-10-31 16:05:26

1、  首先创建STM32工程,本文以简单的点亮LED及其闪烁实例为例,给大家介绍怎么用滴答定时器(SysTick),编写简单延时程序(就要用51一样的延时)。

STM32的滴答时钟怎么设置延时时间?

2、  新建两个文件delay.c和delay.h,添加到工程中。

STM32的滴答时钟怎么设置延时时间?

3、    SysTick 是一个 24 位的倒计数定时器,当计到 0 时,将从 RELOAD 寄存器中自动重装载定时初值。当 SysTick 控制及状态寄存器中的使能位永不清除时,SysTick 就将永不停止的进行计数。下面是关于它的寄存器关键位介绍。

STM32的滴答时钟怎么设置延时时间?

1、第一步:首先确定时钟源(本例为72Mhz),滴答时钟的时钟为系统源时钟的8分频;

STM32的滴答时钟怎么设置延时时间?

2、第二步:算出各个时间所占的时钟份数,比如说:1ms占72000000/8/1000 =9000这么多个时钟周期;所以要延时10ms需要10*9000=90000个时钟周期。(1ms = 1/1000s)

3、第三步:对各个寄存器进行操作。(重装寄存器,当前计数寄存器,控制及状态寄存器);判断计数为零的时候,停止循环,就达到了延时的目的。

STM32的滴答时钟怎么设置延时时间?

1、   LED引脚端口初始化。

STM32的滴答时钟怎么设置延时时间?

2、  主函数完善:延时初始化,LED管脚初始化,while循环(LED0隔400毫秒闪烁)

STM32的滴答时钟怎么设置延时时间?

1、程序下载,最终效果图。效果如理想一样隔400毫秒闪烁。

STM32的滴答时钟怎么设置延时时间?

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢