【STM32——电赛】初识PWM
一、基本概念
PWM,又称脉冲宽度调制。模拟控制方式。
- 高电平*占空比=模拟输出电压的值
- PWM实现D/A转换的原理:在一定的频率下,通过不同的占空比即可得到不同的输出模拟电压。
二、简单基础的应用
1、PWM呼吸灯 频率太快,没有闪烁感; 频率放慢,看到闪烁。 占空比越大,LED越亮。
- 频率一定时,用不同的占空比改变LED灯的亮度,达到呼吸灯的效果。
2、PWM对电机转速的控制 直流电机输出端引脚时高电平,则电机转动。通过PWM输出不同的模拟电压便可达到不同的输出转速 正常频率6~16kHz
三、用定时器产生PWM
- 方案:用定时器TIM3产生PWM输出。
- 利用 TIM3 的 CH2 输出 PWM 来控制 DS0 的亮度,但是 TIM3_CH2默认是接在 PA7 上面的,而我们的 DS0 接在 PB5 上面,用 STM32,通过重映射功能,把 TIM3_CH2 映射到 PB5上。
- 函数:TIM3_REMAP
 想让 TIM3_CH2 映射到 PB5 上,则需要设置 TIM3_REMAP[1:0]=10。 这里需要注意,此时 TIM3_CH1 也被映射到 PB4 上了。
四、库函数版本的程序
先写到这,用的正点原子的教程,欢迎批评指正!
|