藍(lán)牙控制無線公告板采用P10 LED矩陣顯示器和Arduino
您可能見過許多傳統(tǒng)的數(shù)字公告板,其中必須通過使用鍵盤或其他工具手動(dòng)更改消息來更新顯示的信息。但是這些布告欄可以很容易地轉(zhuǎn)換成無線布告欄,其中一種方法就是使用藍(lán)牙。通過集成藍(lán)牙,LED面板上的信息可以通過我們的智能手機(jī)無線更新。這里HC05藍(lán)牙模塊連接到Arduino Uno,它接收來自智能手機(jī)應(yīng)用程序的數(shù)據(jù)。然后Arduino對(duì)數(shù)據(jù)進(jìn)行處理,并將信息顯示在LED板上。
Arduino和藍(lán)牙通常用于構(gòu)建任何基于物聯(lián)網(wǎng)的應(yīng)用程序,您可以通過以下鏈接找到一些有用的基于Arduino的物聯(lián)網(wǎng)項(xiàng)目。
材料
?32*16 P10 LED模塊1
?Arduino UNO-1
?HC05藍(lán)牙模塊-1
?5v,3安培SMPS -1
?16引腳FRC連接器-1
?連接電線
?跳線器
P10 LED矩陣顯示模塊
P10是一個(gè)32*16的LED矩陣模塊,用于顯示大型廣告。P10 LED模組的每個(gè)單元有512個(gè)高強(qiáng)度LED,每排32個(gè),每列16個(gè)。
P10 LED模塊可以多路復(fù)用,以構(gòu)建更大尺寸的顯示器。P10模塊有兩個(gè)端口:輸入端口和輸出端口。輸入端口用于從Arduino端輸入數(shù)據(jù),輸出端口用于將模塊連接到另一個(gè)LED P10模塊。
P10 LED模塊引腳說明:
?啟動(dòng):該引腳用于控制LED面板的亮度,通過給它一個(gè)PWM脈沖。
?A, B:這些被稱為多路選擇引腳。它們采用數(shù)字輸入來選擇任何多路行。
?移位時(shí)鐘(CLK),存儲(chǔ)時(shí)鐘(SCLK)和數(shù)據(jù):這些是正常的移位寄存器控制引腳。這里使用移位寄存器74HC595。
連接圖
下面是帶有Arduino和藍(lán)牙模塊的P10模塊的完整電路圖:
P10 LED顯示板的Arduino編程
本教程最后給出了使用藍(lán)牙模塊和Arduino的無線公告板的完整代碼,在這里我們將詳細(xì)解釋代碼。
首先,從給定的鏈接下載并安裝DMD.h和TimerOne.h庫,然后在代碼中包含所有必需的庫。此外,包括“Arial黑色字體”庫的文本字體,將顯示在LED板上。
在下一步中,定義行數(shù)和列數(shù),這里我們只使用一個(gè)模塊,因此ROW值和COLUMN值將為1。
然后定義將在整個(gè)程序中使用的所有變量。在這里你可以看到兩個(gè)數(shù)組,一個(gè)用于存儲(chǔ)公告板消息,另一個(gè)用于歡迎消息(歡迎來到物聯(lián)網(wǎng)設(shè)計(jì))。
通過SPI終端編寫函數(shù)p10scan()來檢查來自Arduino端的傳入數(shù)據(jù)。如果它接收到任何數(shù)據(jù),那么它將觸發(fā)一個(gè)中斷引腳來執(zhí)行某些事件。
在setup()中,我們初始化了計(jì)時(shí)器,并將中斷附加到函數(shù)p10scan()中。首先,使用clearScreen(true)函數(shù)清除屏幕,關(guān)閉LED板上的所有像素。接下來,使用strcpy函數(shù)將welcome_screen數(shù)組復(fù)制到消息數(shù)組中,以顯示歡迎消息,直到我們通過藍(lán)牙應(yīng)用程序提供任何消息。
在無限循環(huán)中,編寫代碼來接收從藍(lán)牙應(yīng)用程序發(fā)送的消息。因此,每當(dāng)函數(shù)serial .available()大于0時(shí),就意味著在串行終端上存在一些數(shù)據(jù)。然后將收到的消息復(fù)制到數(shù)組中。
要在LED矩陣模塊上以所需字體顯示字符串,請(qǐng)使用selectFont()函數(shù)并使用drawMarquee()函數(shù)打印字符串“Welcome To IoT Design”。
最后,要使文本滾動(dòng),使用一定的時(shí)間段將整個(gè)消息從右向左移動(dòng)。
這就是如何使用藍(lán)牙和Arduino構(gòu)建無線公告板,在P10 LED顯示板上顯示廣告。
本文編譯自iotdesignpro