首页 文章

Arduino RGB LED清除

提问于
浏览
3

我有一个RGB LED,其引脚分别为9,10,11和一个接地引脚 . 已为R,G和B提供电阻器 .

当我做:

analogWrite(r, 255); // I see a red color
  analogWrite(g, 0);
  analogWrite(b, 0);

  analogWrite(r, 0);
  analogWrite(g, 255); // I see a green color
  analogWrite(b, 0);

  analogWrite(r, 0);
  analogWrite(g, 0); // I see a blue color
  analogWrite(b, 255);

当我做:

analogWrite(r, 153);
  analogWrite(g, 102);
  analogWrite(b, 51);

它看起来并不棕色,更像是蓝色 . 我错过了我需要做的事情吗?

3 回答

  • 2

    布朗是一种非常难以实现的颜色 . (它实际上是深红色 . 布朗不在彩虹中 . )

    确保你的颜色是 balancer 的:写一个暗淡的白色/灰色,128,128,128,并确保它看起来是白色的 . 然后写一个255,255,255并确保它看起来是白色的 . 如果这些看起来不是白色,请调整电阻以减少通过太亮的元件的电流(小心不要让太多的电流烧坏LED .

  • 2

    Brown color example

    它很奇怪,但蓝色似乎与棕色完全相反,是你想要实现的 . 而且,当我试图反转颜色(255 - x)时,我有蓝色 . 也许PWM配置出了问题?

  • 6

    是RGB LED共阳极或共阴极,

    通常RGB LED是共阳极 .
    这意味着:降低analogWrite值,提高亮度(发出更多光)

    http://www.hertaville.com/wp-content/uploads/2011/07/rgb.jpg

    你还需要电阻器,注意蓝色比绿色或红色的防护剂值更多,因此你需要设置更高的电阻值 .

相关问题