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

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

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

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

怎樣用聲音控制RGBLED的顏色

454398 ? 來(lái)源:工程師吳畏 ? 2019-07-31 11:06 ? 次閱讀

連接RGB LED的最長(zhǎng)腳到Arduino。通過(guò)220歐姆電阻將其他支路連接到Arduino的引腳9,10和11,如下面的電路圖所示。

怎樣用聲音控制RGBLED的顏色

如何運(yùn)行程序

首先,粘貼在Arduino IDE中本文末尾為Arduino提供的代碼并上傳代碼。

然后,您需要從Wekinator的示例頁(yè)面下載草圖。

下載MFCC的可執(zhí)行文件(mel頻率倒頻譜系數(shù))。我有一個(gè)64位操作系統(tǒng),所以我從那里下載了“win64”。

下載后,解壓縮并運(yùn)行“.exe”文件。它將如下所示。現(xiàn)在您需要一個(gè)麥克風(fēng)來(lái)為Wekinator提供輸入。如果您已連接外接麥克風(fēng),請(qǐng)確保在計(jì)算機(jī)的聲音設(shè)置中選擇它。

您將需要另一個(gè)草圖(“輸出草圖”) )從Wekinator獲得輸出。該草圖在本文末尾給出。將其粘貼到新的處理窗口并運(yùn)行草圖。

現(xiàn)在打開(kāi)Wekinator并進(jìn)行如下圖所示的設(shè)置。將輸入設(shè)置為13,將輸出設(shè)置為1.將類(lèi)型設(shè)置為“所有動(dòng)態(tài)時(shí)間扭曲”,使用3種手勢(shì)類(lèi)型,然后單擊“下一步”。

現(xiàn)在按住output_1前面的“+”按鈕并說(shuō)“紅色”。

然后按住output_2前面的“+”按鈕并說(shuō)“綠色”。

然后按住output_3前面的“+”按鈕并說(shuō)“藍(lán)色”。

之后,單擊“Train”,然后單擊“Run”。現(xiàn)在,RGB LED的顏色將根據(jù)您說(shuō)的顏色名稱(chēng)而改變。

Arduino代碼

#include //Including the library that will help us in receiving and sending the values from processing

ValueReceiver《1》 receiver; /*Creating the receiver that will receive 1 value.

Put the number of values to synchronize in the brackets */

/* The below variable will be synchronized in the processing

and they should be same on both sides. */

int output;

// Initializing the pins for led‘s

int red_light_pin= 11;

int green_light_pin = 10;

int blue_light_pin = 9;

void setup()

{

/* Starting the serial communication because we are communicating with the

Processing through serial. The baudrate should be same as on the processing side. */

Serial.begin(19200);

pinMode(red_light_pin, OUTPUT);

pinMode(green_light_pin, OUTPUT);

pinMode(blue_light_pin, OUTPUT);

// Synchronizing the variable with the processing. The variable must be int type.

receiver.observe(output);

}

void loop()

{

// Receiving the output from the processing.

receiver.sync();

// Matching the received output to light up the RGB LED

if (output == 1)

{

RGB_color(255, 0, 0); // Red

}

else if (output == 2)

{

RGB_color(0, 255, 0); // Green

}

else if (output ==3)

{

RGB_color(0, 0, 255); // Blue

}

}

void RGB_color(int red_light_value, int green_light_value, int blue_light_value)

{

analogWrite(red_light_pin, red_light_value);

analogWrite(green_light_pin, green_light_value);

analogWrite(blue_light_pin, blue_light_value);

}

處理代碼(輸出草圖)

import vsync.*; // Importing the library that will help us in sending and receiving the values from the Arduino

import processing.serial.*; // Importing the serial library

// Below libraries will connect and send, receive the values from wekinator

import oscP5.*;

import netP5.*;

// Creating the instances

OscP5 oscP5;

NetAddress dest;

ValueSender sender;

// This variable will be syncronized with the Arduino and it should be same on the Arduino side.

public int output;

void setup()

{

// Starting the serial communication, the baudrate and the com port should be same as on the Arduino side.

Serial serial = new Serial(this, “COM10”, 19200);

sender = new ValueSender(this, serial);

// Synchronizing the variable as on the Arduino side.

sender.observe(“output”);

// Starting the communication with wekinator. listen on port 12000, return messages on port 6448

oscP5 = new OscP5(this, 12000);

dest = new NetAddress(“127.0.0.1”, 6448);

}

//This is called automatically when OSC message is received

void oscEvent(OscMessage theOscMessage) {

if (theOscMessage.checkAddrPattern(“/output_1”)==true)

{

output = 1;

}

else if (theOscMessage.checkAddrPattern(“/output_2”)==true)

{

output = 2;

}

else if (theOscMessage.checkAddrPattern(“/output_3”) == true)

{

output = 3;

}

else

{

}

}

void draw()

{

// Nothing to be drawn for this example

}

聲明:本文內(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

    文章

    23741

    瀏覽量

    671360
  • Arduino
    +關(guān)注

    關(guān)注

    189

    文章

    6493

    瀏覽量

    190203
收藏 人收藏

    評(píng)論

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

    PCBA板的顏色密碼:選美大賽還是實(shí)用主義?

    同關(guān)于顏色下深藏這怎樣的故事吧。 這些色彩斑斕的"外衣"其實(shí)是阻焊層涂料,就像電路板的防曬霜,主要作用是保護(hù)銅箔不被氧化。常見(jiàn)顏色里,綠色占全球80%的產(chǎn)量,不是因?yàn)樗钇粒沁@種松香樹(shù)脂材料最便宜——在廣東工廠里,綠
    的頭像 發(fā)表于 02-28 08:53 ?410次閱讀

    DLPC150采用I2C控制時(shí),如何控制LED開(kāi)關(guān)?如何控制顯示的顏色

    在DLPC150 Programmer’s Guide文件只有對(duì)投影圖像的控制命令,沒(méi)有對(duì)燈光開(kāi)關(guān)和顏色控制,請(qǐng)?zhí)峁┫嚓P(guān)資料。
    發(fā)表于 02-21 10:41

    如何選擇PCB顏色

    一、PCB顏色代表什么意思? ? PCB顏色一般是指拿到一塊PCB板時(shí)最直觀看到的板子上的油色,PCB表面的顏色就是阻焊劑的顏色。PCB板染色顏料是一種硬化樹(shù)脂,主體樹(shù)脂是無(wú)色近透明的
    的頭像 發(fā)表于 12-24 11:33 ?983次閱讀

    將AIC33的DIN和DOUT腳短路的方式實(shí)現(xiàn)自環(huán)時(shí),說(shuō)話的聲音稍微大點(diǎn)的時(shí)候,會(huì)在聲音上疊加一個(gè)“噼啪”聲,為什么?

    我將AIC33的DIN和DOUT腳短路的方式實(shí)現(xiàn)自環(huán)時(shí),說(shuō)話的聲音稍微大點(diǎn)的時(shí)候,會(huì)在聲音上疊加一個(gè)“噼啪”聲,或則用嘴向MIC連續(xù)吹氣,自環(huán)后聽(tīng)到的聲音則是不連續(xù)的
    發(fā)表于 11-07 07:42

    TPA3001做音頻信號(hào)的功放,輸出的聲音很沙啞是怎么回事?

    TPA3001做音頻信號(hào)的功放,但是輸出的聲音很沙啞,之前公司用過(guò)這款芯片,我的電路圖沒(méi)有改變,但是聲音不正常。我示波器測(cè)量所有的引腳的波形跟正常的一樣,但是
    發(fā)表于 10-31 06:29

    請(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

    Tas2555聲音通訊已實(shí)現(xiàn),音量控制這個(gè)寄存器Speaker Control Register實(shí)現(xiàn)嗎?

    Tas2555聲音通訊已實(shí)現(xiàn),音量控制這個(gè)寄存器Speaker Control Register實(shí)現(xiàn)嗎?
    發(fā)表于 10-23 07:57

    多個(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

    探秘PCB板顏色:從外觀到內(nèi)涵的多重解讀

    五花八門(mén),從常見(jiàn)的綠色到罕見(jiàn)的紅色、藍(lán)色、黑色等,讓人眼花繚亂。那么,這些不同顏色的PCB板到底有何用途?它們的背后又隱藏著怎樣的奧秘呢?本文將為您一一揭曉。 PCB板顏色的由來(lái)和意義 首先,讓我們來(lái)了解一下PCB板
    的頭像 發(fā)表于 10-08 09:21 ?752次閱讀

    怎樣用自己的電腦遠(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 ?418次閱讀
    <b class='flag-5'>怎樣用</b>自己的電腦遠(yuǎn)程公司的電腦

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

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

    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 ?2932次閱讀

    EPSON公司發(fā)布帶有專(zhuān)用于2聲道聲音聲音硬件的32位微控制

    EPSON愛(ài)普生半導(dǎo)體公司已開(kāi)始出貨S1C31D50的樣品,S1C31D50是一種32位微控制器,帶有專(zhuān)用于2聲道聲音聲音硬件。愛(ài)普生計(jì)劃每個(gè)型號(hào)每月生產(chǎn)200,000件。在家用電子產(chǎn)品,家用電器
    的頭像 發(fā)表于 07-17 10:30 ?900次閱讀
    EPSON公司發(fā)布帶有專(zhuān)用于2聲道<b class='flag-5'>聲音</b>的<b class='flag-5'>聲音</b>硬件的32位微<b class='flag-5'>控制</b>器
    主站蜘蛛池模板: 爱爱456高清国语在线456 | 国产精品嫩草影院一二三区 | 欧美啪啪精品 | bt天堂新版中文在线地址 | 男人视频在线观看 | 高清毛片aaaaaaaaa片 | 婷婷亚洲五月琪琪综合 | 午夜视频在线观看视频 | 亚洲午夜免费视频 | 中日韩黄色大片 | 日本黄色大片在线观看 | 黄色大片免费观看 | 国产午夜视频在线观看第四页 | 成人夜色视频网站在线观看 | 久久伊人精品青青草原高清 | 色综合天| 久久国产99| 狠狠色综合网 | 丁香五月欧美成人 | 欧美激情亚洲色图 | 伊人网大 | 天天靠天天擦天天摸 | 99久久精品费精品国产一区二 | 99pao在线视频精品免费 | 麦克斯奥特曼免费观看 | 香蕉久久久久久狠狠色 | 欧美三级中文字幕hd | 黄视频在线观看免费 | 俄罗斯久久 | 狠狠狠色丁香婷婷综合激情 | 不卡一级毛片免费高清 | 中文字幕有码视频 | 最近高清在线视频观看免费 | 好大好硬好深好爽视频h | 五月婷婷激情六月 | 亚洲欧美高清在线 | 人人干在线 | 一级毛片免费不卡直观看 | 欧美一区二区三区成人看不卡 | 精品国产乱码一区二区三区 | 日韩加勒比在线 |