【亲测免费】 STM32 HAL库单脉冲模式PWM输出示例
2026-01-24 05:49:50作者:尤辰城Agatha
项目描述
本项目提供了一个基于STM32F103C8T6单片机的HAL库单脉冲模式PWM输出示例。通过使用Keil MDK 5.32版本,本示例展示了如何配置定时器2和定时器3来实现PWM信号的输入捕获和输出控制。
主要功能
-
定时器2配置:
- 采用PWM输入捕获模式,复位从模式(触发则复位CNT寄存器)。
- 通道1(PA0)设置为上升沿触发,IC1上升沿捕获,IC2下降沿捕获。
- 开启IC1捕获中断。
- 分频为7200,计一个数为0.1ms,重装载值为65535。
-
定时器3配置:
- 采用PWM输出模式,触发从模式(触发则使能定时器)。
- 通道2(PA7)设置为下降沿触发,OC1(PA6)为PWM输出模式。
- 分频为7200,计一个数为0.1ms,重装载值为100,CCR1寄存器为50。
- 输出PWM波周期为10ms,占空比为50%。
- 定时器3在单脉冲模式下工作,发生更新事件则失能定时器,即10ms后失能定时器。
-
单脉冲模式:
- 负责失能定时器。
- 触发从模式(通道2 PA7检测到上升沿信号)负责使能定时器。
-
LED控制:
- PC13控制LED灯,每50ms亮灭一次。
硬件连接
- 使用杜邦线连接PA0和PA6。
- 使用杜邦线连接PA7和PC13。
输出波形分析
通过上述配置,输出的PWM波高电平持续时间为95ms,低电平为5ms。可以通过绘制波形图来进一步分析。
注意事项
- 确保硬件连接正确,避免短路或其他硬件故障。
- 根据实际需求调整定时器的分频和重装载值,以满足不同的应用场景。
使用说明
- 下载本仓库的资源文件。
- 使用Keil MDK 5.32版本打开项目文件。
- 根据硬件连接图连接STM32F103C8T6开发板。
- 编译并下载程序到开发板。
- 观察PWM输出波形和LED灯的闪烁情况。
贡献
欢迎提交问题和改进建议,帮助我们完善这个示例项目。
登录后查看全文
最新内容推荐
【免费下载】 免费获取Vivado 2017.4安装包及License(附带安装教程)【亲测免费】 探索脑网络连接:EEGLAB与BCT工具箱的完美结合 探索序列数据的秘密:LSTM Python代码资源库推荐【亲测免费】 小米屏下指纹手机刷机后指纹添加失败?这个开源项目帮你解决!【亲测免费】 AD9361校准指南:解锁无线通信系统的关键 探索高效工业自动化:SSC从站协议栈代码工具全面解析 微信小程序源码-仿饿了么:打造你的外卖小程序【亲测免费】 探索无线通信新境界:CMT2300A无线收发模块Demo基于STM32程序源码【亲测免费】 JDK8 中文API文档下载仓库:Java开发者的必备利器【免费下载】 Mac串口调试利器:CoolTerm与SerialPortUtility
项目优选
收起
deepin linux kernel
C
27
11
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
514
3.68 K
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
873
527
Ascend Extension for PyTorch
Python
314
355
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
333
148
暂无简介
Dart
752
180
React Native鸿蒙化仓库
JavaScript
298
347
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
11
1
华为昇腾面向大规模分布式训练的多模态大模型套件,支撑多模态生成、多模态理解。
Python
110
125
仓颉编译器源码及 cjdb 调试工具。
C++
152
884