MH是適用于WS2812等數(shù)字LED條的初學(xué)者友好型SPI驅(qū)動(dòng)器。照明項(xiàng)目從未如此輕松!
硬件組件:
Arduino Mega 2560 × 1個(gè)
Atnel開發(fā)板1.05a× 1個(gè)
STMicroelectronics STM32 Nucleo-64板× 1個(gè)
Raspberry Pi 4 B型 1個(gè)
我使用WS2812,WS2815或SK6812等數(shù)字LED已有很長時(shí)間,我通常將它們稱為Magic LED。
我測試了許多基于Magic LED(甚至是RGBW類型)的帶,環(huán)和顯示器(甚至是我自己的)。我使用了Arduino,Nucleo(帶有STM),Raspberry Pi和我自己的帶有AVR微控制器的主板。
無論使用哪種平臺(tái),編寫程序來控制魔術(shù)LED都是困難的(由于需要NZR協(xié)議軟件),除非您正在使用易于使用的現(xiàn)成庫,但是就代碼使用而言,中斷仍然不是完全最佳的,響應(yīng)或內(nèi)存利用率,并且只能在特定平臺(tái)上使用(將它們從Raspberry移植到AVR微控制器是不可能的)。
由于我經(jīng)常使用各種平臺(tái),因此我需要程序代碼與Arduino,Raspberry Pi,ARM / STM(Nucleo)或AVR盡可能兼容-特別是在燈光效果方面。
我已經(jīng)在youtube頻道上工作了很長時(shí)間,并且準(zhǔn)備了一份以上的指南,以C語言為AVR微控制器編程數(shù)字二極管(但到目前為止僅在波蘭語中)。我經(jīng)常與那些為魔術(shù)LED編程而苦苦掙扎的初學(xué)者接觸。當(dāng)然,根據(jù)平臺(tái)的不同,有些人會(huì)為他們的一次性項(xiàng)目選擇現(xiàn)成的庫。但是,許多人正在尋找其他解決方案或嘗試學(xué)習(xí)編程的秘密,而我就是其中之一。
我決定準(zhǔn)備一個(gè)模塊,該模塊將使用NZR協(xié)議為用戶完成骯臟的工作。與SPI一樣,將用作SPI到NZR轉(zhuǎn)換器的模塊可以輕松地在任何平臺(tái)上使用。下面的屏幕截圖顯示了Magic Hercules模塊中SPI信號(hào)到NZR協(xié)議的轉(zhuǎn)換。
SPI到NZR的轉(zhuǎn)換:
將數(shù)字LED連接到不同的系統(tǒng)時(shí),應(yīng)該記住不同微控制器的適當(dāng)電壓容限。ARM微控制器的大多數(shù)I / O引腳均以+3.3 V標(biāo)準(zhǔn)工作,而AVR微控制器則以TTL標(biāo)準(zhǔn)工作。因此,Magic Hercules模塊的輸入引腳的公差為+3.3 V,因此可以安全地連接到例如Raspberry P或+3.3 V供電的任何基于ARM的微控制器。
如前所述,我經(jīng)常使用不同類型的數(shù)字LED。根據(jù)制造商的不同,LED中的各個(gè)顏色可以位于不同的位置,例如RGB,BGR,GRB,RGBW,GRBW等。制造商的文檔中提到RGB序列并不少見,但實(shí)際上看起來有所不同。我已經(jīng)為Hercules模塊配備了顏色順序測試,因此快速弄清楚如何為正確的顏色順序編寫程序沒有問題。測試儀的幾個(gè)附加功能使您可以快速檢查數(shù)字LED燈條是否全部正常工作,以及該燈條上每個(gè)LED的所有顏色(最多1024個(gè)LED!)是否正常工作(無死像素)。而這一切都無需連接微控制器和編寫任何程序。
色階測試:
我不認(rèn)為使用簡單且通用的SPI協(xié)議來控制數(shù)字LED還可以,該協(xié)議可以在任何平臺(tái)或微控制器系列上運(yùn)行。
當(dāng)然,有許多控制數(shù)字LED的方法,有些是最優(yōu)的,而有些則不是最優(yōu)的。Magic Hercules模塊是另一個(gè)選擇,對我來說非常實(shí)用。
我認(rèn)為有人可能喜歡這種不尋常的解決方案。我最近在眾籌平臺(tái)kickstarter上起飛,在那里我通過幾個(gè)視頻對Magic Hercules模塊進(jìn)行了更廣泛的描述,包括在Arduino,Nucleo(STM),Raspberry Pi和AVR和PIC上使用它的簡便性。微控制器。
我用C語言編寫了一個(gè)程序-一個(gè)簡單的stargate效果,它基于表操作和主循環(huán)中緩沖區(qū)的順序發(fā)送。多虧了Magic Hercules模塊,我能夠輕松地將源代碼轉(zhuǎn)移到其他語言和平臺(tái)上-檢查源代碼部分(適用于Raspberry Pi或Arduino的Python)。
各種平臺(tái)的MH測試:Arduino 2560,STM32 Nucleo,ATB 1.05a(AVR):
我認(rèn)為MH可以是一個(gè)非常適合初學(xué)者的模塊,無論它們使用的平臺(tái)和語言如何。了解眾所周知的SPI協(xié)議就足夠了,并且開始檢查數(shù)字LED燈條是否完全正常工作以及它具有什么顏色順序的可能性僅僅是一個(gè)加號(hào)。
原理圖:
DIP8封裝板上的Magic Hercules模塊
MH模塊是一塊具有標(biāo)準(zhǔn)DIP8封裝尺寸的電路板。
MH模塊作為原理圖元素
Magic Hercules模塊既可以在面包板上使用,也可以在自己的PCB中使用。SPI總線的引腳6和7耐壓+3.3V。引腳1用于定義測試的魔術(shù)LED燈帶的類型-RGB(3字節(jié))或RGBW(4字節(jié))。引腳5是連接到數(shù)字LED輸入的輸出。+5 V電源應(yīng)正確連接到引腳4和8。
責(zé)任編輯:pj
-
微控制器
+關(guān)注
關(guān)注
48文章
7658瀏覽量
152158 -
led
+關(guān)注
關(guān)注
242文章
23376瀏覽量
663399 -
顯示器
+關(guān)注
關(guān)注
21文章
5012瀏覽量
140433 -
SPI
+關(guān)注
關(guān)注
17文章
1724瀏覽量
92167
發(fā)布評論請先 登錄
相關(guān)推薦
評論