0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用Arduino控制RGB LED

科技觀察員 ? 來(lái)源:electroschematics ? 作者:electroschematics ? 2024-02-11 10:28 ? 次閱讀

在本指南中,您將學(xué)習(xí)如何使用Arduino控制RGBLED。RGB(紅-綠-藍(lán))LED可以通過(guò)混合不同強(qiáng)度的紅、綠、藍(lán)光來(lái)產(chǎn)生多種顏色。您將學(xué)習(xí)創(chuàng)建一個(gè)基本Arduino RGB LED電路,并以一些基本顏色為例循環(huán)。

使用提供的原理圖和試驗(yàn)板圖像,以及下面的示例代碼,您應(yīng)該擁有輕松設(shè)置和控制RGBLED顏色輸出所需的一切。

所需零件

ArduinoUno的

面包板(和一些面包板電線)

3x電阻(220Ω)

RGB發(fā)光二極管

RGBLED有兩種類型:共陽(yáng)極和共陰極。我們將在下面提供兩種類型的示例原理圖和代碼。

如何將RGBLED連接到Arduino

這是電路原理圖。該圖使用三個(gè)電阻器和一個(gè)共陽(yáng)極RGBLED(您將在下面找到共陰極的原理圖)。

1.png

如果您使用的是共陽(yáng)極LED,則需要將共陽(yáng)極引腳連接到5V,如下所示:

2.png

在試驗(yàn)板上連接電路的步驟

如果您使用的是共陰極RGBLED,請(qǐng)將陰極連接到Arduino上的GND引腳。如果您的RGBLED是公共陽(yáng)極,請(qǐng)將陽(yáng)極連接到Arduino上的5V引腳。

將LED的紅色、綠色和藍(lán)色支腿分別連接到Arduino的引腳11、10和9,每個(gè)引腳都通過(guò)一個(gè)220歐姆電阻器。

確保您的Arduino通過(guò)USB電纜連接到計(jì)算機(jī)。

使用下面的面包板圖像之一作為設(shè)置連接的視覺指南:

3.png

連接到Arduino的共陰極RGBLED

4.png

連接到Arduino的共陽(yáng)極RGBLED

上傳ArduinoRGBLED代碼

使用ArduinoIDE將下面的代碼上傳到您的Arduino,您應(yīng)該會(huì)看到LED循環(huán)使用不同的顏色,每種顏色停止一秒鐘。

RGBLED(共陰極)的完整Arduino代碼:

int redPin= 11;
int greenPin = 10;
int bluePin = 9;

void setup() {
  pinMode(redPin, OUTPUT);
  pinMode(greenPin, OUTPUT);
  pinMode(bluePin, OUTPUT);
}

void loop() {
  setColor(255, 0, 0); // Red Color
  delay(1000);
  
  setColor(0, 255, 0); // Green Color
  delay(1000);
  
  setColor(0, 0, 255); // Blue Color
  delay(1000);
  
  setColor(255, 255, 0); // Yellow Color
  delay(1000);

  setColor(0, 255, 255); // Cyan Color
  delay(1000);
  
  setColor(255, 0, 255); // Magenta Color
  delay(1000);
  
  setColor(255, 165, 0); // Orange Color
  delay(1000);
  
  setColor(128, 0, 128); // Purple Color
  delay(1000);
  
  setColor(255, 255, 255); // White Color
  delay(1000);
}

void setColor(int redValue, int greenValue, int blueValue) {
  analogWrite(redPin, redValue);
  analogWrite(greenPin, greenValue);
  analogWrite(bluePin, blueValue);
}

如果您使用的是共陽(yáng)極RGBLED,則與共陰極RGBLED相比,邏輯是相反的。在共陰極RGBLED中,您為特定引腳提供電源(HIGH)以打開顏色。對(duì)于共陽(yáng)極RGBLED,將特定引腳接地(LOW)以打開顏色。

因此,對(duì)于普通陽(yáng)極RGBLED,要設(shè)置顏色,您需要在應(yīng)用之前從最大值(即255)中減去每個(gè)顏色值。此反轉(zhuǎn)可確保特定顏色的值為255(全強(qiáng)度)會(huì)導(dǎo)致該顏色被關(guān)閉,而值為0(無(wú)強(qiáng)度)會(huì)導(dǎo)致該顏色完全打開。

RGBLED(共陽(yáng)極)的完整Arduino代碼:

int redPin= 11;
int greenPin = 10;
int bluePin = 9;

void setup() {
  pinMode(redPin, OUTPUT);
  pinMode(greenPin, OUTPUT);
  pinMode(bluePin, OUTPUT);
}

void loop() {
  setColor(255, 0, 0); // Red Color
  delay(1000);
  
  setColor(0, 255, 0); // Green Color
  delay(1000);
  
  setColor(0, 0, 255); // Blue Color
  delay(1000);
  
  setColor(255, 255, 0); // Yellow Color
  delay(1000);

  setColor(0, 255, 255); // Cyan Color
  delay(1000);
  
  setColor(255, 0, 255); // Magenta Color
  delay(1000);
  
  setColor(255, 165, 0); // Orange Color
  delay(1000);
  
  setColor(128, 0, 128); // Purple Color
  delay(1000);
  
  setColor(255, 255, 255); // White Color
  delay(1000);
}

void setColor(int redValue, int greenValue, int blueValue) {
  analogWrite(redPin, 255 - redValue);
  analogWrite(greenPin, 255 - greenValue);
  analogWrite(bluePin, 255 - blueValue);
}

代碼的工作原理

此代碼首先通過(guò)變量redPin、greenPin和bluePin設(shè)置RGBLED引腳。如果您使用的引腳與示例電路中的引腳不同,請(qǐng)更改這些引腳。

然后,代碼以紅色、綠色、藍(lán)色、黃色、青色、品紅色、橙色、紫色和白色點(diǎn)亮RGBLED,并在每種顏色上暫停一秒鐘。

結(jié)論

通過(guò)更改函數(shù)中的值來(lái)嘗試不同的顏色組合!請(qǐng)記住,RGBLED結(jié)合了紅光、綠光和藍(lán)光來(lái)產(chǎn)生多種顏色。您現(xiàn)在可以使用Arduino和RGBLED創(chuàng)建彩色顯示器!
審核編輯:陳陳

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • led
    led
    +關(guān)注

    關(guān)注

    240

    文章

    22988

    瀏覽量

    654495
  • RGB
    RGB
    +關(guān)注

    關(guān)注

    4

    文章

    794

    瀏覽量

    58303
  • Arduino
    +關(guān)注

    關(guān)注

    187

    文章

    6455

    瀏覽量

    186348
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    arduino + wiscam 基于Windows控制RGB

    串口與Arduino串口連接,上位機(jī)軟件發(fā)送控制指令到Wiscam,Wiscam通過(guò)透?jìng)鞔趯?shù)據(jù)傳到Arduino,Arduino通過(guò)PWM控制
    發(fā)表于 06-29 17:49

    怎樣用HTML應(yīng)用程序控制RGB LED

    所需的硬件僅是ArduinoRGB帶220歐姆電阻的LED。只需按照?qǐng)D中的方式連接引腳即可。
    的頭像 發(fā)表于 10-29 09:28 ?3478次閱讀

    ArduinoLED RGB模塊HC-06開源

    電子發(fā)燒友網(wǎng)站提供《ArduinoLED RGB模塊HC-06開源.zip》資料免費(fèi)下載
    發(fā)表于 07-07 15:17 ?2次下載
    <b class='flag-5'>Arduino</b>條<b class='flag-5'>LED</b> <b class='flag-5'>RGB</b>模塊HC-06開源

    RGB LED褪色Arduino庫(kù)開源分享

    電子發(fā)燒友網(wǎng)站提供《RGB LED褪色Arduino庫(kù)開源分享.zip》資料免費(fèi)下載
    發(fā)表于 10-27 14:25 ?0次下載
    <b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>褪色<b class='flag-5'>Arduino</b>庫(kù)開源分享

    Arduino Uno與RGB LED連接

    電子發(fā)燒友網(wǎng)站提供《將Arduino Uno與RGB LED連接.zip》資料免費(fèi)下載
    發(fā)表于 11-14 11:35 ?1次下載
    將<b class='flag-5'>Arduino</b> Uno與<b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>連接

    語(yǔ)音控制RGB LED

    電子發(fā)燒友網(wǎng)站提供《語(yǔ)音控制RGB LED.zip》資料免費(fèi)下載
    發(fā)表于 11-14 11:26 ?0次下載
    語(yǔ)音<b class='flag-5'>控制</b><b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>

    使用Arduino和Python Tkinter進(jìn)行RGB Led控制

    電子發(fā)燒友網(wǎng)站提供《使用Arduino和Python Tkinter進(jìn)行RGB Led控制.zip》資料免費(fèi)下載
    發(fā)表于 11-30 12:00 ?0次下載
    使用<b class='flag-5'>Arduino</b>和Python Tkinter進(jìn)行<b class='flag-5'>RGB</b> <b class='flag-5'>Led</b><b class='flag-5'>控制</b>

    Arduino上使用共陰極和共陽(yáng)極RGB LED

    電子發(fā)燒友網(wǎng)站提供《在Arduino上使用共陰極和共陽(yáng)極RGB LED.zip》資料免費(fèi)下載
    發(fā)表于 12-12 14:33 ?0次下載
    在<b class='flag-5'>Arduino</b>上使用共陰極和共陽(yáng)極<b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>

    使用Arduino Uno的多個(gè)RGB Led Chaser

    電子發(fā)燒友網(wǎng)站提供《使用Arduino Uno的多個(gè)RGB Led Chaser.zip》資料免費(fèi)下載
    發(fā)表于 12-15 10:00 ?0次下載
    使用<b class='flag-5'>Arduino</b> Uno的多個(gè)<b class='flag-5'>RGB</b> <b class='flag-5'>Led</b> Chaser

    基于Arduino UNO的帶遙控器環(huán)境燈

    本方案是基于 Arduino UNO 的帶遙控器環(huán)境燈,在本方案中,我們將學(xué)習(xí)如何使用 433MHz 射頻遙控器和 Arduino 控制 RGB L
    發(fā)表于 12-22 11:33 ?0次下載

    Arduino控制RGB LED燈條

    電子發(fā)燒友網(wǎng)站提供《Arduino控制RGB LED燈條.zip》資料免費(fèi)下載
    發(fā)表于 12-29 11:39 ?4次下載
    <b class='flag-5'>Arduino</b><b class='flag-5'>控制</b>的<b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>燈條

    Arduino RGB Led控制通過(guò)PC

    電子發(fā)燒友網(wǎng)站提供《Arduino RGB Led控制通過(guò)PC.zip》資料免費(fèi)下載
    發(fā)表于 02-09 11:30 ?0次下載
    <b class='flag-5'>Arduino</b> <b class='flag-5'>RGB</b> <b class='flag-5'>Led</b><b class='flag-5'>控制</b>通過(guò)PC

    帶有Arduino Uno的RGB LED雪花

    電子發(fā)燒友網(wǎng)站提供《帶有Arduino Uno的RGB LED雪花.zip》資料免費(fèi)下載
    發(fā)表于 06-16 10:19 ?2次下載
    帶有<b class='flag-5'>Arduino</b> Uno的<b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>雪花

    如何使用ArduinoRGB Led產(chǎn)生16M色

    電子發(fā)燒友網(wǎng)站提供《如何使用ArduinoRGB Led產(chǎn)生16M色.zip》資料免費(fèi)下載
    發(fā)表于 06-28 14:44 ?0次下載
    如何使用<b class='flag-5'>Arduino</b>的<b class='flag-5'>RGB</b> <b class='flag-5'>Led</b>產(chǎn)生16M色

    使用Arduino的Android控制RGB LED燈條

    電子發(fā)燒友網(wǎng)站提供《使用Arduino的Android控制RGB LED燈條.zip》資料免費(fèi)下載
    發(fā)表于 07-05 09:45 ?2次下載
    使用<b class='flag-5'>Arduino</b>的Android<b class='flag-5'>控制</b><b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>燈條