資料介紹
描述
該項目使用Netduino.Foundation庫中包含的RgbPwmLed類。本指南由三部分組成:
- 第 1 部分:循環(huán)檢查 RGB LED 上的紅色、綠色和藍色引腳,以確保它們正確接線。
- 第 2 部分:只需幾行代碼,即可使 LED 發(fā)出所有可能的顏色。
- 第 3 部分:探索Netduino.Foundation庫提供的更有用的 LED API 方法。
RGB(紅、綠、藍)LED燈是具有四個腿的二極管 - 一個用于提到的每種顏色,一個用于共陰極(接地)或共陽極 (vcc),這也是最長的一個。

在這個項目中,您可以使用共陽極或共陰極 RGB LED。只需確保構(gòu)建與您使用的 LED 對應(yīng)的電路即可。
Netduino.Foundation是一個使用 Netduino 上的 .NET MicroFramework 快速構(gòu)建連接事物的平臺。由Wilderness Labs創(chuàng)建,它是開源的,由 Netduino 社區(qū)維護。
如果您是 Netduino 開發(fā)新手,我建議您轉(zhuǎn)到Netduino 入門項目以正確設(shè)置您的開發(fā)環(huán)境。
組裝電路
共陰極RGB LED

共陽極 RGB LED

注意:請注意,兩個電路中都沒有使用電阻器。通常,通過全電壓會燒毀 LED。但是,Netduino.Foundation可以使用 PWM 信號自動控制正向電壓。
創(chuàng)建一個 Netduino 項目
在 Visual Studio 2015 for Windows 或最新的 Visual Studio for Mac 中創(chuàng)建 Netduino 項目;將項目命名為RgbPwmLed 。
添加 Netduino.Foundation NuGet 包
視窗
右鍵單擊您的RgbPwmLed項目,然后單擊Manage NuGet Packages 。在瀏覽選項卡中,搜索Netduino.Foundation;它應(yīng)該是第一個搜索結(jié)果。單擊安裝按鈕。

蘋果系統(tǒng)
在解決方案資源管理器中按住 Alt 鍵單擊您的RgbPwmLed項目,然后單擊添加 => 添加 Nuget 包以打開 NuGet 包窗口。搜索Netduino.Foundation包并單擊Add Package將其添加到您的項目中。

第 1 部分:使 RGB LED 發(fā)出紅色、綠色和藍色光
在Program.cs文件中,粘貼以下代碼:
using Microsoft.SPOT;
using Netduino.Foundation;
using System.Threading;
using N = SecretLabs.NETMF.Hardware.Netduino;
namespace RgbPwmLed
{
public class Program
{
public static void Main()
{
// create a new pwm controlled RGB LED on pins
// Red = 11, Green = 10, and Blue = 9.
var rgbPwmLed = new Netduino.Foundation.LEDs.RgbPwmLed(
N.PWMChannels.PWM_PIN_D11,
N.PWMChannels.PWM_PIN_D10,
N.PWMChannels.PWM_PIN_D9,
2.1f,
3.0f,
3.0f,
false);
// run forever
while (true)
{
rgbPwmLed.SetColor(Color.FromHex("#FF0000"));
Debug.Print("=========== RED! ===========");
Thread.Sleep(1000);
rgbPwmLed.SetColor(Color.FromHex("#00FF00"));
Debug.Print("=========== GREEN! ===========");
Thread.Sleep(1000);
rgbPwmLed.SetColor(Color.FromHex("#0000FF"));
Debug.Print("=========== BLUE! ===========");
Thread.Sleep(1000);
}
}
}
}
在Main方法中,我們創(chuàng)建了一個名為 rgbPwmLed 的新RgbPwmLed對象。在構(gòu)造函數(shù)中,我們指定用于控制 LED 的引腳。由于我們沒有使用電阻,我們分別包含每個引腳的正向電壓(紅色為 2.1V,綠色和藍色為 3.0V )。構(gòu)造函數(shù)中的最后一個參數(shù)是可選的,它的布爾值isCommonCathode標志(默認為 true)。根據(jù)您正在處理的電路相應(yīng)地設(shè)置此值。
現(xiàn)在使用rgbPwmLed對象,在一個 while 無限循環(huán)中,我們正在調(diào)用SetColor(Color color)方法,以十六進制代碼傳遞紅色、綠色和藍色,并使線程休眠一秒鐘。您還可以聲明以 RGB 或 HSA 值指定的顏色,甚至是預定義的命名顏色。
此外,要跟蹤 LED 上當前顯示的顏色,您可以使用Debug.Print 指示程序始終顯示的顏色,以確保正確連接所有 LED 支腳。
運行項目
單擊 Visual Studio 中的運行按鈕以查看 RGB LED 的運行情況!您應(yīng)該會看到 LED 每秒循環(huán)顯示紅色、綠色和藍色,如下圖所示:
第 2 部分:使 RGB LED 通過所有色調(diào)發(fā)光
在這一部分中,讓我們?yōu)轫椖吭鎏硪恍┤の丁?/font>讓我們編寫一個小算法來遍歷色相光譜中所有 360 種可能的顏色。為什么是360?使用色相、飽和度、亮度和 Alpha 顏色模型,它具有圓柱形幾何形狀,并且在完全飽和度和 Alpha 值下經(jīng)過每個度數(shù),它將顯示 RGB 光譜內(nèi)的所有顏色。
刪除While(true)循環(huán)內(nèi)的代碼,然后粘貼For循環(huán)。它應(yīng)該如下所示:
...
while (true)
{
// loop through the entire hue spectrum (360 degrees)
for (int i = 0; i < 360; i++)
{
var hue = ((double)i / 360F);
Debug.Print(hue.ToString());
// set the color of the RGB
rgbPwmLed.SetColor(Color.FromHsba(((double)i/360F), 1, 1));
// for a fun, fast rotation through the hue spectrum:
//Thread.Sleep (1);
// for a moderate walk through the forest of colors;
Thread.Sleep(10);
}
}
...
在這個For中,我們聲明了一個局部雙色調(diào)并分配 i/360 的除法結(jié)果。之后,我們在rgbPwmLed對象上調(diào)用 SetColor (Color.FromHsba(hue, 1, 1))方法,最后做一個Thread.Sleep(10)以適中的速度查看所有顏色。
運行項目
現(xiàn)在運行項目時,應(yīng)該會看到如下內(nèi)容:
第 3 部分:使用 StartRunningColors 方法
您應(yīng)該檢查的另一個有用的 API 方法是StartRunningColors ,它包括傳遞一個顏色列表以及每個顏色的持續(xù)時間。以下代碼片段使 LED 發(fā)光Color.White 1000ms (1s),然后Color.Aqua 500ms (0.5s),然后Color.ForrestGreen 1000ms (1s),最后Color.OrangeRed 500ms (0.5s)。
...
while (true)
{
// run through various colors for 10 seconds
rgbPwmLed.StartRunningColors(
new System.Collections.ArrayList
{
Color.White,
Color.Aqua,
Color.ForestGreen,
Color.OrangeRed
},
new int[] { 1000, 500, 1000, 500 });
Thread.Sleep(10000);
}
...
運行項目
現(xiàn)在運行項目時,您會看到如下內(nèi)容:
我建議您查看RgbPwmLed 官方文檔,這樣您就可以看到還有哪些有趣的 API 方法可以讓您在使用 RGB LED 時更輕松地工作。
查看 Netduino.Foundation!
就您可以使用 Netduino.Foundation 做的大量令人興奮的事情而言,這個項目只是冰山一角。
- 它帶有一個龐大的外圍驅(qū)動程序庫,其中包含最常見的傳感器和外圍設(shè)備的驅(qū)動程序。
- 外圍驅(qū)動程序封裝了核心邏輯并公開了一個簡單、干凈、現(xiàn)代的 API。
- 這個項目得到了一個不斷發(fā)展的社區(qū)的支持,該社區(qū)不斷致力于構(gòu)建很酷的互聯(lián)事物,并且總是很高興能幫助新人并討論新項目。
參考
- UART軟件控制的RGB LED混色與MSP430? MCU
- RGB混色器Arduino項目
- 如何使用Arduino的RGB Led產(chǎn)生16M色
- WS2812B RGB LED亮度控制和混色開源分享
- 紅外遙控rgb七彩LED燈使用說明 15次下載
- 高分辨率RGB LED混色應(yīng)用筆記 18次下載
- RGB LED在汽車氛圍燈中的應(yīng)用說明 31次下載
- SMD1204 RGB共陰三色貼片LED燈珠的數(shù)據(jù)手冊免費下載 5次下載
- LED燈RGB色盤算法應(yīng)用程序APP的詳細資料免費下載 11次下載
- RGB LED的詳細介紹如何通過一個RGB小燈隨機產(chǎn)生不同的炫彩顏色 57次下載
- LED白光的成形原理及RGB燈等分別介紹 5次下載
- RGB三色直方圖的繪制 17次下載
- RGB三色燈的原理 262次下載
- 6色LED背光模塊光學特性
- 三色LED顯示屏的設(shè)計與實現(xiàn)
- Micro LED顯示面板的光學性能研究 2845次閱讀
- LCD顯示屏的RGB分類 RGB屏的EMI問題和解決方案 4436次閱讀
- LED顯示屏灰度有多少等級 3727次閱讀
- RGB顏色空間與RGB三色中色調(diào)、飽和度、亮度之間的關(guān)系 9745次閱讀
- RGB LED多重色彩光源的挑戰(zhàn)及技術(shù)解決方法 2565次閱讀
- dfrobot8x8 RGB LED Matrix 點陣模塊簡介 4329次閱讀
- 基于RGB-LED的背光驅(qū)動系統(tǒng)設(shè)計 1934次閱讀
- PdigilentRGB OLED顯示屏簡介 1842次閱讀
- 微雪電子樹莓派RGB全彩LED擴展|RGB LED HAT介紹 2543次閱讀
- 微雪電子樹莓派RGB全彩LED擴展|RGB LED HAT (B)介紹 3252次閱讀
- 如何提高LED背光的發(fā)光效率 3415次閱讀
- COB小間距顯示技術(shù)解決了SMD分立器件LED小間距顯示技術(shù)的痛點 4910次閱讀
- LED舞臺和建筑照明色彩控制:基于I2C控制功能LED的13位色彩控制 2364次閱讀
- rgb led燈變色原理詳解_RGB三基色LED變色程序 11w次閱讀
- 愛綠Super Diamond LED超廣色域顯示技術(shù) 1370次閱讀
下載排行
本周
- 1DD3118電路圖紙資料
- 0.08 MB | 1次下載 | 免費
- 2AD庫封裝庫安裝教程
- 0.49 MB | 1次下載 | 免費
- 3PC6206 300mA低功耗低壓差線性穩(wěn)壓器中文資料
- 1.12 MB | 1次下載 | 免費
- 4網(wǎng)絡(luò)安全從業(yè)者入門指南
- 2.91 MB | 1次下載 | 免費
- 5DS-CS3A P00-CN-V3
- 618.05 KB | 1次下載 | 免費
- 6海川SM5701規(guī)格書
- 1.48 MB | 次下載 | 免費
- 7H20PR5電磁爐IGBT功率管規(guī)格書
- 1.68 MB | 次下載 | 1 積分
- 8IP防護等級說明
- 0.08 MB | 次下載 | 免費
本月
- 1貼片三極管上的印字與真實名稱的對照表詳細說明
- 0.50 MB | 103次下載 | 1 積分
- 2涂鴉各WiFi模塊原理圖加PCB封裝
- 11.75 MB | 89次下載 | 1 積分
- 3錦銳科技CA51F2 SDK開發(fā)包
- 24.06 MB | 43次下載 | 1 積分
- 4錦銳CA51F005 SDK開發(fā)包
- 19.47 MB | 19次下載 | 1 積分
- 5PCB的EMC設(shè)計指南
- 2.47 MB | 16次下載 | 1 積分
- 6HC05藍牙原理圖加PCB
- 15.76 MB | 13次下載 | 1 積分
- 7802.11_Wireless_Networks
- 4.17 MB | 12次下載 | 免費
- 8蘋果iphone 11電路原理圖
- 4.98 MB | 6次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191390次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183342次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81588次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65989次下載 | 10 積分
評論