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

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

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

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

32x16和32x32 RGB LED矩陣的制作教程

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-11-27 15:58 ? 次閱讀

概述

本指南適用于ARDUINO和兼容的板卡-Arduino Uno,Mega,Zero和Adafruit Metro 328,Metro M0和M4。我們?yōu)镽aspberry Pi提供了不同的指南。

使用我們的RGB LED矩陣面板將一些時代廣場帶入您的家中。這些面板通常用于制作視頻墻(在紐約,我們在公共汽車的側(cè)面和公共汽車站上看到它們)來顯示動畫或簡短的視頻剪輯。我們以為他們看起來真的很酷,所以我們從工廠拿了幾盒。一個具有512個明亮的RGB LED,它們以16x32網(wǎng)格的形式排列在正面,另一個具有1024個LED的32x32網(wǎng)格。背面是帶有IDC連接器PCB(一組用于輸入,一個用于輸出:理論上您可以將它們鏈接在一起)和12個16位鎖存器,它們允許您以1:8(16x32)或1來驅(qū)動顯示器。 :16(32x32)掃描速度。

32x16和32x32 RGB LED矩陣的制作教程

這些面板需要12個或13個數(shù)字引腳(6位數(shù)據(jù),6或7位控制)和一個良好的5V電源,至少一個耦合放大器面板。我們建議使用2A(或更大規(guī)格)穩(wěn)壓5V適配器和接線盒DC插孔,或通過DC延長線焊接插孔。請閱讀本教程的其余部分以獲取更多詳細(xì)信息!

請記住,這些顯示器通常設(shè)計為由FPGA或其他高速處理器驅(qū)動;它們沒有任何內(nèi)置的PWM控制。相反,您應(yīng)該一遍又一遍地重新繪制屏幕,以“手動” PWM整個過程。在16 MHz的Arduino Uno上,我們設(shè)法壓縮了12位顏色(4096種顏色),但是如果由FPGA,CPLD,Propeller,XMOS或其他高速多處理器控制器驅(qū)動,則該顯示確實會發(fā)光。

當(dāng)然,我們不會給您留下數(shù)據(jù)表和“好運(yùn)!”我們有完整的接線圖和有效的Arduino庫代碼,并提供繪制像素,線條,矩形,圓形和文本的示例。您將在一個小時內(nèi)獲得色彩爆破!在Arduino Uno或Mega上,您需要12個數(shù)字引腳和大約800字節(jié)的RAM來保存12位彩色圖像(是32x32矩陣的兩倍)。

該庫可用于有限數(shù)量的開發(fā)板:Arduino Uno,Mega,Zero,Adafruit Metro M0和Metro M4。不支持其他板(例如Arduino Leonardo)。

功率

盡管LED是非常高效的光源,但只要將它們集中在一處,電流就可以累積起來。

A 單個 32x16 或 32x32 RGB矩陣,全傾斜(所有像素設(shè)置為白色),可能需要近 4安培 當(dāng)前!將這個數(shù)字翻倍以形成 64x32 矩陣。

在平均值上,顯示典型的圖形和動畫時,這些面板將使用更少的。.. 2A 電源通常對于單個32x16或32x32面板就足夠了,對于64x32面板則是4A。使用額定功率更大的 Amps (例如10A電源)的大功率電源沒有什么害處,但是從不不要使用具有更高 Voltage 電壓的電源(使用 5V,周期)!

在這些面板上,電源連接與數(shù)據(jù)連接是分開的。讓我們從連接5V電源開始……

我們的零件供應(yīng)商有時會修改設(shè)計。結(jié)果,連接隨時間變化。我們將在這里介紹不同的接線組合…選擇與您收到的面板匹配的說明。

出現(xiàn)了兩種不同類型的電源連接器

左側(cè)是一個螺絲柱電源連接器(帶有相鄰的焊墊直接焊接)。右邊是Molex樣式的標(biāo)頭。某些面板將具有兩個接頭連接器…這些面板附帶的電源線具有兩個接頭連接器的連接器。

使用接線柱和墊板連接器,您可以擰緊電源電纜的黑桃,或者另一種方法是從該延長線上切下一個2.1mm的插孔,然后將其焊接到面板背面的焊盤上。這樣,您可以直接從墻上適配器插入5V電壓(建議在商店中購買)。只需將電纜的另一半切斷,然后剝?nèi)ゲ季€,以便可以將紅色導(dǎo)線焊接至+5,黑色導(dǎo)線接地。

將兩個引腳正確焊接到電源端口。確保正確無誤,因為沒有保護(hù)二極管!

如果您的面板具有Molex式接頭,則只需插入隨附的電源線,并注意正確的極性即可。

如果電源線的另一端帶有鐵鍬使用此電源線,可以將其擰入2.1mm接線盒適配器中。很好用!但是,不要讓裸露的連接器接觸金屬……您應(yīng)該用熱縮管或電工膠帶將其覆蓋。

您可能會獲得權(quán)力具有不同末端的電纜,例如圓形,而不是鍬形的末端,或者可以使用另一個Molex連接器。只需將電纜和電線直接剝?nèi)ル娫床孱^

連接

這些面板通常設(shè)計用于鏈接(將端到端鏈接到更大的顯示器中)…一個面板的輸出連接到

由于Arduino中的RAM有限,鏈接很少是可行的。盡管如此,還是有必要在面板上區(qū)分輸入和輸出連接…如果我們連接到錯誤的插座,它將不會響應(yīng)。

盡管面板支持鏈接,但這在Arduino級板上非常不切實際,并且我們的庫不支持它。像Raspberry Pi這樣功能更強(qiáng)大的系統(tǒng)可能是鏈接面板的更好選擇!

將矩陣翻轉(zhuǎn)過來,這樣您就可以看到背面,用兩個插座位于左右邊緣(不是頂部和底部)。

在某些面板上,如果幸運(yùn)的話,這些插座會標(biāo)有INPUT和OUTPUT(有時是IN和OUT或

如果未標(biāo)記INPUT,則查找一個或多個指向水平方向的箭頭(忽略任何垂直箭頭,無論向上還是向下)。下)。水平箭頭顯示數(shù)據(jù)從輸入到輸出的方向-然后您知道哪個連接器。

如果沒有這樣的標(biāo)簽,最后的選擇是檢查連接器引腳周圍的塑料導(dǎo)流罩。 INPUT連接器上的鍵(凹口)將面對面板的外邊緣(而不是中心)。

INPUT連接器上的插針排列隨矩陣大小和生產(chǎn)批次的不同而不同……

32x16 面板使用此引腳排列。標(biāo)簽可能略有不同,或者根本沒有標(biāo)記引腳。但是在任何一種情況下,請使用該圖像作為參考。

注意,有四個接地點(diǎn)。為了確保可靠的性能, 所有四個都應(yīng)在Arduino上連接到GND !無焊面包板便于進(jìn)行這種分割。

這是 32x32 和 64x32 面板的布局。我們將其稱為“ 變體A ”。某些面板使用不同的標(biāo)簽,但功能相同。

布局與32x16面板,用“ D”代替一根接地線。

這是我們最常使用的布局。

如果您的32x32面板根本沒有沒有引腳標(biāo)簽,然后使用此布局。

“ 變體B ” 32x32 和 64x32 面板。接線與上述變體A 相同,僅標(biāo)簽不同

接地針沒有標(biāo)簽,但仍需要連接。

LAT(閂鎖) )在此處標(biāo)記為STB(頻閃)。 R1/G1/B1/R2/G2/B2更改為R0/G0/B0/R1/G1/B1…但同樣,沒有功能差異,只是墨水。

我們最早的 32x32 面板有兩個-socket 設(shè)計,我們將其稱為“ Variant C ”。雖然引腳功能相同,但布局卻大不相同。

上插槽上的》 R/G/B對應(yīng)于變體A中的R1/G1/B1。下插槽上的R/G/B對應(yīng)于R2/G2/B2。

所有其他信號(A/B/C/D/CLK/LAT/OE)都需要連接到兩個插座-例如

連接到Arduino

有兩種或三種方法將矩陣連接到Arduino:

跳線插入Arduino接頭和帶狀電纜之間-可以很好地用于測試和原型制作,但不耐用。

Adafruit RGB Matrix Shield strong》使這些面板與Arduino的連接盡可能容易,并且最適合永久安裝。

一個人可以構(gòu)建一個 原型屏蔽 復(fù)制選項#2的引腳排列。但是,鑒于Matrix Shield的低成本,這可能不值得如今付出。

這些面板通常由非??斓奶幚砥骰騀PGA(而不是16 MHz的Arduino)運(yùn)行,以實現(xiàn)合理的性能。在這種有限的環(huán)境中,我們通過將特定信號綁定到特定Arduino引腳來優(yōu)化我們的軟件??梢灾匦屡渲煤苌俚目刂凭€,但是其他控制線卻非常具體。.. 您不能隨意地進(jìn)行整條接線。下一頁演示了兼容的接線。..一種使用RGB矩陣盾,使用跳線。

使用RGB矩陣屏蔽進(jìn)行連接

這是將這些矩陣與Arduino尺寸的板配對的首選方法,因為它既快速又麻煩,

Adafruit RGB Matrix Shield 可與 Arduino Uno 和兼容基于ATmega328的板一起使用,例如 Adafruit Metro 。它也可以直接與Adafruit Metro M0 一起使用…并且可以與一根或多根跳線一起與 Metro M4 (以及可能具有此外形規(guī)格的其他主板,如果兼容)一起使用可以使用Arduino庫。)

屏蔽板不能與Arduino Mega一起使用-請參閱“跳線”頁面上的引腳排列,或考慮進(jìn)行制作

防護(hù)罩沒有裝滿,您需要做一些焊接才能得到

排針從下面安裝,并焊接在頂部。三個組件-按鈕,電源端子和16針接頭連接器-從頂部插入并焊接在下面。

必須以正確的方向安裝16針(8x2)接頭連接器!絲印上會顯示極性槽口,或者您可以在上面的照片中看到,該槽口面向數(shù)字I/O引腳。如果將其反向安裝,矩陣將無法工作!

LED矩陣的電源可以連接到屏蔽層的螺釘端子—紅色線連接到+ 5Vout,黑色線連接到GND —然后以安全且穩(wěn)定的5伏電壓從Arduino的DC插孔或USB電纜為整個電路供電。

Metro M4用法

盾牌需要做一些小改動才能與Adafruit Metro M4 一起使用:

使用

用一根小銼刀或業(yè)余刀切開此處所示的兩個焊盤之間的PCB跡線。

從相鄰的“ CLK”引腳到“ Analog In 4”引腳焊接導(dǎo)線。

需要在自己的代碼中進(jìn)行相應(yīng)的更改-在“代碼”中查找“ CLK”引腳定義任何矩陣示例……

下載:文件

復(fù)制代碼

#define CLK 8 #define CLK 8

并將“ 8”更改為“ A4”:

下載:文件

復(fù)制代碼

#define CLK A4 #define CLK A4

連接跳線

帶狀電纜及其相應(yīng)的插頭有時是拓?fù)潆y題。這是一個有助于跟蹤的竅門。..

如果將帶狀電纜保持平坦(沒有折疊),并且兩個連接器都朝向您,則鍵指向相同的方向,那么引腳之間的比例為1:1 。一個插頭上的右上引腳連接到另一個插頭上的右上引腳,依此類推,即使電纜的應(yīng)力消除倍增也是如此。 只要鍵指向相同的方向并且插頭面對的方向相同,銷釘?shù)膬啥硕嘉挥谙嗤奈恢谩?/p>

插入到LED矩陣上的插槽中,一個頭現(xiàn)在面向離開。如果您將電纜本身加倍(不是絞線,而是折線)…以訪問插座上的特定插針,則左右列將被鏡像(行的順序相同-紅色條紋提供了一個點(diǎn))參考)。您是在插頭上看“上”,而不是在插座上看。“

例如,R1(INPUT插座上的左上引腳)出現(xiàn)在右上角。 的裸露插頭。您可以將跳線卡在該孔中,并將其卡到Arduino上的相應(yīng)引腳上。

好!在上一頁中,請參閱適合您矩陣類型的插座。標(biāo)簽可能有所不同(或根本沒有標(biāo)簽),但大多數(shù)標(biāo)簽都與此處顯示的標(biāo)簽非常接近。

然后交換列找到給定信號的正確位置。

帶狀電纜的兩端都可以插入矩陣請注意,無論如何,“鍵”都面對相同的方向。

通過將色帶的自由端朝向矩陣中心,可以將Arduino隱藏在它的后面。

將色帶的自由端放在一邊,可以更容易地同時看到矩陣的正面和Arduino,以進(jìn)行更多連接或進(jìn)行故障排除。

使用彩色編碼導(dǎo)線有助于很多!如果您沒有彩色電線,那也可以,請密切注意一切進(jìn)展。我們的目標(biāo)是這樣的一個完全填充的插件:

所以!讓我們按組進(jìn)行布線。..

連接地線

32x32 和 64x32 矩陣需要三個接地。 32x16 矩陣具有 4 。

當(dāng)前 Arduino Uno ,類似的板具有三個接地引腳(第三個位于引腳13旁邊)。如果您需要其他接地連接(用于32x16矩陣,或者使用僅帶2個接地引腳的舊版Arduino板),則可以使用無焊面包板來連接所有這些引腳。

Arduino Mega 板具有五個接地引腳。與Arduino Uno相同的三個,在引腳52和53旁邊另外兩個。

上RGB數(shù)據(jù)

固定 R1 , G1 和 B1 (在某些矩陣上標(biāo)記為R0,B0和G0)將數(shù)據(jù)傳送到顯示屏的上半部。

在 Arduino Uno 和 Adafruit Metro(328)上,M0 或 M4)板,將它們連接到數(shù)字引腳 2 , 3 和 4 。

在 Arduino Mega 上,連接到引腳 24 , 25 和 26 。

降低RGB數(shù)據(jù)

將 R2 , G2 和 B2 (在某些矩陣上標(biāo)記為R1,G1和B1)固定數(shù)據(jù)保存到顯示屏的下半部。這些連接到接下來的三個Arduino引腳…

在 Arduino Uno 和 Adafruit Metros 上,這些引腳 5 , 6 和 7 。

在 Arduino Mega 上,固定 27 , 28 和 29 。

行選擇行

將 A , B , C 和 D 固定在顯示屏的哪兩行當(dāng)前點(diǎn)亮。 ( 32x16矩陣沒有“ D”引腳,而是連接到接地。)

這些連接固定至 A0 , A1 , A2 和(如果存在D引腳) A3 。這是所有板的相同。

LAT線

The LAT 信號連接到Arduino引腳 10 。

所有板子都相同。

LAT(閂鎖)信號標(biāo)志著結(jié)束一排數(shù)據(jù)。

OE線

OE 連接到Arduino引腳 9 。對于所有電路板都是相同的。

OE(輸出使能)在從一行轉(zhuǎn)換到另一行時會關(guān)閉LED。

CLK線

最后一個!/p》

CLK 連接到…Arduino Uno , Adafruit Metro 328 或 Metro M0 上的p》

Pin 8 。/li》

Pin 11 在 Arduino Mega 上。

Pin A4 在 Adafruit Metro M4 (未顯示,但您知道了)。

CLK(時鐘)信號標(biāo)記數(shù)據(jù)的每一位到達(dá)。

就是這樣。您現(xiàn)在可以跳到“測試示例代碼”頁面。

使用Proto Shield進(jìn)行連接

如“跳線”頁面所述:如果將扁平電纜平放-不能折疊-并且兩個連接器都朝向您,則鍵指向方向相同-引腳之間存在1:1的相關(guān)性。一個插頭上的右上引腳連接到另一個插頭上的右上引腳,依此類推,即使電纜的應(yīng)力消除倍增也是如此。 只要鍵指向相同的方向并且插頭面對的方向相同,銷釘?shù)膬啥硕嘉挥谙嗤奈恢谩?/p>

帶狀電纜的任一端都可以插入矩陣INPUT中

功能區(qū)的自由端可以指向矩陣的中心,也可以懸垂在側(cè)面上……引腳排列仍然相同。請注意,下面的“鍵”的方向沒有改變。

將雙排接頭安裝在原型屏蔽上,類似于矩陣上的連接器。就像帶狀電纜平放一樣,只要這兩個接頭是以相同的方式對齊,它們將逐個匹配;與上一頁中的跳線方法不同,不會發(fā)生鏡像。

然后將導(dǎo)線從插頭焊接到原型屏蔽板上的特定Arduino引腳上。盡量保持較短的電線長度以避免信號干擾。

使用顏色編碼的電線有助于很多!如果您沒有彩色電線,那沒關(guān)系,只需付款注意一切進(jìn)展。我們的目標(biāo)是原型防護(hù),例如:

如果您不愿意,不需要在原型屏蔽板上安裝所有按鈕和指示燈,只需基本的插頭即可。

對于 Arduino Uno 及其類似,使用 Adafruit 原型屏蔽:如果使用帶屏蔽的插座(例如在矩陣的背面—帶有凹口,因此帶狀電纜僅適合一種方式)您需要將其放置在屏蔽的“重置”端附近。塑料導(dǎo)流罩遮蓋了許多針腳。 其他人的原型防護(hù)罩可能布置不同 。..在進(jìn)行焊接之前,先四處尋找合適的位置。

對于 Arduino Mega ,我們提供相應(yīng)的原型防護(hù)罩:帶屏蔽的插座最適合屏蔽的中間。

否則,您可以使用普通的2x8針公頭或兩個1x8部分 》并排安裝(如上圖所示)。由于此設(shè)置沒有對齊鍵,因此您可能想用一些膠帶或永久標(biāo)記來指示它。

根據(jù)原型屏蔽的制造商和型號,某些引腳被設(shè)計為短排連接。其他人沒有。對于后者,剝?nèi)ヒ稽c(diǎn)額外的絕緣層,然后彎曲電線以從后面纏住插座的支腳,然后進(jìn)行焊接。

連接接地線

32x32 和 64x32 矩陣需要 3 接地。 32x16 矩陣有 4 。

大多數(shù)原始屏蔽層的接地點(diǎn)有 ton ,因此您

上RGB數(shù)據(jù)

固定 R1 , G1 和 B1 (標(biāo)記為R0,B0和某些矩陣上的G0)將數(shù)據(jù)傳送到顯示屏的上半部。

在 Arduino Uno 和 Adafruit Metro(328,M0 或 M4)板,將這些板連接到數(shù)字引腳 2 , 3 和 4 。。 p》

在 Arduino Mega 上,連接到引腳 24 , 25 和 26 。

降低RGB數(shù)據(jù)

引腳 R2 , G2 和 B2 (在某些矩陣上標(biāo)記為R1,G1和B1)將數(shù)據(jù)傳送到下半部顯示。這些連接到接下來的三個Arduino引腳…

在 Arduino Uno 和 Adafruit Metros 上,這是引腳 5 , 6 和 7 。

在 Arduino Mega 上,引腳 27 , 28 和 29 。

行選擇行

別針 A , B , C 和 D 選擇當(dāng)前顯示屏的哪兩行亮。 ( 32x16矩陣沒有“ D”引腳-而是連接到接地。)

這些連接固定至 A0 , A1 , A2 和(如果存在D引腳) A3 。這是 Arduino Uno 和 Mega 的相同。

LAT Wire

對于 32x32 和 64x32 矩陣, LAT 連接到Arduino引腳 10 。

對于所有開發(fā)板都是相同的。

LAT(閂鎖)信號標(biāo)記一行數(shù)據(jù)的結(jié)尾。

span》

OE線

OE 連接到Arduino引腳 9 。對于所有電路板都是相同的。

OE(輸出使能)在從一行轉(zhuǎn)換到另一行時會關(guān)閉LED。

CLK線

最后一個!/p》

CLK 連接到。..

Pin 8 在 Arduino Uno , Adafruit Metro 328 或 Metro M0 。

Pin A4 在 Adafruit Metro M4 上。

Pin 11 在 Arduino Mega 上。

CLK(時鐘)信號標(biāo)記數(shù)據(jù)的每一位的到達(dá)。

這又是一張完整的盾牌的照片。您可以說這是針對32x16矩陣的,因為有四個接地連接(長的垂直條之一是接地總線-看到那里的微小跳線嗎?)。

到矩陣的帶狀電纜會

顏色和位置與上面的示例不太匹配,但是很接近。 G1和G2是黃色導(dǎo)線。 LAT是紫色導(dǎo)線,現(xiàn)在應(yīng)該轉(zhuǎn)到引腳10(我們在Arduino庫中進(jìn)行了一些更改)。

測試示例代碼

我們已經(jīng)準(zhǔn)備好了示例代碼供這些顯示使用。它與Arduino Uno或Mega兼容。..但是 不 其他板卡,例如Leonardo,也不是“類似Arduino的”板卡,例如Netduino 。..可能對專家進(jìn)行編程 可以通過改編C ++源代碼將其移植到其他微控制器,但是按照書面形式,它可以做一些非常底層的,不可移植的事情。

該庫可用于有限數(shù)量的開發(fā)板:Arduino Uno,Mega,Zero,Adafruit Metro M0和Metro M4。不支持其他開發(fā)板(例如Arduino Leonardo)。

兩個庫需要下載并安裝:第一個是RGB矩陣面板庫(包含特定于該設(shè)備的低級代碼),其次是Adafruit GFX庫(用于處理許多我們攜帶的顯示器通用的圖形操作)。

都可以使用Arduino Library Manager( Sketch→Include Library→Manage Libraries…)找到并安裝這兩個庫。搜索“ gfx”和“ rgb矩陣面板”并安裝相應(yīng)的Adafruit庫。

現(xiàn)在您可以進(jìn)行測試了!打開IDE并加載文件→示例→RGBmatrixPanel→testcolors_16x32 (對于16x32面板)或文件→示例→RGBmatrixPanel→colorwheel_32x32 (對于32x32面板)。 》 如果使用Arduino Mega 2560,除了前面提到的接線更改外,您還需要對每個示例草圖進(jìn)行少量更改。這行:

下載:文件

復(fù)制代碼

#define CLK 8 // MUST be on PORTB! (Use pin 11 on Mega) #define CLK 8 // MUST be on PORTB! (Use pin 11 on Mega)

應(yīng)更改為:

下載:文件

復(fù)制代碼

#define CLK 11 #define CLK 11

(任何數(shù)字引腳10-13和50-53可以在Mega上用于此功能,并進(jìn)行相應(yīng)的接線更改。示例全部參考引腳11。)

如果使用 Adafruit Metro M4 (不是 M0或328),則CLK更改將是:

下載:文件

復(fù)制代碼

#define CLK A4 #define CLK A4

上傳后,使用16x32面板您應(yīng)該看到以下內(nèi)容:

這是一個測試圖案,在512像素上顯示512種顏色(4096種顏色)。由于沒有真正優(yōu)雅的方法可以在二維中顯示3維色彩空間(R/G/B),因此只重復(fù)了紅色/綠色和藍(lán)色的重復(fù)網(wǎng)格。無論如何,這會向您顯示可以實現(xiàn)的顏色范圍!

,或者使用32x32面板:

現(xiàn)在您可以在這里工作了:

最有用的一行是:

下載:文件

復(fù)制代碼

matrix.drawPixel(x, y, matrix.Color333(r, g, b)); matrix.drawPixel(x, y, matrix.Color333(r, g, b));

,這是我們實際繪制到顯示器上的位置。此代碼一次只繪制一個像素。 x 和 y 坐標(biāo)是顯示器的各個像素。 (0,0)在左上角,(31,15)在右下角(請記住,我們從0開始計數(shù)?。?。要創(chuàng)建顏色,您將需要使用輔助功能 Color333 ,該功能將使用三個3位數(shù)字并將它們組合為單個打包的整數(shù)。因此,例如,第一個參數(shù) r 的范圍可以從0到7。對于 g 和 b 同樣。要制作純紅色的像素, r 將為7,而 g,b 則將為0。要制作白色像素,請將所有像素都設(shè)置為7。要制作黑色(關(guān)閉)像素,將顏色設(shè)置為0。類似的功能 Color444 可以接受三個4位數(shù)字,最多可顯示4096種顏色。

現(xiàn)在我們可以打開在下一個示例中,該示例顯示了庫的其余功能。

下一步,加載 testshapes_16x32 或 testshapes_32x32 示例草圖,它將測試所有可用的繪圖元素(同樣,您可以可能需要編輯32x32面板的引腳號。)

您可能想要做的最簡單的事情是繪制一個像素,我們已經(jīng)在上面介紹了這一點(diǎn)。

下載:文件

復(fù)制代碼

// draw a pixel in solid white

matrix.drawPixel(0, 0, matrix.Color333(7, 7, 7)); // draw a pixel in solid white

matrix.drawPixel(0, 0, matrix.Color333(7, 7, 7));

下一個通過繪制一個非常大的矩形將綠色填充屏幕。前兩個參數(shù)是左上角,然后是寬度(以像素為單位)和高度(以像素為單位),最后是顏色

下載:文件

復(fù)制代碼

// fix the screen with green

matrix.fillRect(0, 0, 32, 16, matrix.Color333(0, 7, 0)); // fix the screen with green

matrix.fillRect(0, 0, 32, 16, matrix.Color333(0, 7, 0));

下一步,我們將僅繪制黃色的矩形

下載:文件

復(fù)制代碼

// draw a box in yellow

matrix.drawRect(0, 0, 32, 16, matrix.Color333(7, 7, 0)); // draw a box in yellow

matrix.drawRect(0, 0, 32, 16, matrix.Color333(7, 7, 0));

接下來,您可能要畫線。 drawLine 過程將以您想要的任何顏色繪制一條線,我們用它來繪制一個大的X

下載:文件

復(fù)制代碼

// draw an ‘X’ in red

matrix.drawLine(0, 0, 31, 15, matrix.Color333(7, 0, 0));

matrix.drawLine(31, 0, 0, 15, matrix.Color333(7, 0, 0)); // draw an ‘X’ in red

matrix.drawLine(0, 0, 31, 15, matrix.Color333(7, 0, 0));

matrix.drawLine(31, 0, 0, 15, matrix.Color333(7, 0, 0));

我們繪制的下一個形狀是圓形。您可以使用 drawCircle 繪制圓的輪廓,或使用 fillCircle 填充圓。前兩個參數(shù)是中心點(diǎn),第三個參數(shù)是半徑(以像素為單位),最后是要使用的顏色。

下載:文件

復(fù)制代碼

// draw a blue circle

matrix.drawCircle(7, 7, 7, matrix.Color333(0, 0, 7));

// fill a violet circle

matrix.fillCircle(23, 7, 7, matrix.Color333(7, 0, 7)); // draw a blue circle

matrix.drawCircle(7, 7, 7, matrix.Color333(0, 0, 7));

// fill a violet circle

matrix.fillCircle(23, 7, 7, matrix.Color333(7, 0, 7));

fillScreen 整個屏幕具有單一顏色:

下載:文件

復(fù)制代碼

// fill the screen with ‘black’

matrix.fillScreen(matrix.Color333(0, 0, 0)); // fill the screen with ‘black’

matrix.fillScreen(matrix.Color333(0, 0, 0));

最后,我們繪制顯示在頂部的文本作為演示圖像。我們可以使用打印功能,您會在序列中熟悉該功能。您可以使用 print 打印字符串,數(shù)字,變量等。但是,我們需要在開始打印之前進(jìn)行設(shè)置!首先,我們必須使用 setCursor 設(shè)置光標(biāo)位置,第一個字符的左上像素將到達(dá)該位置,該位置可以是任何位置,但請注意,默認(rèn)情況下文本字符的高度為8像素。接下來的 setTextSize 讓您將大小設(shè)置為1(高8像素)或2(對于大文本,高16像素?。?,您可能現(xiàn)在只想保留1。最后,我們可以使用 setTextColor 設(shè)置文本的顏色。完成所有操作后,我們可以使用 print(‘1’)打印字符“ 1”。

下載:文件

復(fù)制代碼

// draw some text!

matrix.setCursor(1, 0); // start at top left, with one pixel of spacing

matrix.setTextSize(1); // size 1 == 8 pixels high

// print each letter with a rainbow color

matrix.setTextColor(matrix.Color333(7,0,0));

matrix.print(‘1’);

matrix.setTextColor(matrix.Color333(7,4,0));

matrix.print(‘6’);

matrix.setTextColor(matrix.Color333(7,7,0));

matrix.print(‘x’);

matrix.setTextColor(matrix.Color333(4,7,0));

matrix.print(‘3’);

matrix.setTextColor(matrix.Color333(0,7,0));

matrix.print(‘2’);

matrix.setCursor(1, 9); // next line

matrix.setTextColor(matrix.Color333(0,7,7));

matrix.print(‘*’);

matrix.setTextColor(matrix.Color333(0,4,7));

matrix.print(‘R’);

matrix.setTextColor(matrix.Color333(0,0,7));

matrix.print(‘G’);

matrix.setTextColor(matrix.Color333(4,0,7));

matrix.print(“B”);

matrix.setTextColor(matrix.Color333(7,0,4));

matrix.print(“*”); // draw some text!

matrix.setCursor(1, 0); // start at top left, with one pixel of spacing

matrix.setTextSize(1); // size 1 == 8 pixels high

// print each letter with a rainbow color

matrix.setTextColor(matrix.Color333(7,0,0));

matrix.print(‘1’);

matrix.setTextColor(matrix.Color333(7,4,0));

matrix.print(‘6’);

matrix.setTextColor(matrix.Color333(7,7,0));

matrix.print(‘x’);

matrix.setTextColor(matrix.Color333(4,7,0));

matrix.print(‘3’);

matrix.setTextColor(matrix.Color333(0,7,0));

matrix.print(‘2’);

matrix.setCursor(1, 9); // next line

matrix.setTextColor(matrix.Color333(0,7,7));

matrix.print(‘*’);

matrix.setTextColor(matrix.Color333(0,4,7));

matrix.print(‘R’);

matrix.setTextColor(matrix.Color333(0,0,7));

matrix.print(‘G’);

matrix.setTextColor(matrix.Color333(4,0,7));

matrix.print(“B”);

matrix.setTextColor(matrix.Color333(7,0,4));

matrix.print(“*”);

矩陣的工作方式

關(guān)于這些矩陣如何工作的文獻(xiàn)為零,也沒有公開的數(shù)據(jù)表或規(guī)范表,因此我們將嘗試記錄它們的工作方式。

首先要注意的是,在16x32矩陣中有512個RGB LED。就像幾乎每個矩陣一樣,您無法一次驅(qū)動所有512個驅(qū)動器 。一個原因是需要大量電流,另一個原因是擁有這么多的引腳確實很昂貴。取而代之的是,矩陣被分為8個交錯的部分/條。第一部分是第一條“線”和第九條“線”(32 x 2 RGB LED = 64 RGB LED),第二部分是第二條和第十條線,依此類推,直到最后一部分是第七條和第十六條線。您可能會問,為什么將線以這種方式配對?將第一部分放在第一和第二行,然后是第三和第四行,直到第15和16行會更好嗎?之所以這樣做,是為了使線交錯且刷新時看起來更好,否則我們將更清楚地看到條紋。

因此,在PCB上為12 LED驅(qū)動芯片。這些就像74HC595s,但它們有16個輸出,并且是恒定電流。 16個輸出* 12個芯片= 192個可同時控制的LED,而64 * 3(RG和B)=192。因此,現(xiàn)在將設(shè)計融合在一起:您擁有192個輸出,一次可控制一行,每個輸出192個R,G和B LED點(diǎn)亮或熄滅??刂破鳎ɡ鏔PGA或微控制器)選擇當(dāng)前要繪制的部分(使用A,B和C地址引腳-3位可以有8個值)。設(shè)置地址后,控制器將輸出192位數(shù)據(jù)(24字節(jié))并將其鎖存。然后它增加地址并移出另外192位,依此類推,直到到達(dá)地址#7,然后將地址設(shè)置回#0

該技術(shù)的唯一缺點(diǎn)是盡管非常簡單快捷,內(nèi)置了沒有PWM控制!控制器只能僅將LED設(shè)置為打開或關(guān)閉。那么,當(dāng)您想要全彩時該怎么辦?實際上,您需要以很高的速度一遍又一遍地繪制整個矩陣,以手動對矩陣進(jìn)行PWM。出于這個原因,如果您想做很多顏色和運(yùn)動視頻并且看起來不錯,則需要一個非常快的控制器(最低50 MHz )。

我們多快可以將數(shù)據(jù)輸入矩陣?論壇用戶Andrew Silverman和Ryan Brown一直在發(fā)布他們使用FPGA驅(qū)動16x32矩陣的進(jìn)展,極限似乎在40到50 MHz之間。 Ryan寫道:“我尚未驗證100%的像素正確性,但50 MHz似乎對我有用[…] 67 MHz絕對不起作用?!彼€提供了這張圖,顯示了相對于時鐘頻率的電流消耗:

上面的圖片是rhb。 me(CC By-NC-SA)

“請注意,隨著時鐘頻率的增加,LED面板的電流消耗會減少。這表明LED的“接通時間”正在減少。我猜這是由LED驅(qū)動器移位寄存器中的頻率不變延遲引起的?!?/p>

常見問題解答

我看到奇怪的像素偽像,重影或其他故障。

這可能是由于以下原因之一:

接線

電源

軟件

顯示不良

接線問題可能是顯示問題的最大來源。尤其是在嘗試“跳線”連接方法時。也有電源引起干擾的情況。本指南涵蓋了正確的布線和電源。

如果所有這些看起來都不錯,并且您仍然看到怪異的像素,則可能是由于軟件中如何驅(qū)動像素。您可以嘗試按照指南中的內(nèi)容進(jìn)行一些調(diào)整,但是問題可能不會完全消失。

如果您嘗試進(jìn)行故障排除并仍然遇到問題,請在論壇中發(fā)帖我們可以看看。

接線問題示例

接線問題看起來像這樣,如果發(fā)現(xiàn)錯誤/不良的接線,通常可以修復(fù)。

Ghosting問題示例

您將看到大部分期望的內(nèi)容,還有一些其他工件。即使接線正確,也會發(fā)生這種情況。

下載

文件

Adafruit Fritzing庫中的Fritzing對象

GitHub中的EagleCAD PCB文件

示意圖和結(jié)構(gòu)打印

責(zé)任編輯:wv

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • led
    led
    +關(guān)注

    關(guān)注

    242

    文章

    23385

    瀏覽量

    663562
  • RGB
    RGB
    +關(guān)注

    關(guān)注

    4

    文章

    801

    瀏覽量

    58737
收藏 人收藏

    評論

    相關(guān)推薦

    24CW16X/24CW32X/24CW64X/24CW128X系列數(shù)據(jù)手冊

    電子發(fā)燒友網(wǎng)站提供《24CW16X/24CW32X/24CW64X/24CW128X系列數(shù)據(jù)手冊.pdf》資料免費(fèi)下載
    發(fā)表于 01-22 16:08 ?0次下載
    24CW<b class='flag-5'>16X</b>/24CW32<b class='flag-5'>X</b>/24CW64<b class='flag-5'>X</b>/24CW128<b class='flag-5'>X</b>系列數(shù)據(jù)手冊

    用am335x芯片把16bit的rgb怎么通過SN65LVDS93A這個芯片轉(zhuǎn)化為lvds接口的?

    我現(xiàn)在用am335x芯片把16bit的rgb怎么通過SN65LVDS93A這個芯片轉(zhuǎn)化為lvds接口的?
    發(fā)表于 12-24 08:35

    TLC6984 48×16共陰極矩陣LED顯示驅(qū)動器評估模塊

    電子發(fā)燒友網(wǎng)站提供《TLC6984 48×16共陰極矩陣LED顯示驅(qū)動器評估模塊.pdf》資料免費(fèi)下載
    發(fā)表于 12-03 15:27 ?0次下載
    TLC6984 48×<b class='flag-5'>16</b>共陰極<b class='flag-5'>矩陣</b><b class='flag-5'>LED</b>顯示驅(qū)動器評估模塊

    LP5891 48x16共陰極矩陣LED顯示驅(qū)動器評估模塊

    電子發(fā)燒友網(wǎng)站提供《LP5891 48x16共陰極矩陣LED顯示驅(qū)動器評估模塊.pdf》資料免費(fèi)下載
    發(fā)表于 11-15 15:49 ?1次下載
    LP5891 48<b class='flag-5'>x16</b>共陰極<b class='flag-5'>矩陣</b><b class='flag-5'>LED</b>顯示驅(qū)動器評估模塊

    基于LP50xx器件的全彩RGB LED矩陣系統(tǒng)設(shè)計指南

    電子發(fā)燒友網(wǎng)站提供《基于LP50xx器件的全彩RGB LED矩陣系統(tǒng)設(shè)計指南.pdf》資料免費(fèi)下載
    發(fā)表于 09-25 11:52 ?0次下載
    基于LP50xx器件的全彩<b class='flag-5'>RGB</b> <b class='flag-5'>LED</b><b class='flag-5'>矩陣</b>系統(tǒng)設(shè)計指南

    R&amp;S?ZN-Z8x 開關(guān)矩陣

    RS?ZN-Z8x 開關(guān)矩陣經(jīng)過優(yōu)化設(shè)計,專門用于羅德與施瓦茨的矢量網(wǎng)絡(luò)分析儀。這款經(jīng)濟(jì)高效的多方位解決方案可用于多端口設(shè)備或多個設(shè)備的簡單和復(fù)雜的測量任務(wù)。開關(guān)矩陣支持寬頻率范圍,并提供可配
    的頭像 發(fā)表于 08-13 17:17 ?283次閱讀

    為了安全成功地放棄和封堵油井,使用井下X射線技術(shù)

    X射線
    深圳崧皓電子
    發(fā)布于 :2024年08月09日 06:51:54

    MSP430F15x, MSP430F16x, MSP430F161x混合信號微控制器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《MSP430F15x, MSP430F16x, MSP430F161x混合信號微控制器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 08-01 12:50 ?0次下載
    MSP430F15<b class='flag-5'>x</b>, MSP430F<b class='flag-5'>16x</b>, MSP430F161<b class='flag-5'>x</b>混合信號微控制器數(shù)據(jù)表

    XTPAM-1-5.0海曼32X32紅外測溫模組

    XTPAM-1-5.0測溫模組采用德國海曼( heimann )紅外測溫陣列傳感器HTPA32x32dR2L5.0/0.85F7.7eHIC,視場角33X33度,分辨率32x32,總像素數(shù)為1024
    的頭像 發(fā)表于 05-31 16:08 ?907次閱讀
    XTPAM-1-5.0海曼<b class='flag-5'>32X32</b>紅外測溫模組

    2x18 LED矩陣驅(qū)動器,8位模擬和8位/16位 PWM調(diào)光LP5862數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《2x18 LED矩陣驅(qū)動器,8位模擬和8位/16位 PWM調(diào)光LP5862數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 04-02 09:30 ?0次下載
    2<b class='flag-5'>x</b>18 <b class='flag-5'>LED</b><b class='flag-5'>矩陣</b>驅(qū)動器,8位模擬和8位/<b class='flag-5'>16</b>位 PWM調(diào)光LP5862數(shù)據(jù)表

    6x18 LED矩陣驅(qū)動器,8位模擬和8位/16 位PWM調(diào)光LP5866數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《6x18 LED矩陣驅(qū)動器,8位模擬和8位/16 位PWM調(diào)光LP5866數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 04-01 10:22 ?0次下載
    6<b class='flag-5'>x</b>18 <b class='flag-5'>LED</b><b class='flag-5'>矩陣</b>驅(qū)動器,8位模擬和8位/<b class='flag-5'>16</b> 位PWM調(diào)光LP5866數(shù)據(jù)表

    8x18LED矩陣驅(qū)動器,8位模擬和8位/16 位 PWM調(diào)光LP5868數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《8x18LED矩陣驅(qū)動器,8位模擬和8位/16 位 PWM調(diào)光LP5868數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 04-01 09:49 ?0次下載
    8<b class='flag-5'>x18LED</b><b class='flag-5'>矩陣</b>驅(qū)動器,8位模擬和8位/<b class='flag-5'>16</b> 位 PWM調(diào)光LP5868數(shù)據(jù)表

    具有自主控制功能的同步升壓4×3矩陣 RGB LED 驅(qū)動器LP5813數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《具有自主控制功能的同步升壓4×3矩陣 RGB LED 驅(qū)動器LP5813數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 03-26 13:44 ?0次下載
    具有自主控制功能的同步升壓4×3<b class='flag-5'>矩陣</b> <b class='flag-5'>RGB</b> <b class='flag-5'>LED</b> 驅(qū)動器LP5813數(shù)據(jù)表

    16通道、 局部調(diào)光背光LED驅(qū)動器TLC696x1數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《16通道、 局部調(diào)光背光LED驅(qū)動器TLC696x1數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 03-22 16:45 ?0次下載
    <b class='flag-5'>16</b>通道、 局部調(diào)光背光<b class='flag-5'>LED</b>驅(qū)動器TLC696<b class='flag-5'>x</b>1數(shù)據(jù)表

    具有自主控制功能的4 ×3矩陣RGB LED驅(qū)動器LP5812數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《具有自主控制功能的4 ×3矩陣RGB LED驅(qū)動器LP5812數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 03-22 11:07 ?0次下載
    具有自主控制功能的4 ×3<b class='flag-5'>矩陣</b><b class='flag-5'>RGB</b> <b class='flag-5'>LED</b>驅(qū)動器LP5812數(shù)據(jù)表
    主站蜘蛛池模板: 69久久夜色精品国产69 | 四虎影永久在线观看精品 | 四虎永久地址4hu紧急入口 | 精品乱人伦一区二区三区 | 国产免费私拍一区二区三区 | 久青草国产高清在线视频 | 国产女人在线观看 | 国产成人久视频免费 | 免费的色视频 | 在线人成精品免费视频 | 91麻豆麻豆 | 国产女主播精品大秀系列在线 | 中国一级特黄aa毛片大片 | 亚洲人成在线精品 | 性喷潮久久久久久久久 | 成年人毛片网站 | 美女写真mm爽爽爽 | 手机在线观看a | 四虎现在的网址入口 | 色综合久久丁香婷婷 | 日本精品一卡二卡≡卡四卡 | 女人爽到喷水的视频大全在线观看 | 欧美成人观看免费全部完小说 | 日韩黄色成人 | 天堂男人网 | 亚洲午夜日韩高清一区 | 精品毛片视频 | 免费一级毛片不卡在线播放 | 一级毛片在播放免费 | 夜色综合 | 欧美日本一区二区三区道 | 一区二区三区视频观看 | 六月丁香激情综合成人 | 日韩国产片 | 精品免费视在线观看 | 国产高清一级在线观看 | xxx性xxx乱 | 亚洲午夜精品在线 | 一级一级一片免费高清 | 一级片aaaaaa | 欧美成人全部免费观看1314色 |