stm32pwm学习笔记

首先pwm是建立在一个输出比较功能之上的eeb05ea98e7242c5a76fd4e14ada3efb.jpg

 cnt通过ARR自动重装计时器来设定它所能达到的最大数目 

这个输出比较会自动比较cnt与ccr寄存器值的关系来对电平进行置一置零或者翻转的操作。

四个输出比较通过说明可以同时进行输出思路pwm波形

c797968a233148a192d0bde7b11c934a.jpg

可以通过选择输出比较的模式来选择让我们的ref电平是否翻转 什么时候置有效电平

9f7e9e69be7d4fc8a23727e373eb06e0.jpg

 这个是关于pwm参数的一些概念  这是以pwm模式1为例  红线是我们十二点的ccr的值 黄线90是自动重装寄存器的值 cnt不断自增到大于等于ccr时ref输出高电平 反之输出零 这样就输出了介于零一之间的电平

简单了解一下时基单元 时基单元有自动重装器有psc预分频器和计数器 特别的这个psc从零开始 如果psc=1那么系统时钟就是二分频72mhz除以2

7f9410a3c61642d6a2989676a52a6ef5.jpg

先配置好时基单元然后配置输出比较 因为pwm最终要输出在引脚上所以要借用gpio引脚

接下来是代码部分 

首先就是要配置好时钟gpio结构体 配置好时钟源 不配置的话默认是内部时钟tim2

然后配置时基单元选择预分频系数 period代表自动重装器(period有句号的意思)然后就是输出比较初始化ocinit选择比较模式 初始ccr的值,最后使能tim

22727319aba6422fb1345519fa92d5e2.jpg

部分图片来源于江协科技

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值