STM32 cubeMX下配置STM32单片机使无源蜂鸣器输出PWM波并放音乐

1.首先我们要了解定时器(timer)
timer分为三种:高级定时器(tim1,tim8),基本定时器(tim6,tim7),通用定时器(tim2,tim3,tim4,tim5)。
基本定时器:它有两个功能。第一就是生成时基,第二就是专门用于驱动数模转换器(DAC),我们这里要产生PWM波,这与它无关,所以不用过多了解它。
通用的定时器:可以输出四路PWM信号互不影响,它就是普通的调节PWM的占空比和频率。
高级定时器:可以输出三对互补PWM信号外加CH4通道,一共七路,它还带有互补输出功能,同时互补信号可以插入死区,也有使能刹车功能。
由于我做的单片机只用到了通用定时器。因此我对高级定时器也没有过多的了解。
2.PWM
脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,PWM输出最基本的调节就是频率和占空比,接下来我们将了解PWM是如何产生的。
PWM的频率和占空比分别通过TIMX_ARR和TIMX_CCRX这两个寄存器控制,ARR寄存器就是自动重装寄存器(计数器记到这个数后清零在开始计数),在计数是会不停的和CCRX寄存器中的数据进行比较,如果小于的话就是高电平或者低电平(这取决于你设的PWM输出是高电平还是低电平有效如下图(是高电平有效)),计数值大于CCRX值这电平极性相反,这就控制了占空比。
下图是PWM原理图:

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值