凤凰de星空 发表于 2015-4-18 10:08:27

程序问题求教

本帖最后由 凤凰de星空 于 2015-4-18 11:31 编辑

这个程序是让led等渐渐变亮,又渐渐变暗循环,但是实际等在变亮过程中变暗了一次,什么问题?

void setup()
{
pinMode( 11 , OUTPUT);
}
int n=0,m=0;
void loop()
{
while(n<=255)
   {
   analogWrite(11,n);
   delay (1000);
   n=n+100;
   }
    m=255;
    while(m>=0)
    {
      analogWrite(11,m);
      delay (1000);
      m=m-100;
    }
    n=0;
}

林定祥 发表于 2015-4-18 17:43:25

对Pin11的控制的顺序是n=0,m=255,n=100,m=155,n=200,m=55循环亮暗变化无常,不怪.

Super169 发表于 2015-4-18 18:20:09

每次 +100, 變動太大了.
縮細 step 以及每次的 delay, 效果會更好.

Super169 发表于 2015-4-18 18:22:49

林定祥 发表于 2015-4-18 17:43 static/image/common/back.gif
对Pin11的控制的顺序是n=0,m=255,n=100,m=155,n=200,m=55循环亮暗变化无常,不怪.

你是否看錯了什麼?把 n 及 m 的 while loop 結合了?

stpanzj 发表于 2015-4-19 11:49:36

输出到pin11的值0,100,200,255,155,55,下一循环又从0开始。
看起来没有这个中间变暗的过程啊。

凤凰de星空 发表于 2015-4-19 21:40:30

stpanzj 发表于 2015-4-19 11:49 static/image/common/back.gif
输出到pin11的值0,100,200,255,155,55,下一循环又从0开始。
看起来没有这个中间变暗的过程啊。

程序已经改了,原来pmw只能是0-255之间的数

stpanzj 发表于 2015-4-19 21:42:58

凤凰de星空 发表于 2015-4-19 21:40 static/image/common/back.gif
程序已经改了,原来pmw只能是0-255之间的数

原来也是0-255啊

凤凰de星空 发表于 2015-4-20 10:17:08

stpanzj 发表于 2015-4-19 21:42 static/image/common/back.gif
原来也是0-255啊

刚开始我用的是0-300
页: [1]
查看完整版本: 程序问题求教