【STM32】定时器

1.定时器概念

定时器实现也是依靠中断实现

定时器分为

嘀嗒定时器:在STM32操作系统中可以用到

基本定时器:TIM6 TIM7 (定时)

通用定时器:TIM2-TIM5 (测量PWM)

高级定时器:TIM1 TIM8 (电机,数字电源)

定时器本质就是计数器

我们在stmcubemx里面设置最大频率为100MHZ

假如说我们要定时500ms,500ms进行一次中断,执行中断执行函数

这个我们使用通用定时器,TIM2最大计数为65536

我们计算出来计数需要50 000000,

此时我们需要预分频器,分配后小于65536,

实现500ms翻转灯引脚电平实现闪烁

1.stm32cubemx配置



2.配置GPIOB

直接展示代码了,没有什么可说的

c 复制代码
void MY_LED_Init(void)
{


   __HAL_RCC_GPIOB_CLK_ENABLE();  //开启GPIOB时钟
   GPIO_InitTypeDef GPIO_INIT;
   GPIO_INIT.Mode=GPIO_MODE_OUTPUT_PP;   //设置推挽模式
	 GPIO_INIT.Pin=GPIO_PIN_10;            //设置LED  十号引脚
	 GPIO_INIT.Pull=GPIO_NOPULL;           //不设置上下拉
	 GPIO_INIT.Speed=GPIO_SPEED_FREQ_LOW;  //设置低
	 HAL_GPIO_Init(GPIOB,&GPIO_INIT);
   


}

gpio.h声明一下

2.开启定时器


参数为哪一个定时器

3.处理中断函数

所有的中断函数名都在

启动文件中


跳转一下


需要我们自己实现

4.演示

相关推荐
Zevalin爱灰灰6 小时前
能源与电源管理电路——防倒灌电路
单片机·嵌入式硬件·电源管理
jianqiang.xue9 小时前
ESP-IDF保姆级入门02|Ubuntu24.04搭建EIM-GUI开发环境,打通Windows_Linux双平台统一开发
stm32·单片机·物联网
无垠的广袤9 小时前
【工业树莓派 CM0 Dev Board】扩展板设计
linux·python·嵌入式硬件·pcb设计·模块化·传感器
嵌入式-老费10 小时前
esp32开发与应用(添加数据分区)
单片机·嵌入式硬件
嵌入式-老费10 小时前
esp32开发与应用(OTA升级)
嵌入式硬件
CYLAM202513 小时前
STC32G 单片机0.96“OLED 西历农历可调万年历 (1901-2100)
单片机·嵌入式硬件·stc32g·万年历·西历农历·0.96”oled 12864·4x4 矩阵键盘
Discipline~Hai14 小时前
ARM03-蜂鸣器和中断
c语言·arm开发·单片机·嵌入式硬件·嵌入式
KaifuZeng14 小时前
电源面试问题汇总一
单片机·嵌入式硬件·面试·电路
驱动探索者16 小时前
RISC-V PLIC 深度解析:从 Spec 到 Zephyr 驱动实现
单片机·嵌入式硬件·中断控制器
LCG元16 小时前
STM32 FreeRTOS 实战:任务调度 + 互斥锁 + 消息队列 + 串口命令解析器
stm32·单片机·嵌入式硬件