一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

怎樣用NetduinoFoundation控制RGBLED

454398 ? 來(lái)源:工程師吳畏 ? 2019-08-05 09:09 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

這個(gè)項(xiàng)目使用 Netduino.Foundation 庫(kù)中包含的RgbPwmLed 類(lèi)。本指南由三部分組成:

第1部分:循環(huán)通過(guò)RGB LED上的紅色,綠色和藍(lán)色引腳,確保它們正確接線。

第2部分:只需幾行代碼就可以讓LED煥發(fā)所有可能的色調(diào)。

第3部分:探索由Netduino.Foundation Library提供的更有用的LED API方法。

公共陰極和公共陽(yáng)極RGB LED

在此項(xiàng)目中,您可以使用共陽(yáng)極或共陰極RGB LED。只需確保構(gòu)建與您正在使用的LED相對(duì)應(yīng)的電路。

Netduino.Foundation 是一個(gè)使用Netduino上的.NET MicroFramework快速構(gòu)建連接內(nèi)容的平臺(tái)。由Wilderness Labs創(chuàng)建,它是開(kāi)源的,由Netduino社區(qū)維護(hù)。

如果你是Netduino開(kāi)發(fā)的新手,我建議你去Netduino項(xiàng)目入門(mén),正確設(shè)置你的開(kāi)發(fā)環(huán)境。

組裝電路

公共陰極RGB LED

共陰極RGB LED的電路

公共陽(yáng)極RGB LED

共陽(yáng)極RGB LED的電路

注意:請(qǐng)注意,兩個(gè)電路中都沒(méi)有使用寄存器。通常,通過(guò)全電壓可以燒毀LED。但是,Netduino.Foundation可以使用PWM信號(hào)自動(dòng)控制正向電壓。

創(chuàng)建Netduino項(xiàng)目

在Visual Studio 2015 for Windows或最新的Visual Studio for Mac中創(chuàng)建Netduino項(xiàng)目;將項(xiàng)目命名為 RgbPwmLed 。

添加Netduino.Foundation NuGet包

Windows

右鍵單擊RgbPwmLed項(xiàng)目,然后單擊Manage NuGet包。在“瀏覽”選項(xiàng)卡中,搜索Netduino.Foundation;它應(yīng)該是第一個(gè)搜索結(jié)果。單擊“安裝”按鈕。

macOS

按住Alt鍵點(diǎn)擊 RgbPwmLed 項(xiàng)目在 解決方案資源管理器 中,然后單擊 添加=》添加Nuget包 打開(kāi)NuGet包窗口。搜索 Netduino.Foundation 軟件包,然后單擊 添加軟件包 將其添加到項(xiàng)目中。

第1部分:使RGB LED發(fā)紅光,綠光和藍(lán)光

在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)建了一個(gè)新 RgbPwmLed 名為 rgbPwmLed 的對(duì)象。在構(gòu)造函數(shù)中,我們指定用于控制LED的引腳。由于我們沒(méi)有使用電阻,我們分別為每個(gè)引腳包括正向電壓(紅色為2.1V,綠色和藍(lán)色為3.0V)。構(gòu)造函數(shù)中的最后一個(gè)參數(shù)是可選的,它的布爾值 isCommonCathode 標(biāo)志(默認(rèn)為true)。根據(jù)您正在使用的電路相應(yīng)地設(shè)置此值。

現(xiàn)在使用 rgbPwmLed 對(duì)象,在一個(gè)無(wú)限循環(huán)內(nèi),我們調(diào)用 SetColor(顏色)方法,傳遞紅色,綠色和藍(lán)色十六進(jìn)制代碼,并使線程休眠一秒鐘。您還可以聲明以RGB或HSA值指定的顏色,甚至是預(yù)定義的命名顏色。

此外,為了跟蹤LED當(dāng)前顯示的顏色,您可以使用調(diào)試.Print 指示程序始終顯示的顏色,只是為了確保正確連接所有LED支腳。

運(yùn)行項(xiàng)目

單擊Visual Studio中的運(yùn)行按鈕以查看RGB LED的運(yùn)行情況!您應(yīng)該看到LED每秒循環(huán)顯示紅色,綠色和藍(lán)色,如下面的gif:

RGB LED燈紅色,綠色和藍(lán)色

第2部分:使RGB LED煥發(fā)所有色調(diào)

在這部分中,讓我們稍微調(diào)整一下項(xiàng)目。讓我們編寫(xiě)一個(gè)小算法來(lái)遍歷Hue頻譜中的所有360種顏色。為何360?使用色相,飽和度,亮度和Alpha顏色模型,它具有圓柱形幾何形狀,并以完全飽和度和alpha值通過(guò)每個(gè)度數(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 中,我們聲明一個(gè)本地雙色調(diào)并分配結(jié)果劃分i/360。之后,我們?cè)?rgbPwmLed 對(duì)象上調(diào)用 SetColor(Color.FromHsba(hue,1,1))方法,最后執(zhí)行 Thread.Sleep( 10)以適中的速度查看所有顏色。

運(yùn)行項(xiàng)目

現(xiàn)在運(yùn)行項(xiàng)目時(shí),您應(yīng)該看到像這樣的東西:

RGB LED循環(huán)通過(guò)不同的色調(diào)

第3部分:使用StartRunningColors方法

你應(yīng)該檢查的另一個(gè)有用的API方法是 StartRunningColors ,它包括傳遞一個(gè)顏色列表以及每個(gè)人的持續(xù)時(shí)間。以下代碼片段使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);

}

。..

運(yùn)行項(xiàng)目

當(dāng)你現(xiàn)在運(yùn)行項(xiàng)目時(shí),你會(huì)看到如下內(nèi)容:

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(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)注

    242

    文章

    23838

    瀏覽量

    673922
  • Netduino
    +關(guān)注

    關(guān)注

    0

    文章

    19

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    使用ADS1281的SPI采集數(shù)據(jù),各個(gè)引腳應(yīng)該怎么連接?

    我想使用ADS1281的SPI采集數(shù)據(jù),各個(gè)引腳應(yīng)該怎么連接?那些是必須用I/O口,那些可以直接上拉或下啦,如果想預(yù)留PIN模式,怎樣用最少的I/O口接線,還有同步輸入引腳的作用是什么?應(yīng)該怎么接線?謝謝
    發(fā)表于 02-10 06:52

    AFE4400怎樣控制開(kāi)始ADC,停止ADC?

    AFE4400怎樣控制開(kāi)始ADC,停止ADC。
    發(fā)表于 01-14 08:15

    ADS131A02讀出的數(shù)據(jù)不對(duì)是怎么回事?

    我的SCLK是4M,fmod = SCLK/2, fdata = fmod /32, 那我應(yīng)該怎樣用SCLK 讀取數(shù)據(jù)呢?我使用的是同步從模式?,F(xiàn)在我的CS,sync連在一起,配置完寄存器后一直為低電平,讀出的數(shù)據(jù)全是6.
    發(fā)表于 12-03 08:14

    MCU控制AIC3254時(shí),SrereoMixer模塊的參數(shù)是什么格式?

    我現(xiàn)在在用貴公司的purepath開(kāi)發(fā)AIC3254,MCU控制AIC3254 時(shí),SrereoMixer模塊的參數(shù)是什么格式?例如系數(shù)為0.5,要怎樣做才能轉(zhuǎn)換為purepath生成的0x400000?我沒(méi)有找到方法和相關(guān)
    發(fā)表于 11-01 08:01

    請(qǐng)問(wèn)TAS5706如何用硬件控制I2C?

    TAS5706 的Control Interface可以HW,SW。我想問(wèn)問(wèn)怎樣用HW來(lái)控制呢?因?yàn)槲乙粋€(gè)板上預(yù)計(jì)8個(gè)TAS5706,MCU怎樣去識(shí)別?
    發(fā)表于 10-23 08:33

    多個(gè)TLV320AIC3254一路I2C總線對(duì)其配置可行嗎?

    一片CPU3片TLV320AIC3254做音頻處理,想用一路I2C總線對(duì)其配置可行嗎? 地址好像是唯一的 0011000沒(méi)法設(shè)置,手冊(cè)中又提到可使用10位地址但是沒(méi)找到說(shuō)明怎樣用,哪位大俠用過(guò)
    發(fā)表于 10-22 07:54

    如何用5509A產(chǎn)生一個(gè)白噪聲,經(jīng)AIC23播放出來(lái)然后再用AIC23采集這個(gè)聲音?

    怎樣用5509A產(chǎn)生一個(gè)白噪聲,經(jīng)AIC23播放出來(lái)然后再用AIC23采集這個(gè)聲音
    發(fā)表于 10-15 06:26

    萬(wàn)怎樣測(cè)電機(jī)燒沒(méi)燒

    使用萬(wàn)表檢測(cè)電機(jī)是否燒壞,可以按照以下步驟進(jìn)行: 一、準(zhǔn)備工作 確保安全 :在進(jìn)行任何電氣測(cè)試之前,確保斷開(kāi)電源并使用絕緣手套和絕緣工具進(jìn)行操作,以確保個(gè)人安全。 準(zhǔn)備工具 :準(zhǔn)備一臺(tái)功能正常
    的頭像 發(fā)表于 09-27 09:58 ?3624次閱讀

    怎樣用萬(wàn)表肖特基橋的好壞

    肖特基橋是一種由肖特基二極管組成的整流橋,它具有低正向壓降和高開(kāi)關(guān)速度,廣泛應(yīng)用于開(kāi)關(guān)電源、DC-DC轉(zhuǎn)換器、逆變器等電路中。由于其在高頻和低電壓應(yīng)用中的優(yōu)異性能,肖特基橋的狀態(tài)直接影響設(shè)備的運(yùn)行穩(wěn)定性。一、肖特基橋的基本原理肖特基橋與傳統(tǒng)整流橋類(lèi)似,也是由四個(gè)二極管組成,用來(lái)將交流電(AC)轉(zhuǎn)換為直流電(DC)。不同的是,肖特基橋采用肖特基二極管,這種二極
    的頭像 發(fā)表于 09-20 10:40 ?586次閱讀
    <b class='flag-5'>怎樣用</b>萬(wàn)<b class='flag-5'>用</b>表肖特基橋的好壞

    怎樣用自己的電腦遠(yuǎn)程公司的電腦

    隨著遠(yuǎn)程辦公和居家辦公的普及,如何高效、安全地遠(yuǎn)程控制辦公室電腦成為許多職場(chǎng)人士的需求。Splashtop作為一款專(zhuān)業(yè)的遠(yuǎn)程控制軟件,提供了強(qiáng)大的功能,使用戶能夠隨時(shí)隨地訪問(wèn)和操作辦公室的電腦,實(shí)現(xiàn)
    的頭像 發(fā)表于 08-30 13:20 ?476次閱讀
    <b class='flag-5'>怎樣用</b>自己的電腦遠(yuǎn)程公司的電腦

    怎樣用THS3201實(shí)現(xiàn)輸出功率可調(diào)?

    怎樣用THS3201實(shí)現(xiàn)輸出功率可調(diào)?
    發(fā)表于 08-26 08:28

    VCA824怎樣實(shí)現(xiàn)增益-20dB到20db可調(diào)?

    VCA824怎樣實(shí)現(xiàn)增益-20dB到20db可調(diào)?,VG端電壓該怎樣控制?
    發(fā)表于 08-23 07:16

    OPA735加OPA333,怎樣用TINA TI去仿真?

    當(dāng)輸入信號(hào)VG1從7.06V慢慢變化到7.22V時(shí)。 輸出電壓Vout的變化必須是接近線性變化的。我想知道我該怎樣用TINA TI去仿真?怎樣設(shè)置那個(gè)輸入信號(hào)VG1才能達(dá)到我的目的。因?yàn)檫@個(gè)電壓源好像
    發(fā)表于 08-02 08:39

    怎樣用萬(wàn)表測(cè)穩(wěn)壓管穩(wěn)壓值

    萬(wàn)表是一種常用的電子測(cè)量工具,可以用來(lái)測(cè)量電壓、電流、電阻等多種參數(shù)。在測(cè)量穩(wěn)壓管的穩(wěn)壓值時(shí),我們可以使用萬(wàn)表的直流電壓測(cè)量功能。以下是步驟和注意事項(xiàng): 準(zhǔn)備工具和材料 萬(wàn)表 穩(wěn)壓管 電源
    的頭像 發(fā)表于 07-31 14:26 ?3114次閱讀

    怎樣用Arduino測(cè)試鋰電池容量

    本文詳細(xì)介紹了如何用Arduino測(cè)量鋰電池的容量。并附有電路圖和Arduino的程序代碼。
    的頭像 發(fā)表于 07-30 09:14 ?1661次閱讀
    <b class='flag-5'>怎樣用</b>Arduino測(cè)試鋰電池容量