2011-12-02 115 views
3

我有一個RGB LED,並有引腳9,10,11和一個引腳接地。 電阻器已經提供了R,G和BArduino RGB LED清除

當我這樣做:

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); 

它看起來並不棕色對我來說,更像是一個藍色。 我錯過了我需要做的事情嗎?

回答

6

布朗是一種非常難以實現的顏色。 (它實際上是深紅色,布朗不在彩虹中)

確保你的顏色是平衡的:寫一個暗淡的白色/灰色,128,128,128,並確保它看起來是白色的。然後寫一個255,255,255,並確保這看起來是白色的。如果這些不看白,調整電阻,以減少通過太亮的部分電流(注意不要讓過多的電流而燒壞的LED。

+0

好吧我會試試。測試所有三個引腳的隨機(256)循環,看到許多藍色和紅色的顏色。我會調整電阻。 – Guus

2

Brown color example

它的怪異,但藍顏色看起來與棕色完全相反,你試圖實現,而且,當我嘗試顛倒顏色(255-x)時,我得到了藍色,可能是PWM配置有問題嗎?

+0

是的,這很奇怪。剛接觸Arduino時,不知道如何配置它。我會嘗試調整電阻 – Guus

+2

你可能想玩這個http://arduino.cc/en/Tutorial/SecretsOfArduinoPWM來了解PWM配置。 –

2

是RGB LED共陽極或共陰極,

通常RGB LED是共陽極。
這意味着:lowwer的analogWrite值,亮度更高(更發射的光)

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

還需要電阻器,請注意,藍色發射更多的光與resistans的相同的值,比綠色或紅色,所以你需要設置一個更高的電阻值。