引言
LED顯示屏整個系統一般分為3個部分:上位機,顯示屏控制電路和LED陣列及其驅動。
其中顯示屏控制電路的設計廣泛采用兩類器件作為其控制核心來實現,一類是單片機控制系統,另一類是可編程邏輯器件。該設計采用基于單片機的控制方案,如圖1所示,一臺PC機通過RS485總線與多塊控制器相連,每塊控制器擴展了溫度傳感器、實時時鐘和其他外圍器件,控制LED屏的顯示。
采用單片機的控制方案,結構簡單,應用靈活,并且易于擴展。
1 系統的硬件設計
系統硬件框圖如圖2所示,上位PC機用專門的軟件編輯將要顯示的信息,通過串口發給單片機,存儲在Flash內,單片機再驅動電路將字符的編碼通過LED點陣的形式顯示出來。
LED點陣為雙基色屏,能顯示紅,綠,黃3種顏色。控制器的核心選用STC89LE516單片機,擴展32KSRAM作為顯示緩存區,512KFlash用于存儲顯示的點陣信息和一些必要的參數。
撥碼開關選擇本屏的物理地址。控制器還擴展了1片溫度傳感器采集溫度數據,1片時鐘芯片進行實時時間的讀寫。
1.1 存儲器擴展電路
STC89LE516是一款強抗干擾,高速,低功耗的單片機,增強型51內核,集成了看門狗電路,內含64K字節Flash存儲器,512字節RAM,可在線編程,可遠程升級,價格便宜。
為了提高響應速度,系統擴展了32KSRAMIS61LV256作為顯示緩存區,用于保存當前正在顯示的一幀數據和一些特技處理數據,和單片機的接口如圖3所示,SRAM的最高位地址線A14由單片機的P3.2單獨控制,以便于將紅色和綠色LED點陣的數據分塊存放,當P3.2輸出為0時,選中RAM地址0x0000~0x3fff,為紅色LED的數據區;當P3.2輸出為1時,選中RAM地址0x4000~0x7fff,為綠色LED的數據區。
Flash用于存儲代碼,顯示的數據信息和字庫。可采用查表的方式調用需要顯示的漢字和英文點陣數據。用64K字節的存儲空間存儲16×16點陣的漢字,可以顯示2048個,512K的Flash可滿足常用字不同字體的存儲需求。SST39VF040的地址線有19位,單片機用P1口來擴充高三位地址線。
系統中單片機,SRAM,Flash要求313V供電,而系統接入電源為5V,可通過LM1117-3.3為芯片提供3.3V穩壓電源。
低壓差電源芯片LM1117輸出電流可達800mA,輸出電壓精度在±1%以內,還具有電流限制和熱保護功能。
1.2 串行接口電路
控制器接收數據采用單片機內部全雙工的通用異步收發器(UART)。在傳輸距離小于20m時采用非平衡的RS-232,在傳輸距離為幾十m到上km時采用RS-485。RS-485采用平衡發送和差分接收,因此具有抑制共模干擾的能力,可以聯網構成分布式系統。由于顯示屏的位置是分散的,彼此相距幾十甚至幾百m,所以控制器用MAX232和SN75176分別做電平轉換,用跳線進行RS-232和RS-485之間的切換選擇,從而實現和PC的通信,完成數據的存儲和更新。
1.3 實時時鐘電路
單片機與HT1381低功耗實時時鐘芯片接口采用串行傳輸方式,如圖4所示只需3根線就可以讀寫年、月、日、星期、時、分、秒,在需要時顯示到LED屏幕上。HT1381所需時鐘獨立于單片機,外接321768kHz晶振就可以工作。配備3V充電電池,系統采用外部供電時,二極管導通,外部電源一方面向芯片供電,另一方面對充電電池進行充電。當系統電源停止供電時,二極管截至,芯片由電池來供電。