PWM_ON只在主循环来改变;延时程序很长delay(1000)中断函数执行很多次,第一次count=0时,就把led灭了,当PWM_ON=2时,有了亮度锋乎,此亮度保持到,PWM_ON=2,加亮,直到PWM_ON=10,最迹晌亮,开始执行变暗程序。
51单片机pwm调光电路参考源程序:
int potpin=0//定义模拟接口0
int ledpin=11//定义数字接口11(PWM 输出)
int val=0// 暂存来自传感器的变量数值
void setup()
{
pinMode(ledpin,OUTPUT)//定义数字接口11 为输出
Serial.begin(9600)//设置波特率为9600
//注意搜手庆:模拟接口自动设置为输入
}
void loop()
{
val=analogRead(potpin)// 读取传感器的模拟值并赋值给val
Serial.println(val)//显示val 变量
analogWrite(ledpin,val/4)// 打开LED 并设置亮度(PWM 输__________出最大值255)
delay(10)//延时0.01 秒
}
原理世握图:
PWM简介:
Pulse Width Modulation 就是通常所说的PWM,译为脉冲宽度调制,简称脉宽调制。脉冲宽度调制(PWM)是一种对模拟信号电平进行数字编码的方法,由于计算机不能输出模拟电压,只能输出0 或5V 的的数字电压值,我们就通过使用高分辨率计数器,利用方波的占空比被调制的方法来对一薯慧个具体模拟信号的电平进行编码。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)