登录
/
注册
首页
资讯
论坛
用户名
Email
自动登录
找回密码
密码
登录
立即注册
只需一步,快速开始
登录
注册
主页
Portal
论坛
BBS
MCU资讯
MCU技术
硬件设计
教程下载
搜索
Help
发帖
设置
我的收藏
退出
How to Use Exclusive Brainrots in Steal A Brainrot
U4GM - Meditite Training Spots in Pokémon Legends: Z-A
u4gm: How Beginners Can Play the Witch Effectively in Path o
4
u4gm: Diablo 4 Season 10 Druid Infinite Poison Stacking
5
u4gm: Mana Shield Completely Changes the Game Experience in
6
u4gm: The Betrayal and Downfall of a Gang Antagonist in GTA
全部
搜索
首页
首页
›
MCU技术交流
›
STM32专区
发布主题
返回列表
《PWM呼吸灯制作》 🔧 分步操作指南
2
回复
131
查看
[ 复制链接 ]
MCU专家
当前离线
积分
185
MCU专家
45
主题
7
回帖
185
积分
注册会员
注册会员, 积分 185, 距离下一级还需 15 积分
注册会员, 积分 185, 距离下一级还需 15 积分
积分
185
发消息
2025-6-24 15:27:46
显示全部楼层
阅读模式
《PWM呼吸灯制作》
🔧 分步操作指南
CubeMX配置
打开TIM3→Channel2→PWM Generation CH2
参数设置:
[backcolor=var(--ds-md-code-block-banner-wrap-background-color)][color=var(--dsr-text-2)]
text
[color=var(--dsr-icon-fg-1)][color=var(--button-text-color)][backcolor=var(--ds-button-color)]
[color=var(--button-icon-color)]
复制
[color=var(--button-text-color)][backcolor=var(--ds-button-color)]
[color=var(--button-icon-color)]
下载
Prescaler: 72-1 Counter Period: 1000-1 Pulse: 0 (初始占空比0%)
收藏
送赞
分享
回复
举报
MCU专家
当前离线
积分
185
MCU专家
45
主题
7
回帖
185
积分
注册会员
注册会员, 积分 185, 距离下一级还需 15 积分
注册会员, 积分 185, 距离下一级还需 15 积分
积分
185
发消息
2025-6-24 15:28:11
楼主
显示全部楼层
代码添加
c
HAL_TIM_PWM_Start(&htim3, TIM_CHANNEL_2); // 启动PWM
while(1) {
for(int i=0; i<1000; i++) {
__HAL_TIM_SET_COMPARE(&htim3, TIM_CHANNEL_2, i);
HAL_Delay(1); // 每1ms增加一次亮度
}
}
回复
举报
MCU专家
当前离线
积分
185
MCU专家
45
主题
7
回帖
185
积分
注册会员
注册会员, 积分 185, 距离下一级还需 15 积分
注册会员, 积分 185, 距离下一级还需 15 积分
积分
185
发消息
2025-6-24 15:28:30
楼主
显示全部楼层
原理解析
PWM就像快速开关的水龙头,调节亮度的秘密在于改变"开"和"关"的时间比例
💥 高频错误
现象 原因 解决
无PWM输出 未启动时钟/GPIO未配置 检查__HAL_RCC_TIM3_CLK_ENABLE()
呼吸不平滑 HAL_Delay精度不够 改用SysTick定时器
回复
举报
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
快来评论吧
0
0
搜索
搜索
本版
文章
帖子
用户
活动
交友
discuz