使用STM32和HAL库实现呼吸灯效果
创作时间:
作者:
@小白创作中心
使用STM32和HAL库实现呼吸灯效果
引用
1
来源
1.
https://www.cnblogs.com/hack747/p/18508491
本文将介绍如何使用STM32F103C8微控制器和HAL库实现呼吸灯效果。通过配置通用定时器生成PWM信号,可以控制LED的亮度变化,实现渐亮渐灭的效果。
硬件环境
- 开发板:STM32F103C8
- 仿真软件:Proteus 8
- 开发平台:STM32CubeMX + Keil
1. 新建STM32CubeMX工程
1.1 配置系统时钟RCC
1.2 配置定时器
这里使用PB3和PA15一对引脚。在TIM2定时器中,选择内部时钟作为时钟源,并配置通道1和通道2为PWM输出模式。
2. 代码实现
2.1 定义变量
uint16_t pulse=0; /*占空比,重装载值设置为999*/
uint8_t flag=1; /*LED标志位,用于判断是渐亮还是渐灭*/
2.2 主函数
int main(void)
{
/* USER CODE BEGIN 1 */
/* USER CODE END 1 */
/* MCU Configuration--------------------------------------------------------*/
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
HAL_Init();
/* USER CODE BEGIN Init */
/* USER CODE END Init */
/* Configure the system clock */
SystemClock_Config();
/* USER CODE BEGIN SysInit */
/* USER CODE END SysInit */
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_TIM2_Init();
/* USER CODE BEGIN 2 */
//启动定时器2通道1的PWM
HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_1);
//启动定时器2通道2的PWM
HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_2);
uint16_t pulse=0; /*占空比,重装载值设置为999*/
uint8_t flag=1; /*LED标志位,用于判断是渐亮还是渐灭*/
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
if (flag==1) /*执行LED渐亮*/
{
if (pulse<1000)
{
pulse+=50; /*占空比增大*/
__HAL_TIM_SET_COMPARE(&htim2,TIM_CHANNEL_1,pulse); /*修改占空比*/
HAL_Delay(100);
}
else
flag=0; /*切换为渐灭模式*/
}
else /*执行LED渐灭*/
{
pulse-=50; /*占空比减小*/
__HAL_TIM_SET_COMPARE(&htim2,TIM_CHANNEL_1,pulse); /*修改占空比*/
HAL_Delay(100);
if (pulse==0)
{
flag=1; /*切换为渐亮模式*/
}
}
}
}
通过上述配置和代码实现,可以成功实现LED的呼吸灯效果。这个项目展示了如何使用STM32的通用定时器生成PWM信号,并通过软件控制实现LED的渐亮渐灭效果。
热门推荐
LOL2025赛季厄塔汗BUFF属性效果介绍
社保基金投运保持稳健
逾期未退的包装物押金收入需要交增值税吗?以什么税率缴税
灭菌监测必备知识之生物指示剂的分类及应用
几块钱的矿泉水,喝了真能补充矿物质吗?一文揭晓答案
名字的秘密:河大明伦校区的大礼堂被烧毁了,“明伦”会幸免吗?
希腊地图 - 希腊地图高清版 - 希腊地图中文版
横突骨折怎样恢复得快
复旦大学文学院中文系中国古典文献学的研究生培养方案
咽喉疾病挂什么科
如何配置RAID 5硬盘
股票市场交易时机把握:如何把握交易时机
《哪吒 2》热映:敖丙他爹凭啥火出圈?
怎么查驾照分数
我国商业健康险行业保费收入破九千亿 医保+商保数据互通或提高赔付率
7点起床的最佳入睡时间是几点?
红麴是什么?功效与风险全解析
证券账户各类交易权限开通要求大全,值得收藏!创业板/科创板/北交所/港股通
獾油的作用及功效
DC暗黑双雄崛起:贝恩与丧钟联手打造反派电影新纪元
嗓子咳嗽都是黄痰?原因分析与应对指南
文件或目录损坏且无法读取怎么办?4个方法帮您恢复文件
《决胜巅峰》新手上分英雄推荐:射手篇
如何找到适合自己的科研导师?
智能充电器真的伤电池吗?
图像修复技术全面解析:从理论到实践的关键技术详解
如何通过成交量分析股票市场的热度
孩子打嗝怎么办?五种实用止嗝方法
总部经济与CBD发展:全球经验与中国实践
课题申报书中的“国内外研究进展”部分怎么写?