任务3按钮PWM控制LED亮度
程序解读:
//通过PWM的方式来调整LED的亮度。
int var=0;//设计变量,int var = val;var(变量名)val(赋给变量的值)
int ledpin=6;//带#号标识的接口才具备PWM输出功能。
int up=3;//按键引脚,用于变亮效果
int down=8;//按键引脚,用于变暗效果
void setup() //初始化引脚模式
{
pinMode(up,INPUT);//配置引脚为输入模式.
pinMode(ledpin,OUTPUT);//配置引脚为输出模式.
pinMode(down,INPUT);//配置引脚为输入模式.
}
void loop() //通过程序改变状态和响应事件。
{
int up=digitalRead(3);//读数字引脚3的状态,赋值给up
int down=digitalRead(8);//读数字引脚8的状态,赋值给down
if(up==HIGH)//测试当up处于高电平
{
analogWrite(ledpin,var);//写模拟引脚
//void analogWrite (uint8_t pin, int value)
//value的取值范围:0到255之间
var=var+1;//亮度调亮
if(var>=255)//当亮度到达顶点,就保持在这一点
{
var=255;
}
delay(1000);//为了更方便观察改变效果延迟1秒
}
if(down==HIGH)//测试当down处于高电平
{
analogWrite(ledpin,var);//写模拟引脚
var=var-1;//亮度调暗
if(var<=0)//当亮度到达底线,就保持在这一点
{
var=0;
}
delay(1000);//为了更方便观察改变效果延迟1秒
}
}
//使用PWM控制6号口输出,变量var的取值范围是0-255。