chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

如何在Arduino上使用RGB LED

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-12-03 11:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

概述

在本課程中,您將學(xué)習(xí)如何在Arduino上使用RGB(紅綠藍(lán))LED。

您將使用 analogWrite 函數(shù)來控制LED的顏色。

乍一看,RGB(紅色,綠色,藍(lán)色)LED看起來就像普通的LED,但是,在通常的LED封裝中,實(shí)際上有三個(gè)LED,一個(gè)紅色,一綠色,是,一藍(lán)色。通過控制每個(gè)LED的亮度,您可以混合幾乎任何您想要的顏色。

我們可以混合顏色,就像您將音頻與“混合板”或調(diào)色板上的顏料混合一樣-通過調(diào)整三個(gè)LED各自的亮度。做到這一點(diǎn)的困難方法是使用第2課中使用的不同值的電阻器(或可變電阻器)。這是很多工作!對我們來說幸運(yùn)的是,Arduino具有 analogWrite 函數(shù),您可以將其與標(biāo)有?的引腳一起使用,以向相應(yīng)的LED輸出可變數(shù)量的功率。

零件

要構(gòu)建本課中描述的項(xiàng)目,您將需要以下零件。

零件 數(shù)量

擴(kuò)散RGB LED 10mm 1

270Ω電阻器(紅色,紫色,棕色條紋)-可以使用的最大電阻為1K歐姆。小調(diào)光器

3

半尺寸面包板 1

Arduino Uno R3 1

跳線包 1

面包板布局

RGB LED有四根引線。封裝中每個(gè)LED的正極連接都有一根引線,而LED的所有三個(gè)負(fù)極側(cè)都有一根引線。

LED封裝的公共負(fù)極連接是LED封裝扁平側(cè)的第二個(gè)引腳。它也是四個(gè)線索中最長的。該引線將接地。

封裝內(nèi)的每個(gè)LED都需要自己的270Ω電阻,以防止過多的電流流過。 LED的三個(gè)正極(一個(gè)紅色,一個(gè)綠色和一個(gè)藍(lán)色)使用這些電阻器連接到Arduino輸出引腳。

如果您使用的是普通的ANODE LED而不是普通的CATHODE,請將長引腳連接到+5而不是接地端

顏色

您可以通過改變紅色,綠色和藍(lán)色的光量來混合任意顏色,這是因?yàn)槟难劬哂腥N類型的光接收器(紅色,綠色和藍(lán)色)。您的眼睛和大腦會(huì)處理紅色,綠色和藍(lán)色的數(shù)量,并將其轉(zhuǎn)換為光譜的顏色。

在某種程度上,通過使用三個(gè)LED,我們在眼睛上發(fā)揮了作用。電視機(jī)中使用了相同的想法,其中LCD的紅色,綠色和藍(lán)色點(diǎn)彼此相鄰,構(gòu)成每個(gè)像素。

如果我們將所有三個(gè)LED的亮度設(shè)置為相同,則該燈的整體顏色將為白色。如果關(guān)閉藍(lán)色LED,以便僅紅色和綠色LED具有相同的亮度,則該光將顯示為黃色。

我們可以分別控制LED的紅色,綠色和藍(lán)色部分的亮度,從而可以混合我們喜歡的任何顏色。

黑色并不是缺少光,而是一種顏色。因此,最能使我們的LED變成黑色的是關(guān)閉所有三種顏色。

Arduino草圖

以下測試草圖將循環(huán)顯示紅色,綠色,藍(lán)色,黃色,紫色和淺綠色。這些顏色是一些標(biāo)準(zhǔn)的Internet顏色。

下載:文件

復(fù)制代碼

/*

Adafruit Arduino - Lesson 3. RGB LED

*/

int redPin = 11;

int greenPin = 10;

int bluePin = 9;

//uncomment this line if using a Common Anode LED

//#define COMMON_ANODE

void setup()

{

pinMode(redPin, OUTPUT);

pinMode(greenPin, OUTPUT);

pinMode(bluePin, OUTPUT);

}

void loop()

{

setColor(255, 0, 0); // red

delay(1000);

setColor(0, 255, 0); // green

delay(1000);

setColor(0, 0, 255); // blue

delay(1000);

setColor(255, 255, 0); // yellow

delay(1000);

setColor(80, 0, 80); // purple

delay(1000);

setColor(0, 255, 255); // aqua

delay(1000);

}

void setColor(int red, int green, int blue)

{

#ifdef COMMON_ANODE

red = 255 - red;

green = 255 - green;

blue = 255 - blue;

#endif

analogWrite(redPin, red);

analogWrite(greenPin, green);

analogWrite(bluePin, blue);

} /*

Adafruit Arduino - Lesson 3. RGB LED

*/

int redPin = 11;

int greenPin = 10;

int bluePin = 9;

//uncomment this line if using a Common Anode LED

//#define COMMON_ANODE

void setup()

{

pinMode(redPin, OUTPUT);

pinMode(greenPin, OUTPUT);

pinMode(bluePin, OUTPUT);

}

void loop()

{

setColor(255, 0, 0); // red

delay(1000);

setColor(0, 255, 0); // green

delay(1000);

setColor(0, 0, 255); // blue

delay(1000);

setColor(255, 255, 0); // yellow

delay(1000);

setColor(80, 0, 80); // purple

delay(1000);

setColor(0, 255, 255); // aqua

delay(1000);

}

void setColor(int red, int green, int blue)

{

#ifdef COMMON_ANODE

red = 255 - red;

green = 255 - green;

blue = 255 - blue;

#endif

analogWrite(redPin, red);

analogWrite(greenPin, green);

analogWrite(bluePin, blue);

}

嘗試一下草圖,然后我們將對其進(jìn)行詳細(xì)剖析……。

草圖通過指定每種顏色將使用哪些引腳:

下載:file

復(fù)制代碼

int redPin = 11;

int greenPin = 10;

int bluePin = 9; int redPin = 11;

int greenPin = 10;

int bluePin = 9;

下一步是編寫“設(shè)置”功能。正如我們在前面的課程中所了解的那樣,設(shè)置功能在Arduino重置后僅運(yùn)行一次。在這種情況下,它要做的就是定義我們用作輸出的三個(gè)引腳。

下載:文件

復(fù)制代碼

void setup()

{

pinMode(redPin, OUTPUT);

pinMode(greenPin, OUTPUT);

pinMode(bluePin, OUTPUT);

} void setup()

{

pinMode(redPin, OUTPUT);

pinMode(greenPin, OUTPUT);

pinMode(bluePin, OUTPUT);

}

在我們看一下“循環(huán)”功能之前,先看一下其中的最后一個(gè)功能。草圖。

下載:文件

復(fù)制代碼

void setColor(int red, int green, int blue)

{

analogWrite(redPin, red);

analogWrite(greenPin, green);

analogWrite(bluePin, blue);

} void setColor(int red, int green, int blue)

{

analogWrite(redPin, red);

analogWrite(greenPin, green);

analogWrite(bluePin, blue);

}

此函數(shù)使用三個(gè)參數(shù),一個(gè)用于紅色,綠色和藍(lán)色LED的亮度。在每種情況下,該數(shù)字都將在0到255之間,其中0表示關(guān)閉,而255表示最大亮度。然后該函數(shù)調(diào)用‘a(chǎn)nalogWrite’來設(shè)置每個(gè)LED的亮度。

如果您查看‘loop’函數(shù),您會(huì)看到我們正在設(shè)置紅色,綠色和藍(lán)色的光量我們要顯示的內(nèi)容,然后暫停一秒鐘,然后再繼續(xù)使用下一種顏色。

下載:文件

復(fù)制代碼

void loop()

{

setColor(255, 0, 0); // red

delay(1000);

setColor(0, 255, 0); // green

delay(1000);

setColor(0, 0, 255); // blue

delay(1000);

setColor(255, 255, 0);// yellow

delay(1000);

setColor(80, 0, 80); // purple

delay(1000);

setColor(0, 255, 255);// aqua

delay(1000);

} void loop()

{

setColor(255, 0, 0); // red

delay(1000);

setColor(0, 255, 0); // green

delay(1000);

setColor(0, 0, 255); // blue

delay(1000);

setColor(255, 255, 0);// yellow

delay(1000);

setColor(80, 0, 80); // purple

delay(1000);

setColor(0, 255, 255);// aqua

delay(1000);

}

嘗試向草圖添加自己的幾種顏色,并觀察LED上的效果。

如果使用的是公共陽極RGB LED,則需要更改模擬寫入值,以便從255中減去顏色,在草圖中取消注釋#define COMMON_ANODE行!

使用Internet顏色

如果您已完成任何Internet編程,則可能會(huì)意識(shí)到顏色通常表示為“十六進(jìn)制”數(shù)字。例如,紅色的數(shù)字為#FF0000。您可以使用以下表格找到與特定顏色關(guān)聯(lián)的數(shù)字:https://htmlcolorcodes.com/color-names/

該數(shù)字的六個(gè)數(shù)字實(shí)際上是三對數(shù)字。第一對是顏色的紅色部分,后兩位是綠色部分,最后兩位是藍(lán)色部分。紅色為#FF0000,因?yàn)樗淖畲蠹t色(FF為十六進(jìn)制255)并且沒有綠色或藍(lán)色部分。

能夠撥出這些顏色編號之一以使其顯示在屏幕上將非常有用。 RGB LED。

讓我們嘗試制作靛藍(lán)色(#4B0082)。

i》

靛藍(lán)的紅色,綠色和藍(lán)色部分(以十六進(jìn)制表示)分別為4B,00和82。我們可以將它們插入“ setColor”函數(shù)中,如下所示:

下載:文件

復(fù)制代碼

setColor(0x4B, 0x0, 0x82); // indigo setColor(0x4B, 0x0, 0x82); // indigo

我們在顏色的三個(gè)部分使用十六進(jìn)制數(shù)字,方法是在顏色的三個(gè)部分前面加上“ 0x”。

嘗試將自己的幾種顏色添加到“循環(huán)”功能中。不要忘了在每個(gè)延遲之后添加延遲。

理論(PWM)

脈沖寬度調(diào)制(PWM)是一種控制功率的技術(shù)。我們還在這里使用它來控制每個(gè)LED的亮度。

下圖顯示了Arduino上PWM引腳之一的信號。

大約每1/500秒,PWM輸出將產(chǎn)生一個(gè)脈沖。該脈沖的長度由“ analogWrite”功能控制。因此,“ analogWrite(0)”將根本不會(huì)產(chǎn)生任何脈沖,而“ analogWrite(255)”將產(chǎn)生一直持續(xù)到下一個(gè)脈沖到期的脈沖,因此輸出實(shí)際上一直都在。 》如果我們在AnalogWrite中指定一個(gè)介于0到255之間的值,那么我們將產(chǎn)生一個(gè)脈沖。如果輸出脈沖僅在5%的時(shí)間內(nèi)為高電平,那么無論我們驅(qū)動(dòng)什么,都將僅獲得5%的全功率。

但是,如果在90%的時(shí)間內(nèi)輸出為5V,則負(fù)載將獲得90%的電力。我們看不到LED會(huì)以這種速度打開和關(guān)閉,所以對我們來說,亮度似乎在變化。

其他要做的事情

嘗試將乒乓球放在LED上

嘗試更改延遲以加快速度或減慢顏色變化的速度

使用RGB LED可以做很多事情。檢出Internet上使用RGB LED的一些項(xiàng)目,您會(huì)發(fā)現(xiàn)視覺設(shè)備的多色持久性以及各種照明效果。

責(zé)任編輯:wv

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

    關(guān)注

    243

    文章

    24427

    瀏覽量

    687089
  • Arduino
    +關(guān)注

    關(guān)注

    190

    文章

    6514

    瀏覽量

    195855
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    ?LP5861 18通道RGB LED驅(qū)動(dòng)器技術(shù)解析與應(yīng)用指南

    Texas Instruments LP5861 18通道RGB LED矩陣驅(qū)動(dòng)器設(shè)計(jì)用于使用LED矩陣以小尺寸解決方案來改善具有動(dòng)畫效果和指示功能的善用戶體驗(yàn)。LP5861集成了18個(gè)具有N(N
    的頭像 發(fā)表于 09-19 10:36 ?526次閱讀
    ?LP5861 18通道<b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>驅(qū)動(dòng)器技術(shù)解析與應(yīng)用指南

    ?LP5520 RGB背光LED驅(qū)動(dòng)器技術(shù)文檔總結(jié)

    LP5520 是一款用于小型彩色 LCD 的 RGB 背光 LED 驅(qū)動(dòng)器。與白色 LED 背光相比,RGB 背光可在顯示屏實(shí)現(xiàn)更好的色彩
    的頭像 發(fā)表于 09-05 15:16 ?722次閱讀
    ?LP5520 <b class='flag-5'>RGB</b>背光<b class='flag-5'>LED</b>驅(qū)動(dòng)器技術(shù)文檔總結(jié)

    ?LP55281 12通道RGB/白光LED驅(qū)動(dòng)器技術(shù)文檔總結(jié)

    LP55281 器件是用于手持設(shè)備的四重 RGB LED 驅(qū)動(dòng)器。它可以驅(qū)動(dòng) 4 個(gè) RGB LED 組和一個(gè) fun-light LED
    的頭像 發(fā)表于 09-04 14:15 ?676次閱讀
    ?LP55281 12通道<b class='flag-5'>RGB</b>/白光<b class='flag-5'>LED</b>驅(qū)動(dòng)器技術(shù)文檔總結(jié)

    何在 NuMaker-IoT-M467 板使用 Arduino IDE 控制 Wi-Fi 模塊?

    在NuMaker開發(fā)板,有一個(gè)ESP-12F Wi-Fi模塊;但是,Arduino IDE 中的 NuMaker UNO 包不提供該模塊的相關(guān)控制。如果您希望在 Arduino IDE 中控制此模塊,您應(yīng)該如何進(jìn)行?
    發(fā)表于 09-04 08:28

    ?LM3435 RGB LED驅(qū)動(dòng)器技術(shù)文檔總結(jié)

    LM3435 是一款同步整流非隔離反激式轉(zhuǎn)換器,具有實(shí)現(xiàn)高效且經(jīng)濟(jì)高效的 RGB LED 驅(qū)動(dòng)器所需的所有功能。與傳統(tǒng)的反激式轉(zhuǎn)換器不同,LED 通過相應(yīng) LED 引腳上的內(nèi)部傳遞元件
    的頭像 發(fā)表于 08-29 14:42 ?651次閱讀
    ?LM3435 <b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>驅(qū)動(dòng)器技術(shù)文檔總結(jié)

    ?LP5812 4×3矩陣RGB LED驅(qū)動(dòng)器技術(shù)文檔總結(jié)

    LP5812 是一款具有自主動(dòng)畫引擎控制功能的 4 × 3 矩陣 RGB LED 驅(qū)動(dòng)器。該器件在點(diǎn)亮LED時(shí)具有0.4mA(典型值)的超低正常工作電流。 采用時(shí)間交叉復(fù)用(TCM)結(jié)構(gòu)
    的頭像 發(fā)表于 08-20 15:21 ?653次閱讀
    ?LP5812 4×3矩陣<b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>驅(qū)動(dòng)器技術(shù)文檔總結(jié)

    如何使用 MS51 PWM 通過 UART 控制 RGB LED?

    使用 MS51 PWM 通過 UART 控制 RGB LED
    發(fā)表于 08-20 07:24

    LP5813同步升壓4×3矩陣RGB LED驅(qū)動(dòng)器技術(shù)解析與應(yīng)用指南

    Texas Instruments LP5813 4 × 3矩陣RGB LED驅(qū)動(dòng)器是一款同步升壓RGB驅(qū)動(dòng)器,具有自主動(dòng)畫引擎控制功能。該器件非常適合用于支持輸入電壓范圍為0.5V至5.5V的電池供電應(yīng)用,具有超低正常工作電流
    的頭像 發(fā)表于 08-12 16:24 ?748次閱讀
    LP5813同步升壓4×3矩陣<b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>驅(qū)動(dòng)器技術(shù)解析與應(yīng)用指南

    RGB LED 時(shí)尚照明控制器 skyworksinc

    電子發(fā)燒友網(wǎng)為你提供()RGB LED 時(shí)尚照明控制器相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊,更有RGB LED 時(shí)尚照明控制器的引腳圖、接線圖、封裝手冊、中文資料、英文資料,
    發(fā)表于 07-28 18:34
    <b class='flag-5'>RGB</b> <b class='flag-5'>LED</b> 時(shí)尚照明控制器 skyworksinc

    何在樹莓派上安裝并運(yùn)行 Arduino 集成開發(fā)環(huán)境!

    使用樹莓派單板計(jì)算機(jī),你可以運(yùn)行各種應(yīng)用程序,包括廣受歡迎的Arduino集成開發(fā)環(huán)境(IDE)。這意味著你可以用它輕松地為通過USB連接到樹莓派計(jì)算機(jī)的微控制器編程,以創(chuàng)建交互式電子項(xiàng)目。下面
    的頭像 發(fā)表于 07-01 17:41 ?4019次閱讀
    如<b class='flag-5'>何在</b>樹莓派上安裝并運(yùn)行 <b class='flag-5'>Arduino</b> 集成開發(fā)環(huán)境!

    何在iMX8MM EVK啟用紅外接收器?

    使用 iMX8MM EVK,您還可以獲得一個(gè)與其中一個(gè) GPIO 接口的 IR 接收器 LED。通過今天的這篇文章,我將演示如何在 iMX8MM EVK 啟用紅外接收器,以便可以在 iMX8MM
    發(fā)表于 03-24 06:20

    Melexis推出MLX80142雙RGB LED驅(qū)動(dòng)芯片

    Melexis宣布推出MLX80142雙RGB LED驅(qū)動(dòng)芯片(六通道),作為邁來芯智能狀態(tài)機(jī)LED驅(qū)動(dòng)芯片系列的最新成員,這是第一款支持MeLiBu? 2.0協(xié)議的產(chǎn)品。該芯片不僅搭載邁來芯成熟
    的頭像 發(fā)表于 03-18 11:20 ?1203次閱讀

    DLPA2000重復(fù)啟動(dòng)RGB LED不亮的原因?

    我目前使用 DLPC3433+DLPA2000 搭配 DLP2010, 應(yīng)用在AR眼鏡 (左右兩眼顯示), 系統(tǒng)第一次開機(jī)時(shí), 兩邊的光機(jī)背光 ( RGB LED ) 皆可以正常點(diǎn)亮, 但是有
    發(fā)表于 02-24 07:36

    海信全球首款RGB-MiniLED電視國內(nèi)首次亮相

    2025年CES展會(huì)上,海信憑借RGB三維控色液晶顯示技術(shù)以及全球最大的116吋RGB-Mini LED電視獲得全球關(guān)注。2月19日,海信在北京舉辦了世俱杯旗艦新品媒體前瞻體驗(yàn)會(huì),正式在國內(nèi)展示了
    的頭像 發(fā)表于 02-20 17:54 ?1103次閱讀
    海信全球首款<b class='flag-5'>RGB</b>-MiniLED電視國內(nèi)首次亮相

    海信116英寸RGB-Mini LED:一朵綻放在科技穹頂?shù)闹袊ɑ?/a>

    中國顯示技術(shù)的花火就在你我眼前,變革將從RGB-Mini LED開始
    的頭像 發(fā)表于 01-08 09:11 ?6413次閱讀
    海信116英寸<b class='flag-5'>RGB</b>-Mini <b class='flag-5'>LED</b>:一朵綻放在科技穹頂?shù)闹袊ɑ? />    </a>
</div>                    </div>
                    <div   id=