點(diǎn)陣LED顯示屏程序設計
本文點(diǎn)陣LED顯示屏程序設計是通過(guò)設計一個(gè)可顯示文字與圖形的16*64點(diǎn)陣控制器電路來(lái)學(xué)習和熟悉LED的使用,LED點(diǎn)陣控制器分為五個(gè)模塊,系統框圖(如圖1),一是參數輸入部分,例如溫度、濕度、亮度等;二是字庫部分,如16點(diǎn)陣、24點(diǎn)陣或者32點(diǎn);三是單片機控制部份;四是接口部分(如圖2),一般采用08接口,如果需要不同的接口類(lèi)型,可以根據08接口為基礎進(jìn)行轉接,這也是本系統采用08接口的原因之一;五是串口通訊部分(圖3),其中亮度、溫度、時(shí)鐘模塊由于時(shí)間的原因沒(méi)有完善,等待擴展搜搜led。
點(diǎn)陣LED顯示屏程序的思路
根據點(diǎn)陣的顯示原理就可以編寫(xiě)出顯示函數Sosoledcom,整個(gè)程序的設計分為串口通訊協(xié)議、掃描程序函數、效果處理函數。
2.1.1 串口通訊協(xié)議 #p:為顯示圖片 #c:為顯示漢字 #l:為顯示英文 #n:為顯示數字
所有的控制命令必須以回車(chē)結束,指令接收并解碼正確則返回“Receive OK” ,否則返回“error” 2.1.2 顯示處理效果函數
本系統只做了兩個(gè)顯示效果,一個(gè)是閃爍,一個(gè)是左移。閃爍相對簡(jiǎn)單,先顯示延時(shí),清屏延時(shí),再顯示。左移則相對復雜,需要將顯示緩存的內容全部左移一點(diǎn),左移的時(shí)候取前一個(gè)字節的低位等于后一個(gè)字節的低位,一屏移完一點(diǎn)后送顯示,再移一點(diǎn),這樣循環(huán)就可以實(shí)現了左移的效果。 2.1.3 顯示函數
這個(gè)函數是將顯示緩存的內容送到顯示屏,做一個(gè)74HC595的驅動(dòng)即可,送完一行數據后點(diǎn)亮,再送下一行,這樣循環(huán)16次,就可以?huà)呙柰?6行高的顯示屏。
2.2 程序流程圖