STM32F407+CubeMX-使用TIM产生PWM信号

一、前言


PWM信号的用途很广,特别在电机控制上。PWM信号能够控制舵机的绝对位置,直流有刷电机的转速,步进电机的转动等。

PWM信号的样子:
在这里插入图片描述
使用STM32F407产生PWM信号很方便,而且可以在不进入中断的前提下生成PWM信号。
具体的PWM细节参看《硬石YS-F4Pro开发板开发手册》的21.6章节- PWM模式,本次生成的PWM信号是高电平有效,当然啦,也可以是低电平有效,只是改一下设置。

二、STM32CubeMX


2.1、mode

在这里插入图片描述
使能了TIM1作为PWM信号的定时器,Clock Source选择内部时钟,Channel1选择PWM Gerneration CH1.

2.2、GPIO

在这里插入图片描述
使能了TIM1的PWM模式的通道1后,STM32CubeMX同步使能了PE9。

2.3、参数配置

在这里插入图片描述
Counter Period - 其实就是TIMx_ARR寄存器的值,它规定了PWM的频率。
在这里插入图片描述
Pulse - 其实就是TIMx_CCRx寄存器的值,它规定了PWM的占空比
在这里插入图片描述
CH Polarity - PWM信号的有效电平,这个例子需要产生有效的高电平,所以CH Polarity设HIGH

三、STM32CubeIDE


生成代码。

3.1、main.c

要让STM32产生PWM信号,还需要一条代码。
在这里插入图片描述

四、示波器

4.1、例子1

在这里插入图片描述
在这里插入图片描述

4.2、例子2

修改了一下CCR寄存器,PWM的占空比从10%变为50%了。
在这里插入图片描述
在这里插入图片描述

五、STM32F4编程参考手册


在这里插入图片描述

  • 9
    点赞
  • 67
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 15
    评论
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wallace Zhang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值