魏立明 閆 偉 金雅慶 郭思成
(1:吉林建筑大學 電氣與計算機學院,長春 130118; 2:吉林建筑大學 藝術設計學院,長春 130118;3:北京師范大學附屬實驗中學,北京 100032)
現(xiàn)代生活日新月異,伴隨著科學技術的不斷發(fā)展,單片機以其集成度高、體積小、低電壓、低功耗、易擴展等優(yōu)點被廣泛應用于各個電子產(chǎn)品當中[1].單片機控制的LED點陣顯示屏幕一直以來在平板顯示領域扮演著極其重要的角色,并且在未來的發(fā)展中,還有相當大的發(fā)展空間.LED廣告牌被廣泛地應用于在交通、醫(yī)院、商店、市場、廣告、信息傳播等生活的各個方面,目前國際上來說它算是非常先進的電子顯示媒體.當今社會信息化發(fā)展地十分迅猛,單片機控制的廣告牌的硬件電路設計方案日新月異,各具功能和特色.
在該設計里,我們是以單片機作為主控制模塊,控制LED點陣來實現(xiàn)文字的顯示效果.實際電路中需要用到單片機的輸出口來分別控制點陣,同時在單片機的外部加以時鐘、按鍵、復位電路來對單片機進行控制,以保證實現(xiàn)不同的功能[2].按照此設計思路進行了對總體方案的設計.總體方案圖見圖1.
圖1 總體方案圖Fig.1 The figure of overall plan
本方案是利用單片機的P0口來進行對列控制芯片的片選,因為列控制需要至少64位的輸出端口,所以列芯片需用到不止一片,必須考慮如何片選的問題.利用一個P口來控制列控制芯片74LS373,一個P口來控制行控制芯片74HC154,再由行列控制芯片來控制點陣,從而實現(xiàn)單片機對LED顯示屏的間接控制.
該設計系統(tǒng)中大致有五部分電路,分別為:時鐘電路、按鍵電路、復位電路、行驅動電路、列控制電路[3].
時鐘電路.用于產(chǎn)生AT89C52單片機所必需的工作時的控制信號.AT89C52內部的高增益的反相放大器來構成振蕩器.XTAL1作為輸入端引腳,XTAL2作為輸出端引腳,把微調電容和石英晶體跨接在這兩個引腳中間,使之構成一個穩(wěn)定的自激振蕩器[4].電路中的電容C1和C2的典型值通常選擇為30pF.電路中電容值的大小會直接影響振蕩器頻率的高低以及起振的快速性.振蕩頻率為6MHz或12MHz的石英晶體常作為單片機的晶振,該設計中采用的是12MHz的晶振.
手動按鍵控制電路.當廣告間需要進行切換時,可以手動按鍵,此時LED顯示屏幕上可以自動切換到下一條廣告語,并實現(xiàn)移動的顯示效果,實現(xiàn)廣告之間切換的功能.其中,單片機的P1.0,P1.1,P1.2來控制按鍵功能的實現(xiàn),這3個按鍵都由人來進行控制.
圖2 時鐘,按鍵,復位電路Fig.2 The clock circuit,the key circuit,the reset circuit
復位電路.是保證電路穩(wěn)定工作的必要條件,上電復位是復位電路的主要功能.在電源通電時,只有當VCC高于4.75V且低于5.25V,同時晶體振蕩器穩(wěn)定工作時,復位信號將失去作用,電路開始正常工作[5].
當按鍵被按下時,RST則與VCC直接相連,此時為高電平,進行復位,與此同時電容也被短路而開始放電;按鍵被松開時,VCC則對電容進行充電,充電電流流經(jīng)電阻R1,而RST依然為高電平,所以仍然是復位.當充電完成后,這時電容則相當于開路,此時RST為低電平,電路開始正常工作.
行控制電路.用單片機的P3.2,P3.3,P3.4和P3.5的4個I/O口連接74HC154的4個輸入端,在譯碼器的輸出端可輸出16個電平信號.根據(jù)譯碼器的特點,在任何時候譯碼器端的16個輸出端口都只有一個低電平信號,信號經(jīng)過限流電阻接到PNP晶體管的基極,集電極接高電平,射極則接至發(fā)光二極管的陽極.
列控制電路.由于該設計是64列,所以需要64個輸出口.AT89C52單片機的I/O口遠不能實現(xiàn)同時對全部列的控制,所以用74LS373鎖存器來進行對列的控制.用整個P2口作為總線傳輸數(shù)據(jù),再用整個P0口對鎖存器進行片選,這樣一次就可以傳輸8位信號,可以實現(xiàn)8列的選通.而且鎖存器具有鎖存功能,每傳輸一次,鎖存一次,LED就能有足夠的時間點亮,使顯示效果更加明顯.實際要用到8個鎖存器,下面以2個鎖存器為例.其時鐘、按鍵、復位電路圖見圖2所示,行控制電路和列控制電路圖見圖3所示.
圖3 行控制電路和列控制電路Fig.3 The column control circuit and the Line control circuit
流程圖是程序設計的大綱,程序的設計要圍繞流程圖來進行.主程序流程圖是軟件設計的主體部分,可以從主程序中調用各個子程序來實現(xiàn)相應的功能.主程序中包括程序初始化、廣告語判斷、“送字”子程序、“移字”子程序及掃描子程序.主程序流程圖見圖4所示.
圖4 主程序流程圖Fig.4 The main program flow chart
“送字”顧名思義,就是將4個字的字碼送入RAM的空間中,因為要在RAM中“移字”,所以“送字”是必須的.廣告語是由右向左滾動顯示,第一個顯示的必須是第一個字,而且第一個字必須先出現(xiàn)在最右邊的16×16點陣中.
“移字”,就是在RAM空間中,將對應的字碼放入累加器中左移.
執(zhí)行完“送字”、“移字”,字碼現(xiàn)在還僅僅是在RAM中,在LED點陣上是沒有文字的,要顯示文字,還需要不可缺少的掃描程序.
系統(tǒng)的仿真使用的是Proteus 7.8軟件,它是比較好的仿真單片機及外圍器件的工具.將單片機外圍硬件電路連接好,然后將編寫好的程序導入到單片機中,點擊仿真按鈕即可完成系統(tǒng)的仿真.靜態(tài)時的仿真效果見圖5所示.
圖5 靜態(tài)仿真圖Fig.5 The static simulation diagram
本設計包括了整個硬件設計電路的所有子電路,這些子電路結合在一起組成的整體硬件電路能夠滿足廣告牌設計的基本要求.隨著我國經(jīng)濟的迅猛發(fā)展,科技水平的不斷提高,LED電子顯示屏以及各種廣告牌也將在未來的社會經(jīng)濟發(fā)展中扮演越來越來重要的角色.