基于AVR單片機(jī)的LED顯示屏控制系統(tǒng)的研究
系統(tǒng)軟件設(shè)計(jì)包括上位機(jī)軟件的設(shè)計(jì)、下位機(jī)程序設(shè)計(jì)兩部分。
上位機(jī)軟件完成圖像和文字的編輯,通過計(jì)算機(jī)串行接口把顯示數(shù)據(jù)傳送到控制卡上??刂瓶ń邮丈衔粰C(jī)的數(shù)據(jù)并通過內(nèi)部Boot Loader 區(qū)的程序進(jìn)行FLASH ROM 內(nèi)顯示數(shù)據(jù)的自更新??刂瓶ò扬@示數(shù)據(jù)進(jìn)行分割處理后發(fā)送給每個(gè)單元板,并且完成顯示數(shù)據(jù)不同方式處理。
4. 1 下位機(jī)程序設(shè)計(jì)
下位機(jī)軟件設(shè)計(jì)分為兩大功能塊: 顯示部分和通信部分。顯示部分采用動(dòng)態(tài)掃描的方式,實(shí)現(xiàn)對(duì)顯示屏要顯示的漢字、圖象、字符等數(shù)據(jù)信息進(jìn)行傳輸控制以及顯示等功能。與PC 機(jī)的實(shí)時(shí)通信部分主要是利用單片機(jī)串口中斷接收和發(fā)送數(shù)據(jù)信息,實(shí)現(xiàn)與計(jì)算機(jī)的實(shí)時(shí)數(shù)據(jù)信息傳輸。程序可以實(shí)現(xiàn)與計(jì)算機(jī)的通信,可非常方便地任意修改所要顯示的漢字、圖像等; 并使顯示屏可按你選擇顯示方式進(jìn)行漢字或表格顯示。設(shè)計(jì)程序的流程圖如圖2 所示。
圖2 系統(tǒng)程序流程圖
軟件系統(tǒng)采用模塊化結(jié)構(gòu),包括主程序、顯示子程序和串口中斷服務(wù)程序。主程序?yàn)轫樞蚪Y(jié)構(gòu),完成堆棧、中斷、串口的初始化設(shè)置后,循環(huán)調(diào)用顯示子程序,以及響應(yīng)串行接收或發(fā)送中斷指令;顯示子程序從顯示緩沖區(qū)取出字模,輸出行選通信號(hào)至P0 口并通過一個(gè)通用邏輯陣列74HC00D 輸出,配合列掃描信號(hào),進(jìn)行動(dòng)態(tài)掃描顯示; 中斷服務(wù)程序串口接收PC 機(jī)發(fā)送的漢字機(jī)內(nèi)碼數(shù)據(jù),實(shí)現(xiàn)與計(jì)算機(jī)實(shí)時(shí)通信。程序各部分的功能, 由各個(gè)模塊分別實(shí)現(xiàn)。程序模塊有: 串口初始化模塊、數(shù)據(jù)輸入模塊、漢字首地址計(jì)算模塊、取字模塊、顯示模塊和移動(dòng)模塊。系統(tǒng)顯示流程圖如圖3 所示。
圖3 系統(tǒng)顯示流程圖
4. 2 人機(jī)交互界面的設(shè)計(jì)
上位機(jī)軟件使用可視化編程工具Visual Basic.NET 開發(fā),主要完成圖像的取點(diǎn)、線性補(bǔ)償和點(diǎn)陣數(shù)據(jù)生成。首先將圖像文件轉(zhuǎn)換為96 × 64 分辨率、256 階色深的單色灰度圖像,由于使用占空比驅(qū)動(dòng)的LED 其占空比/ 亮度為對(duì)數(shù)特性,所以需加入指數(shù)特性調(diào)整為線性之后才能交付顯示系統(tǒng)進(jìn)行顯示。
通過MSComm 控件實(shí)現(xiàn)PC 機(jī)與單元板的通信。系統(tǒng)主界面如圖4 所示。
圖4 上位機(jī)主界面
5 結(jié)論
本系統(tǒng)設(shè)計(jì)著重于對(duì)單色屏的研究,對(duì)于灰度不同的真彩色LED 顯示屏的設(shè)計(jì)以及設(shè)備的驅(qū)動(dòng),有待于進(jìn)一步的學(xué)習(xí)探討。而且本設(shè)計(jì)所用的控制卡只能控制顯示屏的單色顯示,如果能顯示雙色,甚至三色那就更方便了。LED 顯示屏可以顯示變化的數(shù)字、文字、圖形圖像,不僅可以用于室內(nèi)環(huán)境還可以用于室外環(huán)境,具有投影儀、電視墻、液晶顯示屏無(wú)法比擬的優(yōu)點(diǎn)。LED 甚至可以在信息指示燈、大屏幕顯示、液晶顯示(LCD) 的背照明等新技術(shù)中應(yīng)用。它是未來(lái)智能交通系統(tǒng)的顯示手段之一。
由于LED 顯示屏的分析、設(shè)計(jì)與實(shí)際應(yīng)用環(huán)境及應(yīng)用目的有很大關(guān)系,所以對(duì)其控制系統(tǒng)的要求也是不同的。如果顯示屏的面積要求很大,屏幕顯示的信息量超大,那么要傳輸?shù)臄?shù)據(jù)量也隨之增大,如何設(shè)計(jì)出更理想的字模保存方法以及數(shù)據(jù)傳輸時(shí)的壓縮算法需要進(jìn)一步的研究和探討。
評(píng)論