基于ARM處理器的顯示屏控制器的設計
3、串行接口電路。雖然,現如今以太網通信的使用已非常普及,但由于串行通信接線少、成本低,所以其在數據采集和控制系統中仍然有著非常廣泛的應用。RS232和RS485兩種標準的主要區別與使用平衡信號和非平衡信號有關。RS232采用非平衡信號,而RS485采用平衡信號。究竟采用哪一種, 主要取決于傳輸距離和電器噪聲兩個因素。在傳輸距離小于30米,并且環境電器噪聲較小情況下,最好采用非平衡的RS232,在傳輸距離較長,但小于300 米時,或者環境電器噪聲影響必需考慮時,最好采用RS485。并且RS485的二線制通訊方式可實現真正的多點雙向通信。
4、自動調亮電路。在環境光線較弱時,LED屏的亮度應相應降低,否則會顯得刺眼。而在環境光線較強時,LED屏的亮度也應相應提高,否則屏幕顯示內容會看不清楚。所以控制器需根據周圍光線的亮度來自動調整量度。為了實現上述功能,系統采用了光敏電阻,與一定值電阻串聯,當外界環境光線變化時,光敏電阻阻值發生變化,R2所分電壓也跟著發生變化,然后根據此電壓值來調整屏幕亮度,具體電路如圖3所示。LPC2214具有8路10位ADC轉換器,其參考電壓為3.3V,參考電壓的精度會影響ADC的轉換結果。R1為I/O口保護電阻,用于保證電路不產生短路故障。
圖3 自動調亮電路
5、LED顯示屏掃描驅動電路。LED顯示屏的掃描邏輯由CPLD來實現,CPLD采用 Altera的EPM1270。EPM1270屬于Altera的MAX II系列。MAX II是Altera推出的迄今為止成本最低的CPLD器件。
3 LED掃描邏輯設計
LED掃描邏輯采用CPLD來實現,它具有很好的組合邏輯和時序邏輯功能,能夠完成LED顯示所需要的掃描控制信號。CPLD設計框圖如圖4所示, 它主要包括以下幾個模塊:⑴ 時鐘進程:產生各種頻率的時鐘;⑵ FIFO:CPLD與MCU之間的接口部分,用作數據緩沖,它使得MCU可以對顯存進行全速寫操作;⑶ 寫入地址及數據產生器:產生向顯存進行寫操作的地址和數據;⑷ 讀地址產生器:掃描方式不同,從顯存中讀取數據時的尋址方式也不同,讀地址產生器,可根據掃描方式的不同,產生不同的讀顯存的地址,從而完成1/16、1 /8、1/4等掃描方式;⑸ 掃描控制電路:在不同的掃描方式下,根據從顯存中讀取的數據產生相應的掃描控制信號;⑹ 讀寫切換電路:對顯存的讀寫狀態進行切換。
圖4 CPLD設計框圖
為了實現單屏幕、多窗口任意位置的顯示,軟件部分我們基于μc/OS-II進行設計,這樣可以充分利用操作系統高效的任務調度算法,將每個窗口的顯示都交由單個任務來完成,從而極大地提高系統的運行速度和可靠性,并且使得程序的開發和擴展變得更加方便。程序的結構如圖5所示,控制器上電后,首先進行系統初始化,然后從 FLASH 中讀取屏參數,進行參數初始化。然后建立任務TaskControl,TaskControl用于對各窗口顯示任務進行實時管理,它擁有比各窗口顯示任都高的優先級。它每隔1s對reset標志進行一次查詢,如果reset=1,則刪除原先建立的各窗口顯示任務,然后從FLASH中讀取新的窗口個數,然后依此建立新任務,將每個窗口的顯示交由單個任務來控制。
圖5 系統程序結構圖
評論