51单片机快速入门之PWM控制 灯的亮度 2024年10/15

51单片机快速入门之 PWM 控制 灯的亮度

PWM:

PWM(Pulse Width Modulation)是脉冲宽度调制的缩写,简称脉宽调制。它是一种模拟控制方式,通过改变脉冲序列的脉冲宽度来调节输出量和波形的一种调制方式。

图(来源于网络):

假设当 低电平时 灯 关闭 高电平 灯 打开

编写代码:

这段代码无限循环时 实际效果类似 呼吸灯

unsigned int T,TOFF;

T=500;

TOFF=0;

for(;TOFF<T;TOFF++)

{

灯关闭 LED=0;

delay(TOFF);//根据TOFF的值延时

灯打开 LED=1;

delay(T-TOFF);

}

这段程序将会执行500次

随着TOFF的增大, 灯 关闭 的时间将会越来越 长

而因为TOFF的增大 , 灯 打开 的时间将会越来越 短

实际上实现了一个简单的脉冲宽度调制(PWM)信号,其占空比从100%逐渐减小到0%。

  1. 占空比:在PWM中,占空比是指在一个周期内,高电平(或开状态)所占的时间比例。公式为:占空比 = (高电平时间 / 周期时间)* 100%。

  2. 周期时间 :在上述代码中,周期时间 T 被设定为500毫秒。

  3. 高电平时间 :在每次循环中,灯打开的时间是 T - TOFF,随着 TOFF 从0逐渐增加到500,高电平时间从500毫秒(即100%占空比)逐渐减少到0毫秒(即0%占空比)。

  4. 低电平时间 :灯关闭的时间是 TOFF,随着 TOFF 的增加,低电平时间从0毫秒逐渐增加到500毫秒。

  5. PWM变化:随着循环的进行,PWM信号的占空比从100%开始,每经过一次循环,占空比减少相同的量,直到最后占空比变为0%。

相关推荐
Zevalin爱灰灰34 分钟前
编程技巧(基于STM32)第一章 定时器实现非阻塞式程序——按键控制LED灯闪烁模式
stm32·单片机·嵌入式硬件
红花与香菇2____2 小时前
【学习笔记】Cadence电子设计全流程(二)原理图库的创建与设计(上)
笔记·嵌入式硬件·学习·pcb设计·cadence·pcb工艺
Jerry.yl3 小时前
关于 BK3633 上电时受串口 UART2 影响而无法启动的问题说明
嵌入式硬件·物联网·bk3633
苏慕TRYACE4 小时前
RT-Thread+STM32L475VET6实现红外遥控实验
stm32·单片机·嵌入式硬件·rt-thread
小幽余生不加糖5 小时前
deepseek帮我设计物理量采集单片机口保护电路方案
单片机·嵌入式硬件
Ronin-Lotus7 小时前
蓝桥杯篇---IAP15F2K61S2串口
单片机·嵌入式硬件·职场和发展·蓝桥杯·c·iap15f2k61s2
xiaohai@Linux7 小时前
ESP32 在IDF_V5.3.1版本下实现AP无线热点模式!(带WIFI事件处理)
c语言·嵌入式硬件·tcp/ip·wifi·esp32
yyqzjw8 小时前
【STM32】外部时钟|红外反射光电开关
stm32·单片机·嵌入式硬件
charlie1145141918 小时前
(萌新入门)如何从起步阶段开始学习STM32 —— 0.碎碎念
c语言·stm32·单片机·嵌入式硬件·学习·教程
苏慕TRYACE8 小时前
RT-Thread+STM32L475VET6——ADC采集电压
stm32·单片机·嵌入式硬件·rt-thread