运行环境
Windows10
STM32CubeMX___Version 5.0.0
Keil5(MDK5)___Version 5.15
简介
本例程主要讲解如何设置PWM这只输出4路PWM信号
STM32CubeMx基本配置
基础配置过程请参考 STM32CubeMx(Keil5)开发之路—配置第一个项目
STM32CubeMx PWM配置
1——点击TIM2进行设置
2——4个Channel都选择 “PWM Generation CHx” 选项
3——预分频值填72-1即71
4——自动重装载值设置为100-1也就是99
5——会看到相应的输出管脚PA0——PA3就是PWM的输出管脚
讲解:PWM波的频率=时钟频率/(预分频+1)/(自动重装载值+1)
即 :72000000/72/100=10000(HZ)
时钟频率/(预分频+1):表示每秒计数的个数
(自动重装载值+1):表示一共计这么多个
总体来看,每秒计72000000/72=1000000个,即1us计数一次,一共计数100次,那么计数100次需要花得时间为100us,所以完成一个周期需要的时间是100us,频率就是10000HZ
代码修改
1——选择main.c文件
2——在USER CODE中添加如下代码,打开PWM定时器
3——在USER CODE中接着添加如下代码,设置占空比
占空比分别为:PA1——20/100 ,PA2——25/100, PA3——33/100, PA4——50/100
/* USER CODE BEGIN 2 */
HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_1);
HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_2);
HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_3);
HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_4);
__HAL_TIM_SET_COMPARE(&htim2, TIM_CHANNEL_1, 20);
__HAL_TIM_SET_COMPARE(&htim2, TIM_CHANNEL_2, 25);
__HAL_TIM_SET_COMPARE(&htim2, TIM_CHANNEL_3, 33);
__HAL_TIM_SET_COMPARE(&htim2, TIM_CHANNEL_4, 50);
/* USER CODE END 2 */
烧录代码后用示波器测试PA0——PA3这四个管脚,正确的话会看到如下波形
上一篇:关于STM32像EPROM一样可以单字节写内部Flash的理解
下一篇:STM32CubeMX(Keil5)开发之路——9设置微秒级别的延时
推荐阅读最新更新时间:2024-11-09 08:54
设计资源 培训 开发板 精华推荐
- Waymo打造最大弱势道路使用者交通事故数据集 可帮助指导自动驾驶系统研发
- 车载显示,大步向前
- 新专利:未来福特汽车或将配备亮度管理系统
- 科学家研发基于AI的身份验证工具 可保护车辆免受网络攻击威胁
- Microchip推出广泛的IGBT 7 功率器件组合,专为可持续发展、电动出行和数据中心应用而设计
- 面向未来驾驶体验 博世推出新型微电子技术
- 英飞凌与马瑞利合作 利用AURIX™ TC4x MCU系列推动区域控制单元创新
- 5C超充,该怎么卷?
- 《2025年度中国汽车十大技术趋势》正式揭晓!你最看好哪个?
- Microchip推出新型VelocityDRIVE™软件平台和车规级多千兆位以太网交换芯片,支持软件定义汽车