彩色異步LED大屏幕顯示屏設計方案
1.2.2 顯示控制模塊設計
屏幕控制電路是LED 大屏幕控制系統(tǒng)中的一個重要組成部分,顯示屏控制邏輯電路生成讀寫控制信號和訪問顯示緩沖區(qū)數(shù)據(jù)的地址,讀取出來的顯示數(shù)據(jù)通過顯示驅動程序發(fā)送到LED 顯示屏顯示。顯示控制模塊主要由讀/ 寫地址產(chǎn)生器、計數(shù)器、讀/ 寫地址選擇器、讀/ 寫選擇器、讀/ 寫信號產(chǎn)生器、移位鎖存器和同步控制器等部分組成。
要在LED 大屏幕上顯示一幅完整的圖形圖像,CPLD 和ARM必須要協(xié)同一致工作,完成顯示存儲器中圖形圖像數(shù)據(jù)的讀取、解壓,圖像顯示效果的制作、灰度調制和生成顯示屏的驅動邏輯等各個部分的功能。顯示控制模塊的硬件結構圖如圖3所示。
圖3 LED 顯示屏主控制器電路圖
在控制電路中,數(shù)據(jù)總線將CPLD 與ARM 之間連接起來,S3C44B0X 通過芯片2 選通CPLD 中的數(shù)據(jù)緩沖區(qū),所以ARM 輸出數(shù)據(jù)的基地址為0x40000000。ARM 首先將FLASH 中保存的圖像數(shù)據(jù)復制到SDRAM 中,經(jīng)過相關處理后,調用不同的動態(tài)顯示效果程序將SDRAM 中的圖像數(shù)據(jù)循環(huán)寫入CPLD 緩沖區(qū),CPLD生成相應的時序轉換,串行輸出至LED 驅動電路。
2 LED 大屏幕控制系統(tǒng)軟件設計與實現(xiàn)
考慮到系統(tǒng)硬件驅動程序的運行效率以及軟件的開發(fā)周期,本系統(tǒng)采用C 語言作為軟件的開發(fā)工具。
設計的應用程序要實現(xiàn)與顯示屏硬件的連接功能,一要與系統(tǒng)底層的硬件驅動程序進行通信,二要為用戶提供控制界面并可以接收用戶輸入的各種指令。為此,采用Visual C++ 作為系統(tǒng)應用程序的開發(fā)工具。通信應用程序使用MSComm ( MicrosoftCommunications Control) 控件來編寫,MSComm 是微軟公司為用戶提供的簡化Window、下串行的通信編程ActiveX 控件。MSComm控件通過外部設備的串行端口進行數(shù)據(jù)的傳輸和接收,可以為應用程序提供串行的通信功能。利用MSComm 控件進行串口的編程非??旖?、方便。MSComm 控件是基于事件驅動的,在一般情況下,在事件發(fā)生時必須要得到通知。在實際編程中,可以在OnComm事件處理函數(shù)中加入自己編寫的處理代碼,OnComm 事件處理函數(shù)還可以檢查和處理程序在運行過程中出現(xiàn)通信錯誤。OnComm控件的最大優(yōu)點是程序響應的時間非常短,可靠性較高。每個MSComm 控件于一個串行端口對應。如果應用程序需要訪問多個串行端口,就要使用多MSComm 控件。MSComm 控件的行為是由其各種屬性決定的。在VC++ 中可以通過一系列的成員函數(shù)設置這些屬性,從而控制串行口的數(shù)據(jù)格式、波特率等特征。另外,在VC++ 中,MSComm 控件是作為CWND 類的派生類出現(xiàn)的,在系統(tǒng)初始化時必須創(chuàng)建這個窗口,并使用成員函數(shù)設置其屬性,使它和下位機使用相同的通訊格式,否則是不能建立正確的串行通訊的。
3 結論
目前,現(xiàn)有的LED 大屏幕控制系統(tǒng)中,還有很多是采用8位或者16位單片機作為系統(tǒng)的主處理器,系統(tǒng)存在運算速度慢、存儲空間較小、通信方式單一以及數(shù)據(jù)傳輸速度慢等缺點。針對上述存在的問題,本文設計了一種新的LED 大屏幕控制系統(tǒng),系統(tǒng)采用ARM 作為主處理器,結合可編程邏輯器件設計了系統(tǒng)的驅動電路,實現(xiàn)了異步LED大屏幕的彩色圖像、文字和視頻等的顯示。
led顯示器相關文章:led顯示器原理
評論