关于我对Arduino中LED灯的渐变,明暗变化,多个LED灯闪烁实验的理解

①LED灯的渐变

  要实现LED灯的渐变我们得用到analogWrite()函数来实现,首先我们用brightness=0来设置LED灯的亮度初始值,然后用fadeAmount=5来设置亮度的渐增值,最后利用analogWrite()函数与if语句结合来实现LED灯的渐变,这其中用到了循环的原理。值得注意的是你,设置的灯光最大值得与你的初始值与渐增值相适应,也就是说如果你的初始值是0渐增值是5那么你的灯光最大值就要设置成5的倍数比如255否则不符合代码的规则,会导致代码无法运行。

②LED灯的明暗变化

  想要实现LED灯的明暗变化我可以使用for语句,首先我们先声明变量int i、sum=0,然后构建语句块for(i=1; i<=100; i++){sum = sum + i;}(里面的初始值与最终值按照自己的需求赋值),代码运行的步骤是这样的:Arduino先把1赋值给i,接着Arduino判断i是否小于100(i<=100是给其设置的最大值)这一条件。由于现在i的值为1所以i<100为真,那么程序将执行后面花括号中的程序,执行完之后,Arduino将返回到for语句后面括号中的最后一个表达式i++,对i执行加1的操作。执行完这一步后,Arduino再次判断i<=100这一条件是否为真。由于此时i = 1, 即i依然小于100,所以Arduino将再一次执行花括号中的语句块。依此重复循环直到i的数值递增到101时,i不再小于等于100(i<=为假),这时就不会执行for后面花括号的程序了

这是代码的流程图 

③多个LED灯闪烁

  要实现多个LED灯的闪烁首先我们得设置引角的输出位置,这里我设置三个引角,这三个引角为2、3、4引角,这时代码是这样的for(int i = 2; i<=4; i++)这是通过循环的方式把2-4号引角设置为输出状态。接下来我会给出具体的代码和解释

void setup()
{
  for (int i=2; i<=4; i++) //循环遍历2到4号引脚
  {
    pinMode(i, OUTPUT); //把这些引脚设置为“输出模式”(控制LED需要输出电信号)
  }
}
 

void loop()
{
  for (int x=2; x<=4; x++) //循环遍历2到4号引脚
  {
    digitalWrite(x, HIGH); //给引脚输出“高电平”(让对应LED点亮)
    delay(500); //等待500毫秒(0.5秒)
    digitalWrite(x, LOW); //给引脚输出“低电平”(让对应LED熄灭)
    delay(500); //再等待500毫秒
  }
}
其中delay ()按自己的需求赋值以上所有的参数仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值