05- 定时器

定时器

定时器

5.1 独立看门狗定时器

描述:

独立看门狗的寄存器:

独立看门狗的配置步骤:

看门狗计时时间的计算:

使用的库函数:

在1秒内按键喂狗,否则复位。初始化时LED为灭,while中点亮,如果复位则灯闪烁,喂狗后灯一直亮。

Iwdog.h文件(条件编译在预编译时实现)

Iwdog.c文件

主函数:

5.2 窗口看门狗

计数值递减,B段是窗口,

<1>当计数值递减在A段时喂狗,会产生复位信号;

<2>当计数值由0x40h减1到了0X3Fh时(T6位变为0)还没有喂狗,会产生喂狗信号。

看门狗有什么作用?

窗口看门狗超时时间计算:

窗口看门狗的配置过程:

设置窗口值时,窗口值是7位,所以存在8位值->7位的变换,使用&运算。(黄色标记部分)

主函数:

5.3 通用定时器

三种定时器:

定时器的时钟来源:

定时器的时钟默认选择的是系统内部时钟,内部时钟的选择:

计数器的时钟频率与内部时钟的关系:



预分频寄存器:

具体的定时器结构和工作过程可以参看《stm32中文参考手册》

示例

例1 定时器中断

要求:每500ms中断一次,中断服务函数控制LED状态取反,实现LED灯闪烁。

定时器参数初始化的库函数:

定时器中断实现步骤:

定时器参数计算:

根据要求,Tout=500ms,由于系统的时钟频率为72MHz,如果设置APB1的频率是AHB的2分频,即36MHz,此时就要考虑APB1的分频系数了,

<1>分频系数为1,即不分频,则输出的CK_PSC=36MHZ,即Tclk=36MHz;

<2>分频系数为2或其他值,则CK_PSC=APB12,即,Tclk=APB1 2。

由于系统函数程序中默认的是APB1=36MHz,次处设置APB1的分频系数是2,所以根据前面的介绍得出,Tclk=72MHz。ARR和PSC的值只要不超出16位二进制数转十进制数的值的范围,合理即可,当然方便理解和计算最好。

timer.c文件

定时器初始化函数

定时器中断服务函数:

主函数:

例2 PWM输出控制LED渐明渐暗

PWM输出是通过定时器TIMER中的设定值与计时值比较大小输出不同的电平。

工作过程:

PWM模式1和PWM模式2的区别:

PWM模式:

自动重转载寄存器:

PWM输出的库函数:

PWM输出的配置步骤:

示例程序:


如果使用的是高级定时器的话,必须使能这个:

例 3 引脚电平输入捕获

以通道1为例,介绍输入捕获的工作原理:

由上面的框图,分解介绍

<1>设置输入捕获滤波器:

TIMx_CR1->CKD:

捕获/比较模式寄存器TIMx_CCMR->IC1F设置采样的频率:

<2>设置输入捕获极性:

<3>设置输入捕获映射通道(通道1为例):

上面说到的映射到TI1和TI2上,如下图所示:

<4>设置输入捕获分频寄存器:

<5>捕捉到有效信号后使能中断

输入捕获相关库函数:

通道极性设置独立函数:

获取通道捕获值:

输入捕获的一般配置步骤:

使用PA0和TIM5的通道1

代码:

将结构体定义在了程序外,其它初始化与之前的类似。

定义了两个变量记录输入

中断服务函数:

主函数:

相关推荐
爱编码的小八嘎9 小时前
C语言完美演绎9-29
c语言
iCxhust10 小时前
8088单板机DIY---机体激活,聆听另一个世界的声音(三)
单片机·嵌入式硬件·微机原理·8088单板机
csdn_aspnet10 小时前
单片机IO不够?ULN2003A救急方案,结合STM32/ESP32实战案例,讲透达林顿阵列在IoT硬件中的高效复用
stm32·单片机·物联网·esp32·iot·uln2003a
时空自由民.19 小时前
STM32配置Timer+DMA读取ADC数据
stm32·单片机·嵌入式硬件
华普微HOPERF20 小时前
数字隔离器,如何确保MCU不受储能系统中的高电压、大电流影响?
单片机·嵌入式硬件
搁浅小泽21 小时前
常用电子元器件
单片机·嵌入式硬件·可靠性工程师
Dlrb12111 天前
C语言-指针数组与数组指针
c语言·数据结构·算法·指针·数组指针·指针数组·二级指针
坚果派·白晓明1 天前
【鸿蒙PC三方库移植适配框架解读系列】第一篇:Lycium C/C++ 三方库适配 — 概述与环境配置
c语言·开发语言·c++·harmonyos·开源鸿蒙·三方库·c/c++三方库
三佛科技-187366133971 天前
FT60E211-RB省成本,提效率!IO型8位单片机智能家居产品应用解析
单片机·嵌入式硬件·智能家居
ghie90901 天前
基于 STM32 + LDC1000 电感传感器的金属循迹三轮车程序
stm32·单片机·嵌入式硬件