Arduino 8×8 LED矩陣
在這個項目中,我們將學(xué)習(xí)LED矩陣顯示器和兩個關(guān)于Arduino 8×8 LED矩陣接口的不同項目。第一個項目將是Arduino和8X8 LED矩陣之間的簡單接口,用于顯示信息(甚至可以顯示滾動的信息和圖像),第二個項目將是一個高級項目,8X8 LED矩陣通過Android設(shè)備進(jìn)行控制。
本文引用地址:http://cafeforensic.com/article/202304/445835.htmLED矩陣是一個二維的LED陣列,可以用來顯示符號、字符甚至是圖像。根據(jù)矩陣中LED的方向,可以有兩種類型的LED矩陣。它們是普通行陽極和普通行陰極。
LED矩陣模塊是常用的顯示設(shè)備之一,被用于電子顯示板和通知系統(tǒng)等主要應(yīng)用。
在Electronicshub中選擇你想學(xué)習(xí)的下一組Arduino項目: Arduino項目"
項目1:簡單的Arduino LED矩陣接口
電路圖
所需組件
Arduino Uno板 [在此購買)
LED矩陣 - 8 x 8 LED點(diǎn)陣
IC1 - MAX 7219
R1 - 10 KΩ
C1 - 0.1 μF
C2 - 10 μF
組件描述
Arduino Uno
該項目是基于Arduino Uno微控制器板的。在Arduino Uno的14個可用的數(shù)字輸入/輸出引腳中,我們只需要三個引腳來實(shí)現(xiàn)這個項目。
一個引腳為LED顯示驅(qū)動IC(MAX 7219)提供時鐘信號,另一個引腳用于將串行數(shù)據(jù)傳輸給IC,以便在LED矩陣上顯示。在程序中必須適當(dāng)提到相應(yīng)的引腳。
LED矩陣
本項目中使用了一個8 x 8的LED矩陣顯示器來顯示信息。LED矩陣有不同的樣式,如單色、雙色、多色或RGB LED矩陣。
它們也有不同的尺寸,如5×7、8×8、16×16、32×32等。根據(jù)LED在矩陣中的排列方式,LED矩陣可以是共行陽極或共行陰極。
在共行陽極型LED矩陣的情況下,電流源(高電壓或正電壓)被賦予行A-D,電流匯(低電壓或負(fù)電壓或地)被賦予列1-4。
共行陽極
在共行陰極型LED矩陣的情況下,電流源(高或正電壓)被賦予1-4列,電流匯(低或負(fù)電壓或地)被賦予A-D行。
共行陰極
本項目中使用的LED矩陣是一個普通行陰極型LED矩陣。在開發(fā)該項目時,必須知道LED矩陣的類型,并且必須相應(yīng)地編寫程序。
IC MAX 7219
LED矩陣可以以兩種方式驅(qū)動。它們是并行(每一行或每一列都發(fā)送并行數(shù)據(jù))和串行(數(shù)據(jù)以串行方式發(fā)送,并使用一個IC將串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù))。
MAX 7219是一個具有串行輸入和并行輸出的普通陰極顯示器驅(qū)動器。它用于連接微處理器和微控制器與64個單獨(dú)的LED(例如8 x 8 LED矩陣有64個LED)、七段式LED顯示器(最多8位)或條形圖顯示器。
如電路圖所示,8 x 8 LED矩陣連接到MAX 7219,數(shù)據(jù)輸入從Arduino板接收到MAX 7219。
注意:
市場上有預(yù)接線的MAX 7219和8 x 8 LED矩陣模塊。為了方便,可以使用它們。
預(yù)接線的MAX 7219和8 x 8的LED矩陣
工作
該項目的目的是將Arduino Uno板與一個8 x 8的LED矩陣連接起來,以顯示信息。
盡管在這個項目中使用了一個8 x 8的LED矩陣和相應(yīng)的MAX 7219集成電路,但可以將多個LED矩陣串聯(lián)起來進(jìn)行長滾動顯示。按電路圖所示連接各部件。該系統(tǒng)的工作原理如下。
14個可用的數(shù)字輸入/輸出引腳中的3個被用來控制顯示驅(qū)動IC MAX 7219。MAX7219集成電路上的3個引腳是時鐘、數(shù)據(jù)輸入和負(fù)載(如果是MAX 7221集成電路,則是cs)。可應(yīng)用的最大時鐘頻率為10MHz。DIN(數(shù)據(jù)輸入)接受來自微控制器或Arduino板的串行數(shù)據(jù)。
它有16位,前8位(D0-D7)用于驅(qū)動LED矩陣的列(MAX 7219 IC的SEG A-G和DP),后8位(D8-D15)用于驅(qū)動LED矩陣的行(MAX 7219 IC的DIG 0-7)。
負(fù)載引腳(或CS或Max 7221 IC的芯片選擇引腳)在其上升沿鎖住串行輸入數(shù)據(jù)。
MAX 7219的另一個重要引腳是ISET,它設(shè)定了驅(qū)動所有LED的峰值電流。它通過一個電阻(R1)連接,這被稱為RSET。電容器過濾掉電源中的任何噪音。
當(dāng)使用Arduino(通過程序)發(fā)送進(jìn)來的串行數(shù)據(jù)時,串行數(shù)據(jù)被轉(zhuǎn)換為段和數(shù)字,以驅(qū)動LED矩陣的列和行。根據(jù)發(fā)送的數(shù)據(jù),矩陣上相應(yīng)的LED燈亮起并顯示信息。
這里寫的程序是用于滾動文本顯示的。在單個8 x 8的LED矩陣上查看長的滾動數(shù)據(jù)可能比較困難。因此,可以將多個LED矩陣連鎖起來,形成一個長矩陣。
MAX 7219集成電路的數(shù)量與8 x 8 LED矩陣的數(shù)量相等。為了將顯示擴(kuò)展到多個LED矩陣,第一個MAX 7219的數(shù)據(jù)輸出(DOUT)引腳必須連接到第二個MAX 7219集成電路的數(shù)據(jù)輸入(DIN)引腳。對于多個LED矩陣必須繼續(xù)這一過程。
(LED矩陣在鏈中的定位很重要。第一個LED矩陣必須放在鏈的右邊)。
注意
該程序使用一個名為LedControl的庫。這個庫必須被添加到Arduino IDE中,頭文件LedControl.h必須包含在程序中。
這個庫文件的用途是使多個MAX 7219集成電路能夠被集成,還能提供滾動的文本。該庫可以從這個鏈接下載。
項目2:Arduino 8X8 LED矩陣與Android手機(jī)的接口
Arduino 8×8 LED矩陣接口系列的第二個電路是基于藍(lán)牙通信和Android手機(jī)的。在這個項目中,我們使用藍(lán)牙通信將Arduino與安卓手機(jī)連接起來,通過MAX7219連接到Arduino的8×8 LED矩陣通過安卓手機(jī)上的一個專用應(yīng)用程序進(jìn)行控制。
我們已經(jīng)在前面的項目中看到了8×8的LED矩陣和MAX7219芯片是如何連接的。因此,我將跳過這部分的連接,繼續(xù)介紹MAX7219集成電路如何與Arduino連接。
但是我在前面的電路中沒有提到一個典型的8×8的LED矩陣的引腳圖。因此,為了讓大家了解,下面的圖片顯示了8×8 LED矩陣的引腳圖。
Arduino 8x8 LED矩陣引腳圖
你可以看到,一個8×8的LED矩陣由16個引腳組成: 8行和8列。通常情況下,行與LED的陽極有關(guān),列與LED的陰極有關(guān)。
電路圖
Arduino 8x8 LED矩陣電路圖
所需元件
Arduino UNO
MAX7219集成電路板
8×8 LED矩陣
HC-05藍(lán)牙模塊
安裝有應(yīng)用程序的安卓手機(jī)
電路設(shè)計
由于Arduino和MAX7219之間的通信是基于SPI通信協(xié)議的,我們只需要Arduino的三個引腳(數(shù)據(jù)、時鐘和芯片選擇)。MAX7219集成電路板的CS、CLK和DIN引腳被連接到Arduino的10、11和12引腳。
由于我們在Arduino和Android設(shè)備之間使用藍(lán)牙連接,HC-05藍(lán)牙模塊的RX和TX引腳被連接到Arduino的TX和RX引腳(引腳1和0)。
通過安卓應(yīng)用程序控制8×8 LED矩陣
為這個項目設(shè)計了一個基于Android設(shè)備的專用應(yīng)用程序。已經(jīng)安裝在手機(jī)上的應(yīng)用程序的布局如下圖所示。
Arduino 8x8 LED矩陣安卓應(yīng)用
該應(yīng)用程序有8×8個方塊(每個方塊對應(yīng)8×8 LED矩陣上的一個LED),一個復(fù)位按鈕和一個斷開連接按鈕。觸摸一個特定的方塊將打開8×8 LED矩陣中的特定LED。
方塊的顏色會變成紅色,表示LED已經(jīng)打開。再次觸摸該方塊將關(guān)閉相應(yīng)的LED,方塊的顏色將恢復(fù)為灰色。
底部有一個復(fù)位按鈕,你可以用它來復(fù)位8×8的LED矩陣,即所有的LED將被關(guān)閉。斷開按鈕將與藍(lán)牙斷開連接。
注意:該應(yīng)用程序利用了手機(jī)的藍(lán)牙功能。因此,必須給予必要的權(quán)限。此外,HC-05藍(lán)牙模塊必須與設(shè)備(手機(jī))配對。
Arduino 8×8 LED矩陣圖片1
Arduino 8×8 LED矩陣圖片2
Arduino 8×8 LED矩陣圖像3
應(yīng)用
基于Arduino的8×8 LED矩陣顯示器僅使用微控制器的3個引腳。因此,它可以用于顯示信息是系統(tǒng)的一部分的應(yīng)用,其中微控制器的其他引腳可以用于其他外設(shè)。
LED矩陣是一種基本形式的顯示設(shè)備,用于在公共場所如公共汽車或火車站顯示信息。
多個LED矩陣可以組合成大型顯示器,并可用于顯示多色的圖像。
評論