在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

怎樣用NetduinoFoundation控制RGBLED

454398 ? 來源:工程師吳畏 ? 2019-08-05 09:09 ? 次閱讀

這個項目使用 Netduino.Foundation 庫中包含的RgbPwmLed 類。本指南由三部分組成:

第1部分:循環通過RGB LED上的紅色,綠色和藍色引腳,確保它們正確接線。

第2部分:只需幾行代碼就可以讓LED煥發所有可能的色調。

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

公共陰極和公共陽極RGB LED

在此項目中,您可以使用共陽極或共陰極RGB LED。只需確保構建與您正在使用的LED相對應的電路。

Netduino.Foundation 是一個使用Netduino上的.NET MicroFramework快速構建連接內容的平臺。由Wilderness Labs創建,它是開源的,由Netduino社區維護。

如果你是Netduino開發的新手,我建議你去Netduino項目入門,正確設置你的開發環境。

組裝電路

公共陰極RGB LED

共陰極RGB LED的電路

公共陽極RGB LED

共陽極RGB LED的電路

注意:請注意,兩個電路中都沒有使用寄存器。通常,通過全電壓可以燒毀LED。但是,Netduino.Foundation可以使用PWM信號自動控制正向電壓。

創建Netduino項目

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

添加Netduino.Foundation NuGet包

Windows

右鍵單擊RgbPwmLed項目,然后單擊Manage NuGet包。在“瀏覽”選項卡中,搜索Netduino.Foundation;它應該是第一個搜索結果。單擊“安裝”按鈕。

macOS

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

第1部分:使RGB LED發紅光,綠光和藍光

在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 方法中,我們創建了一個新 RgbPwmLed 名為 rgbPwmLed 的對象。在構造函數中,我們指定用于控制LED的引腳。由于我們沒有使用電阻,我們分別為每個引腳包括正向電壓(紅色為2.1V,綠色和藍色為3.0V)。構造函數中的最后一個參數是可選的,它的布爾值 isCommonCathode 標志(默認為true)。根據您正在使用的電路相應地設置此值。

現在使用 rgbPwmLed 對象,在一個無限循環內,我們調用 SetColor(顏色)方法,傳遞紅色,綠色和藍色十六進制代碼,并使線程休眠一秒鐘。您還可以聲明以RGB或HSA值指定的顏色,甚至是預定義的命名顏色。

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

運行項目

單擊Visual Studio中的運行按鈕以查看RGB LED的運行情況!您應該看到LED每秒循環顯示紅色,綠色和藍色,如下面的gif:

RGB LED燈紅色,綠色和藍色

第2部分:使RGB LED煥發所有色調

在這部分中,讓我們稍微調整一下項目。讓我們編寫一個小算法來遍歷Hue頻譜中的所有360種顏色。為何360?使用色相,飽和度,亮度和Alpha顏色模型,它具有圓柱形幾何形狀,并以完全飽和度和alpha值通過每個度數,它將顯示RGB光譜內的所有顏色。

刪除 While(true)循環內的代碼,然后粘貼 For 循環。它應該如下所示:

。..

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 中,我們聲明一個本地雙色調并分配結果劃分i/360。之后,我們在 rgbPwmLed 對象上調用 SetColor(Color.FromHsba(hue,1,1))方法,最后執行 Thread.Sleep( 10)以適中的速度查看所有顏色。

運行項目

現在運行項目時,您應該看到像這樣的東西:

RGB LED循環通過不同的色調

第3部分:使用StartRunningColors方法

你應該檢查的另一個有用的API方法是 StartRunningColors ,它包括傳遞一個顏色列表以及每個人的持續時間。以下代碼片段使LED發光 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);

}

。..

運行項目

當你現在運行項目時,你會看到如下內容:

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • led
    led
    +關注

    關注

    242

    文章

    23731

    瀏覽量

    671261
  • Netduino
    +關注

    關注

    0

    文章

    19

    瀏覽量

    3486
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    使用ADS1281的SPI采集數據,各個引腳應該怎么連接?

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

    ADS131A02讀出的數據不對是怎么回事?

    我的SCLK是4M,fmod = SCLK/2, fdata = fmod /32, 那我應該怎樣用SCLK 讀取數據呢?我使用的是同步從模式。現在我的CS,sync連在一起,配置完寄存器后一直為低電平,讀出的數據全是6.
    發表于 12-03 08:14

    MCU控制AIC3254時,SrereoMixer模塊的參數是什么格式?

    我現在在用貴公司的purepath開發AIC3254,MCU控制AIC3254 時,SrereoMixer模塊的參數是什么格式?例如系數為0.5,要怎樣做才能轉換為purepath生成的0x400000?我沒有找到方法和相關
    發表于 11-01 08:01

    請問TAS5706如何用硬件控制I2C?

    TAS5706 的Control Interface可以HW,SW。我想問問怎樣用HW來控制呢?因為我一個板上預計8個TAS5706,MCU怎樣去識別?
    發表于 10-23 08:33

    多個TLV320AIC3254一路I2C總線對其配置可行嗎?

    一片CPU3片TLV320AIC3254做音頻處理,想用一路I2C總線對其配置可行嗎? 地址好像是唯一的 0011000沒法設置,手冊中又提到可使用10位地址但是沒找到說明怎樣用,哪位大俠用過
    發表于 10-22 07:54

    如何用5509A產生一個白噪聲,經AIC23播放出來然后再用AIC23采集這個聲音?

    怎樣用5509A產生一個白噪聲,經AIC23播放出來然后再用AIC23采集這個聲音
    發表于 10-15 06:26

    怎樣測電機燒沒燒

    使用萬表檢測電機是否燒壞,可以按照以下步驟進行: 一、準備工作 確保安全 :在進行任何電氣測試之前,確保斷開電源并使用絕緣手套和絕緣工具進行操作,以確保個人安全。 準備工具 :準備一臺功能正常
    的頭像 發表于 09-27 09:58 ?3018次閱讀

    怎樣用表肖特基橋的好壞

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

    怎樣用自己的電腦遠程公司的電腦

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

    怎樣用THS3201實現輸出功率可調?

    怎樣用THS3201實現輸出功率可調?
    發表于 08-26 08:28

    VCA824怎樣實現增益-20dB到20db可調?

    VCA824怎樣實現增益-20dB到20db可調?,VG端電壓該怎樣控制
    發表于 08-23 07:16

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

    當輸入信號VG1從7.06V慢慢變化到7.22V時。 輸出電壓Vout的變化必須是接近線性變化的。我想知道我該怎樣用TINA TI去仿真?怎樣設置那個輸入信號VG1才能達到我的目的。因為這個電壓源好像
    發表于 08-02 08:39

    怎樣用表測穩壓管穩壓值

    表是一種常用的電子測量工具,可以用來測量電壓、電流、電阻等多種參數。在測量穩壓管的穩壓值時,我們可以使用萬表的直流電壓測量功能。以下是步驟和注意事項: 準備工具和材料 萬表 穩壓管 電源
    的頭像 發表于 07-31 14:26 ?2923次閱讀

    怎樣用Arduino測試鋰電池容量

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

    繼電器的實質是什么控制什么

    繼電器是一種電氣設備,其主要功能是在控制電路中實現對高電壓、大電流負載的控制。繼電器的實質是低電壓、小電流的控制信號來控制高電壓、大電流的
    的頭像 發表于 06-21 10:03 ?1625次閱讀
    主站蜘蛛池模板: 国产伦精品一区二区三区免 | 免费在线看片网站 | 视频一区亚洲 | 一区二区三区中文 | 日本a级精品一区二区三区 日本a级特黄三级三级三级 | 午夜欧美福利 | 亚洲vv | 永久免费的拍拍拍网站 | 日韩色影视 | 高清一区高清二区视频 | 男人的天堂午夜 | 成人免费久久精品国产片久久影院 | 色狠狠一区二区 | 久久女同| 亚洲 欧美 自拍 另类 | 久久综合狠狠综合久久综合88 | 色中文网 | 日鲁夜鲁鲁狠狠综合视频 | 亚洲人成网站在线观看妞妞网 | 欧美三页 | 午夜肉伦伦影院在线观看 | 久久精品午夜 | 第九色 | 日本天天操 | 欧美性极品hd高清视频 | 奇米欧美成人综合影院 | 91免费网站在线看入口黄 | 拍拍拍无档又黄又爽视频 | 国产精品成人一区二区 | 国产精品久久久久久久成人午夜 | 月夜免费观看高清在线完整 | 狠狠色丁香久久婷婷综合丁香 | 三级黄色在线视频中文 | 国产美女影院 | 日韩一级片在线免费观看 | 亚洲国产成人久久99精品 | 国产精品伦理一区二区三区 | 国产免费播放一区二区三区 | 亚洲黄网免费 | 天天射天天干天天 | 黄字幕网|