第1步:構(gòu)建原理圖
主要原理圖:
因此,使用Adafruit_NeoPixel庫(kù)將WS2812 Strip與Arduino接口非常簡(jiǎn)單。
LED燈條有3個(gè)引腳: VCC,DATA, GND 即可。 VCC連接到5V,GND連接到地,中間的 DATA引腳連接到連接到Arduino上的LED_DATA引腳D6。現(xiàn)在條帶上的每個(gè)LED都有一個(gè)WS2812芯片在它上面接收從Arduino接收的數(shù)據(jù)并將其傳遞到下一個(gè)LED,因此我們只需要將Led數(shù)據(jù)一次送到條帶上的第一個(gè)LED。
邏輯按鈕改變模式,電位計(jì)控制亮度將在下一步中解釋。
確切的原理圖可以在fritzing文件的屏幕截圖中找到,也可以下載。
注意 非常重要僅通過(guò)二極管將Arduino 5V引腳連接到電源,因此Arduino是如果我們插入USB線進(jìn)行編程,則不會(huì)損壞。 10nF和1000uF也是出于安全考慮,因此不存在任何電源短缺。
對(duì)于 MSGEQ7電路:
這是最常見(jiàn)的將MSGEQ7連接到Arduino的電路。這也是您需要 3.5mm音頻插孔的地方。大多數(shù)音頻插孔的中間引腳為GND,左/右引腳是立體聲通道,通過(guò)10nF電容連接到MSGEQ7的信號(hào)輸入引腳,如原理圖所示。您還可以在Signal In Pin中添加一個(gè)電位計(jì)來(lái)控制音頻信號(hào)的靈敏度,但實(shí)際上并不是必需的。 MSGEQ7 連接到Arduino ,模擬輸出引腳連接連接到A1 (MSGEQ_OUT), Strobe 將固定到D2 (STROBE),重置將固定到D5 (重置)。
第2步:代碼
關(guān)于代碼的注釋:
在代碼中,我們使用新的Adafruit_NeoPixel對(duì)象聲明WS2812 Strip對(duì)象,傳入Leds的數(shù)量(為您設(shè)置更改NUM_LEDS ),連接到LED_DATA引腳的Arduino引腳,以及編碼類型+顏色值傳輸?shù)乃俣取?/p>
一旦完成,我們通過(guò) setBrightness(0-255)中設(shè)置默認(rèn)亮度 》并使用開(kāi)始()打開(kāi)Strip。我們現(xiàn)在可以將每個(gè)像素/LED 設(shè)置為具有 setPixel(LED,顏色)的特定RGB顏色。完成后,將所有LED設(shè)置為新值,我們使用strip.show()更新條帶。這基本上是編程我們想要的任何動(dòng)畫(huà)所需的所有代碼邏輯。現(xiàn)在要實(shí)際控制動(dòng)畫(huà)/模式,我們將一個(gè)按鈕/Tactile Switch添加到Arduino。因此,我們將按鈕的一端連接到VCC,將另一端連接到Arduino引腳D3 ,并將一個(gè)10k歐姆的電阻連接到GND。我們?cè)谠O(shè)置()中為此PIN附加中斷,每次按下按鈕時(shí)都會(huì)觸發(fā)對(duì)changeMode()方法的調(diào)用。在 changeMode()中,我們簡(jiǎn)單切換到下一個(gè)模式并告訴當(dāng)前動(dòng)畫(huà)中斷。一旦發(fā)生這種情況,loop()將被新執(zhí)行,并將播放新的動(dòng)畫(huà)/模式。
提供的動(dòng)畫(huà)包括:彩虹色漸變,紅色,綠色,藍(lán)色,白色,音樂(lè)分析器模式
此外,我添加了 10kOhm電位計(jì) 來(lái)控制條帶的亮度。方法 checkBrightness()檢查連接到引腳A2的電位計(jì)輸出(電位器的中間引腳)并相應(yīng)地更新條帶的亮度。
用于musicAnalyzer()模式通過(guò)MSGEQ7:
此模式可視化連接到MSGEQ7的信號(hào)輸入的音頻信號(hào)。 MSGEQ輸出模擬信號(hào),顯示單個(gè)音頻頻段(8個(gè)頻段,從低頻到高頻)。 musicAnalyzer()方法通過(guò)重置MSGEQ然后緩沖提供的模擬值來(lái)獲取音頻帶的當(dāng)前值。輸出的波段可以通過(guò)在Strobe Pin上放置一個(gè)高側(cè)翼來(lái)改變。在所有8個(gè)波段都被緩沖后,方法將所有LED像素值向后移動(dòng) 并計(jì)算LED 0的新值。顏色包括:低頻(低音)紅色,中頻綠色和高頻藍(lán)色。在加載新值之前移動(dòng)值會(huì)給我們一個(gè)很好的平滑定時(shí)動(dòng)畫(huà)。
步驟3:在PC上設(shè)置音頻
要將您的音樂(lè)/音頻輸入MSGEQ7但仍然在您的揚(yáng)聲器上播放音樂(lè),您要么擁有使用RealtekHD Stereomix功能或?qū)SGEQ音頻輸入連接到例如聲卡/主板的后置揚(yáng)聲器輸出。
要在Win10中啟用Stereomix,請(qǐng)右鍵單擊右下方的揚(yáng)聲器圖標(biāo),然后單擊“聲音”,此處可以在“錄制”選項(xiàng)卡中激活Stereomix(右鍵單擊 - 》激活)。如果看不到Stereomix,請(qǐng)右鍵單擊選擇“顯示已禁用的設(shè)備”。現(xiàn)在打開(kāi)Stereomix的設(shè)置并告訴它聽(tīng)取并復(fù)制主揚(yáng)聲器的音頻。
如果您想使用后置揚(yáng)聲器輸出,請(qǐng)?jiān)凇奥曇簟敝写蜷_(kāi)主揚(yáng)聲器的設(shè)置菜單,選項(xiàng)卡“改進(jìn)”,然后從列表中選擇“環(huán)境”,然后在下面的下拉菜單中選擇“房間”。
現(xiàn)在可以啟用揚(yáng)聲器和MSGEQ7的并行音頻輸出。
第4步:注釋
由于原理圖沒(méi)有那么復(fù)雜也沒(méi)有大尺寸我設(shè)法把整個(gè)電路放到一個(gè)小盒子里用于USB連接器,音頻插孔,DC插孔,電位計(jì)和按鈕的孔。您可以簡(jiǎn)單地使用公/母針頭并通過(guò)跳線將3根電纜連接到WS2812帶。
-
RGB
+關(guān)注
關(guān)注
4文章
800瀏覽量
58602 -
LED背光
+關(guān)注
關(guān)注
1文章
93瀏覽量
7008
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論