1. 什么是时钟以及作用
1.1 什么是时钟
1.2 时钟对于STM32的作用
2. 关于Sys_Tick 定时器
Sys_Tick 是 ARM Cortex-M4 内核的一部分, 他提供24位递减计数器, 可以用来生成周期性的中断,适合用来左滴答定时器或者提供时间基准
2.1 Sys_Tick 定时器配置步骤
函数来配置SysTick定时器的重载值
,该值基于系统时钟频率和中断频率所需的值来确定
我这里设置的是1ms中断一次(STM32F4 的系统时钟是100MHZ 一个时钟周期有 1 / 100 000 000 s 也就是10 ns ,实现1ms 需要 100 000 个 10ns )
2. 选择时钟源 : 选择SysTick的时钟源 , 一般选择系统时钟
2. 中断使能
2.2 使用 SysTick 实现毫秒级定时器以及延时
2.3 使用 SysTick 实现微秒级定时器以及延时
这里的关键是SysTick是递减计数的 , 并在到达零时重置和触发中断 cycle_cnt 变量存储的时从前的计数器值到下一个零点的周期数 , 这个值要用 SysTick定时器的重载值减去 才是已经过去的时钟周期数
3. 完整代码
3.1 Delay.h
3.1 Delay.c
3.3 void SysTick_Handler(void)
位于
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。