2.4 LED 點(diǎn)陣屏與單片機(jī)的連接
點(diǎn)陣屏選擇的是市場(chǎng)上應(yīng)用最為廣泛的P10單紅戶(hù)外單元板。該模塊具有高穩(wěn)定性,高亮度,顏色均勻等特點(diǎn),進(jìn)行的掃描方式是1 /4 掃,控制方法簡(jiǎn)便,有利于優(yōu)化軟件設(shè)計(jì),采用點(diǎn)陣單元可以根據(jù)需要進(jìn)行拼湊,靈活性強(qiáng)。LED點(diǎn)陣屏與單片機(jī)的連接如圖7 所示。其中,OE(P1. 3) 為使能信號(hào),連接74HC138,用于亮度控制,也可用于顯示屏消隱。只要調(diào)整它的占空比就可以控制亮度的變化。ABCD 為行掃描信號(hào),A 是最低位,如果ABCD信號(hào)全用上,控制掃描的最大范圍是16 行,1 /4 掃描中只要AB(P2. 0 和P2. 1) 信號(hào)就可以了。當(dāng)行控制信號(hào)出現(xiàn)異常時(shí),將會(huì)出現(xiàn)顯示錯(cuò)位、高亮或圖像重疊等現(xiàn)象。
CLK(P1.0)為移位脈沖,每一個(gè)脈沖將數(shù)據(jù)移入或移出一位。當(dāng)時(shí)鐘信號(hào)有異常時(shí),會(huì)使整板顯示雜亂無(wú)章。STB(P1.1) 是鎖存信號(hào),將移位寄存器內(nèi)的數(shù)據(jù)鎖存并將其數(shù)據(jù)內(nèi)容通過(guò)驅(qū)動(dòng)電路點(diǎn)亮LED顯示出來(lái)。RI(P1.2) 是顯示數(shù)據(jù)的輸入端。
2.5 電源模塊
電源模塊由5V大功率電源和+3.3V小功率穩(wěn)壓電路組成。前者是給LED屏提供電源,后者是把5V電壓穩(wěn)壓成3.3V后提供給單片機(jī)、藍(lán)牙模塊和字庫(kù)模塊工作,這里選用ASM1117-3.3 芯片。市售通用的LED板輸入額定功率約為190W/ m2,每塊單元板面積是160*320 mm2 ,最大工作電流約為2 A(5V工作電壓時(shí)功耗是10W) ,可根據(jù)所要求的LED 顯示屏的面積選擇開(kāi)關(guān)電源的功率。常用的開(kāi)關(guān)電源,配合雙MOS管輸出以及加強(qiáng)型散熱器和濾波電容線(xiàn)圈,可保障純凈充足的電流輸出。
2.6 系統(tǒng)總體電路
本系統(tǒng)以單片機(jī)C8051F410作為MCU,外圍電路包括藍(lán)牙模塊、字庫(kù)芯片、LED點(diǎn)陣屏和電源模塊,系統(tǒng)電路原理如圖8所示。

圖8 系統(tǒng)原理圖。
3 系統(tǒng)軟件設(shè)計(jì)
單片機(jī)的初始化包括:1、時(shí)鐘初始化,選擇片內(nèi)24.5MHz 內(nèi)部時(shí)鐘。2、引腳配置: 配置P0.0~P0.2為SPI接口(3 線(xiàn)) ,與字庫(kù)芯片通信; 配置P0.4和P0.5為串口,與藍(lán)牙模塊實(shí)現(xiàn)通訊; 配置P1.0~P1. 3、P2.0 和P2.1為數(shù)字I /O,實(shí)現(xiàn)對(duì)顯示屏的控制。3、中斷、定時(shí)器/計(jì)數(shù)器和FLASH 相關(guān)寄存器初始化。系統(tǒng)軟件流程如圖9 所示。

圖9 系統(tǒng)軟件流程
?
初始化后系統(tǒng)將主動(dòng)讀取FLASH 指定地址范圍內(nèi)的數(shù)據(jù),并將數(shù)據(jù)(Unicode 字符集) 轉(zhuǎn)換得到與Unicode數(shù)據(jù)對(duì)應(yīng)的GB2312字符集代碼在字庫(kù)芯片的地址碼,然后將該地址碼送給字庫(kù)芯片提取該地址所對(duì)應(yīng)的GB2312字符集,再將GB2312字符集代碼通過(guò)字庫(kù)芯片轉(zhuǎn)化提取相對(duì)應(yīng)的16*16點(diǎn)陣代碼,通過(guò)SPI口將代碼送給單片機(jī),進(jìn)而單片機(jī)將點(diǎn)陣代碼送給點(diǎn)陣屏并控制點(diǎn)陣屏將數(shù)據(jù)顯示出來(lái)。
正常工作狀態(tài)下,當(dāng)手機(jī)藍(lán)牙與系統(tǒng)藍(lán)牙模塊發(fā)生配對(duì)時(shí),手機(jī)只有輸入正確的PIN 碼后,才可成功配對(duì),配對(duì)成功后,若手機(jī)采用記事本軟件通過(guò)藍(lán)牙發(fā)送數(shù)據(jù),藍(lán)牙模塊將接收數(shù)據(jù)并通過(guò)串口發(fā)送出去,這時(shí)單片機(jī)接收數(shù)據(jù),如果識(shí)別到有效數(shù)據(jù)的開(kāi)始位為標(biāo)志位“#”,那么系統(tǒng)將認(rèn)為該命令是控制命令,即控制LED 顯示的亮度、速度、移動(dòng)方向。控制命令的格式自主定義。例如“#35 左”,意思為:“#”為控制標(biāo)志位,“3”控制亮度(控制范圍為0-9,數(shù)值越大亮度越高) ,“5”控制速度(控制范圍0-9,數(shù)字越大速度越慢) ,“左”為方向控制位(左為移動(dòng)方向向左移,右代表向右移,上表示向上移,下為向下移) 。如果有效數(shù)據(jù)的開(kāi)始位不為“#”,那么將默認(rèn)此次數(shù)據(jù)為L(zhǎng)ED要顯示的新內(nèi)容,系統(tǒng)將把數(shù)據(jù)按順序存入指定的FLASH 地址范圍內(nèi),待復(fù)位后新數(shù)據(jù)將顯示于屏幕上。特別要指出的是,為了保證顯示屏工作的可靠性,要在顯示循環(huán)程序中得合適位置設(shè)置好“喂狗”參數(shù)。
4 結(jié)束語(yǔ)
系統(tǒng)實(shí)現(xiàn)了通過(guò)手機(jī)更新顯示屏顯示內(nèi)容的目的,方便又快捷。經(jīng)過(guò)一些用戶(hù)的使用,其顯示性能和控制性能均較為穩(wěn)定。但是,在實(shí)際使用過(guò)程中也遇到了尚未解決的問(wèn)題,主要有兩大方面:一是有部分手機(jī)不支持Unicode字符集格式;二是本設(shè)計(jì)僅限于智能機(jī)通過(guò)記事本編輯顯示數(shù)據(jù)的傳送,而不同手機(jī)采用的記事本編輯軟件不盡兼容,本設(shè)計(jì)是基于Nokia手機(jī)軟件設(shè)計(jì)的。
?
電子發(fā)燒友App



















評(píng)論