在這個(gè)初學(xué)者項(xiàng)目中,我們通過構(gòu)建LED矩陣和使用Arduino來創(chuàng)建二進(jìn)制時(shí)鐘。
本文將向您介紹LED多路復(fù)用以及如何利用這種技術(shù)構(gòu)建可用于許多不同項(xiàng)目的LED陣列。在這種特殊情況下,我們將構(gòu)建一個(gè)二進(jìn)制時(shí)鐘。
如何設(shè)置LED多路復(fù)用
這是一種非常簡(jiǎn)單的技術(shù)創(chuàng)建LED矩陣,每個(gè)二極管可以尋址和打開和關(guān)閉。您首先必須決定是要構(gòu)建共陰極還是共陽極陣列。雖然電路略有不同,但兩種方法基本上都是相似的:

創(chuàng)建LED矩陣的電路圖。
如何尋址各個(gè)LED
每個(gè)二極管在這個(gè)數(shù)組中有自己的地址,可以單獨(dú)打開和關(guān)閉。如果您在尋址LED時(shí)遇到問題,可以將上圖中的數(shù)組劃分為行和列,并為每個(gè)數(shù)組分配如下名稱:

通過將電路劃分為行和列來對(duì)矩陣內(nèi)的每個(gè)LED進(jìn)行尋址。
要打開LED9,需要在晶體管D的基極提供電壓,并將線路3連接到電源。您可以通過在當(dāng)前激活的LED之間快速切換來使其看起來像多個(gè)LED一樣。
構(gòu)建二進(jìn)制時(shí)鐘
讓我們把我們的LED陣列使用Arduino Uno打開和關(guān)閉LED,DS3231和實(shí)時(shí)時(shí)鐘模塊以便跟蹤時(shí)間,從而很好地利用和構(gòu)建二進(jìn)制時(shí)鐘。
首先構(gòu)建LED矩陣從上面。它看起來有點(diǎn)亂,但連接LED需要所有跳線:
首先構(gòu)建LED矩陣。
因?yàn)檫@是一個(gè)簡(jiǎn)單的LED矩陣,它使用Arduino的十個(gè)I/O端口。所以一定要使用有足夠針腳的。如果要減少必要行數(shù),可以使用二進(jìn)制到十進(jìn)制轉(zhuǎn)換。但是,這超出了本文的范圍。
第1行到第4行連接到Arduino引腳2到5,6列連接到引腳6到11.您可以在下面看到這些連接。
將LED連接到Arduino。
固件
首先編寫一個(gè)小測(cè)試草圖,將矩陣中的每個(gè)LED依次打開。如果所有LED都以正確的順序點(diǎn)亮,則陣列連接正確。
voidsetup()
{
pinMode(2,OUTPUT);//1
pinMode(3,OUTPUT);//2
pinMode(4,OUTPUT);//3
pinMode(5,OUTPUT);//4
pinMode(6,OUTPUT);//A
pinMode(7,OUTPUT);//B
pinMode(8,OUTPUT);//C
pinMode(9,OUTPUT);//D
pinMode(10,OUTPUT);//E
pinMode(11,OUTPUT);//F
}
voidloop()
{
for(inti=6;i12;?i++)
{
digitalWrite(i,1);
for(intu=2;u6;?u++)
{
digitalWrite(u,1);
delay(250);
digitalWrite(u,0);
}
digitalWrite(i,0);
}
}
如上所述,主固件連接DS3231 RTC模塊并讀取時(shí)間。然后,它將值轉(zhuǎn)換為二進(jìn)制,并將相應(yīng)的LED切換為ON。
您需要從Github下載Arduino IDE庫(kù)。固件在本文末尾以可下載的.zip文件的形式提供。上傳代碼后,您的Arduino應(yīng)顯示正確的時(shí)間 - 在此特定示例中,時(shí)間為21:45:11。
我們完成的二進(jìn)制時(shí)鐘。
為什么制造商使用LED矩陣?
LED矩陣在許多應(yīng)用中都非常有用,比如這個(gè)簡(jiǎn)單的二進(jìn)制時(shí)鐘。重要的是要了解晶體管如何作為開關(guān)工作以及如何單獨(dú)控制元件陣列中的每個(gè)LED。
然而,這種方法遠(yuǎn)非完美,因?yàn)樗加昧嗽S多I/O端口并且受到限制可以同時(shí)打開多少個(gè)LED。但它很容易理解和構(gòu)建。
如果你想減少必要的I/O行數(shù),你可以嘗試使用BCD到十進(jìn)制解碼器,如CD4028B(PDF),你可以看看在其他技術(shù)如Charlieplexing,或者你可以使用完全不同的方法(例如,可尋址的LED條)。
利用LED矩陣的其他項(xiàng)目
-
led
+關(guān)注
關(guān)注
242文章
23715瀏覽量
671119 -
Arduino
+關(guān)注
關(guān)注
189文章
6492瀏覽量
190153
發(fā)布評(píng)論請(qǐng)先 登錄
二進(jìn)制

二進(jìn)制編碼和二進(jìn)制數(shù)據(jù)
什么是二進(jìn)制計(jì)數(shù)器,二進(jìn)制計(jì)數(shù)器原理是什么?
二進(jìn)制電平,什么是二進(jìn)制電平
二進(jìn)制加法程序【匯編版】
微型二進(jìn)制時(shí)鐘開源分享

帶秒的Arduino 24小時(shí)二進(jìn)制時(shí)鐘

Arduino的二進(jìn)制時(shí)鐘屏蔽

基于Arduino Uno的二進(jìn)制時(shí)鐘
帶兩個(gè)LED矩陣和RTC的數(shù)字和二進(jìn)制時(shí)鐘

構(gòu)建LED二進(jìn)制計(jì)數(shù)器

使用Arduino UNO構(gòu)建4位二進(jìn)制計(jì)數(shù)器

評(píng)論