原创 【意法半导体 STM32 WL55】4、定时器的妙用

2025-5-25 13:15 1191 0 2 分类: MCU/ 嵌入式 文集: 试用活动

PWM(脉冲宽度调制)技术通过调控LED的导通时间,即信号周期中的占空比,实现了LED亮度的精细调节,从而巧妙地创造出呼吸灯效果。该技术融合了LED对电流变化的敏感响应特性与人眼的视觉暂留效应,是电子工程领域中的一项经典且极具实用价值的技术。作为深入学习开发板PWM功能与定时器应用的理想切入点,PWM技术通过精确控制占空比,使得LED亮度能够连续、平滑地变化,模拟出如呼吸般自然的亮度循环。实现这一效果的关键在于定时器的精准定时功能,它负责精确控制PWM信号的周期与占空比。通过设定定时器的计数值与重装载值,可以精确确定PWM信号的周期长度,并通过调整周期内输出电平的时间来改变占空比,进而实现对LED亮度的精确控制。

硬件方面用到就是GPIO章节的LED(红灯),我们这次通过定时器的基本定时功能和高级应用PWM实现红灯的呼吸灯效果。

LED_RED配置为TIM2_CH4:

截图.png

接下来打开定时器2和通道4,并配置为PWM输出:

image.png

然后是进行定时器参数的配置:

image.png

接下来配置定时器16为基本定时器:

image.png

定时10ms,用于修改占空比。

我们在初始化阶段需要启动定时器:


HAL_TIM_Base_Start_IT(&htim16);

HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_4);

__HAL_TIM_SetCompare(&htim2,TIM_CHANNEL_4,0);


接下来就是软件功能的实现,LED的呼吸灯效果:


void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)

{

if (htim->Instance == TIM16) {

HAL_IncTick();

if(LED_ChangeFlag == 1)

{

Tim_cnt++;

if(Tim_cnt <= 100){

__HAL_TIM_SetCompare(&htim2,TIM_CHANNEL_4,Tim_cnt*1);

}

else if(Tim_cnt > 100 && Tim_cnt <= 200){

__HAL_TIM_SetCompare(&htim2,TIM_CHANNEL_4,(200-Tim_cnt)*1);

}

else if(Tim_cnt>=200)

Tim_cnt = 0;

}

}

}


效果如下:

3.gif

作者: 无言的朝圣, 来源:面包板社区

链接: https://mbb.eet-china.com/blog/uid-me-4014618.html

版权声明:本文为博主原创,未经本人允许,禁止转载!

PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

人生折腾 2025-6-9 09:04

这个开发板没有申请,感觉错过了几个亿
相关推荐阅读
无言的朝圣 2025-05-25 20:42
【意法半导体 STM32 WL55】5、IIC的应用
IIC作为一种常用的串行接口,广泛应用于传感器驱动等领域。本次项目利用IIC接口驱动一款Seeed品牌的小型OLED显示模块,该模块具备128x64像素的分辨率及0.96英寸的屏幕尺寸,属于单色显示...
无言的朝圣 2025-05-25 11:21
【意法半导体 STM32 WL55】3、GPIO输入输出测试
在上一篇章中,我们旨在验证程序的实用性,借助LED(即引脚输出)作为测试媒介。LED与按钮的验证,实质上是对GPIO输入输出功能的实践探索。此开发板在按键与LED控制方面颇为丰富,因此我们选用了三个...
无言的朝圣 2025-05-25 08:51
【意法半导体 STM32 WL55】2、配置开发环境并验证
本次依然使用我们常用的开发方式进行,STM32CubeMX+Keil。一个用于初始化代码生成,一个用于编辑调试。 现在推荐的基本上都是基于HAL库的,基本都要通过STM32CubeMX进行生成,我们...
无言的朝圣 2025-05-13 09:47
【意法半导体 STM32 WL55】1、开箱+介绍
感谢面包板论坛组织的本次测评活动,本次测评的对象是STM32WL Nucleo-64板 (NUCLEO-WL55JC) ,该测试板专为LoRa™应用原型构建,基于STM32WL系列sub-...
无言的朝圣 2024-12-27 14:50
【工程师故事】2024即将过去,未来可期
一、前言 回首2024,对于我而言,是充满挑战与收获的一年。在这一年里,我积极参与了论坛的众多活动,不仅拓宽了我的认知边界(有些东西不是你做不到,而是你想不到),还让我在实践中收获了宝贵的经验和。同时...
我要评论
1
0
关闭 站长推荐上一条 /3 下一条