孫利佳,漆 強(qiáng)
(電子科技大學(xué) 電子工程學(xué)院,成都 610054)
?
LED顯示屏的圖片顯示實(shí)驗(yàn)設(shè)計(jì)
孫利佳,漆強(qiáng)
(電子科技大學(xué)電子工程學(xué)院,成都610054)
摘要該文就LED顯示屏的圖片顯示實(shí)驗(yàn)進(jìn)行了探討。分析了LED顯示屏的顯示原理,以及各個(gè)驅(qū)動(dòng)信號(hào)之間的時(shí)序關(guān)系。在顯示圖片時(shí),先利用字模提取軟件提取圖片的顯示數(shù)據(jù),再根據(jù)逐行掃描的動(dòng)態(tài)顯示原理,將顯示數(shù)據(jù)按照一定的先后順序送到LED顯示屏顯示。通過(guò)實(shí)驗(yàn)可使學(xué)生掌握LED顯示屏的工作原理,提高驅(qū)動(dòng)程序設(shè)計(jì)能力。同時(shí)將理論知識(shí)的學(xué)習(xí)和實(shí)踐環(huán)節(jié)有機(jī)結(jié)合,取得了良好的教學(xué)效果。
關(guān)鍵詞LED顯示屏;圖片顯示;單片機(jī);驅(qū)動(dòng)程序
LED是發(fā)光二極管(light emitting diode)的英文縮寫(xiě)。多個(gè)發(fā)光二極管按照行列排布,可以形成大尺寸的顯示屏幕,由于其亮度較高,因此廣泛用于戶(hù)外顯示,用來(lái)顯示文字、圖形、動(dòng)畫(huà)和視頻等各種信息[1]。
為了便于學(xué)生掌握LED顯示屏的驅(qū)動(dòng)電路設(shè)計(jì)方法、顯示原理和顯示驅(qū)動(dòng)程序的設(shè)計(jì)方法,我們研制了LED顯示實(shí)驗(yàn)箱。該實(shí)驗(yàn)箱以L(fǎng)PC1768微控制器為主控芯片,設(shè)計(jì)了64(列)×48(行)的LED顯示屏。行驅(qū)動(dòng)電路在設(shè)計(jì)時(shí)一般可以采用兩種方法完成設(shè)計(jì),一種是利用多個(gè)譯碼器完成每一行的選中,比如48行就可以利用3個(gè)四線(xiàn)16線(xiàn)譯碼器完成設(shè)計(jì),但是這個(gè)方法所用芯片數(shù)量較多,成本較多,程序編寫(xiě)也相對(duì)比較麻煩。因此我們采用了第二種設(shè)計(jì)方法:利用多個(gè)移位寄存器的級(jí)聯(lián)構(gòu)成行驅(qū)動(dòng)電路和列驅(qū)動(dòng)電路。具體的行驅(qū)動(dòng)和列驅(qū)動(dòng)電路如圖1和圖2所示。
圖1 列驅(qū)動(dòng)電路原理圖
1LED顯示屏?xí)r序分析
LED顯示屏采用動(dòng)態(tài)掃描方法完成顯示。顯示數(shù)據(jù)由微控制器提供,通過(guò)數(shù)據(jù)線(xiàn)送去列驅(qū)動(dòng)電路,顯示數(shù)據(jù)在時(shí)鐘的作用下依次移位,當(dāng)完成一行的信息顯示時(shí),將該行數(shù)據(jù)鎖存,同時(shí)進(jìn)行顯示,這樣可以避免顯示中的“鬼影列”現(xiàn)象。在顯示當(dāng)前行的時(shí)候,開(kāi)始進(jìn)行下一行數(shù)據(jù)的準(zhǔn)備,這樣可以提高顯示的效率。下一行數(shù)據(jù)準(zhǔn)備好后,行驅(qū)動(dòng)電路選中新的一行進(jìn)行顯示。這樣逐行完成整屏顯示數(shù)據(jù)的顯示。一屏的顯示時(shí)間只要小于20 ms,或者說(shuō)掃描頻率只要大于50 Hz,則利用人眼的視覺(jué)暫留,就會(huì)感覺(jué)整屏顯示內(nèi)容是同時(shí)顯示,沒(méi)有閃爍的效應(yīng)。LED顯示屏中幾個(gè)主要的控制信號(hào)為列移位時(shí)鐘(CP)、行信號(hào)(H)和場(chǎng)信號(hào)(V),它們之間的時(shí)序關(guān)系如圖3所示。
圖2 行信號(hào)驅(qū)動(dòng)電路圖
圖3 LED顯示屏的時(shí)序關(guān)系圖
在設(shè)計(jì)LED顯示實(shí)驗(yàn)箱時(shí),為了保證今后實(shí)驗(yàn)平臺(tái)的升級(jí)換代,我們使用了NXP公司生產(chǎn)的主要面向嵌入式系統(tǒng)的微控制器LPC1768。該芯片是LPC1700系列芯片中資源最豐富的一款,內(nèi)部集成了512 KB的閃存和64 KB的數(shù)據(jù)存儲(chǔ)器,并且具備定時(shí)器、串口、網(wǎng)絡(luò)通信、USB接口和CAN總線(xiàn)接口等多種外設(shè);且I/O口的切換頻率可達(dá)50 MHz,完全滿(mǎn)足設(shè)計(jì)需求;512 KB的程序空間也可以存放大量的顯示圖片,而不需要外擴(kuò)存儲(chǔ)器。
2圖片顯示數(shù)據(jù)的獲取
在進(jìn)行字符和圖片顯示時(shí),要把這些字符和圖片進(jìn)行分解,分解成一個(gè)個(gè)的點(diǎn)陣。這需要通過(guò)字模軟件來(lái)完成。利用字模軟件來(lái)生成字模,顯示時(shí)要用微控制器做一個(gè)送數(shù)順序的顛倒。由于取模軟件采用的是正常的顯示方式獲取顯示數(shù)據(jù),而LED顯示屏的列驅(qū)動(dòng)信號(hào)采用移位寄存器來(lái)完成,因此最先送出的數(shù)據(jù)會(huì)出現(xiàn)在屏幕的最右方,最后送出的數(shù)據(jù)出現(xiàn)在屏幕的最左方,在送數(shù)時(shí)需要做一個(gè)順序的變換。一般的LED顯示屏基本采用水平方式掃描,因此取模方式一般是橫向取模。
如圖4所示,該圖片大小為64(列)×48(行)。如果只是橫向取模,字節(jié)正序,則取模時(shí)8個(gè)點(diǎn)為一個(gè)字節(jié)。1)在這8點(diǎn)數(shù)據(jù)中最左邊的一點(diǎn)作為該字節(jié)的高位,最右邊的一點(diǎn)作為該字節(jié)的低位。該圖片生成的顯示數(shù)據(jù)為:0xAA,0x00,0x00,0x00,0x00,0x00,0x00,0x11。
圖4 顯示數(shù)據(jù)取模示意圖
如果利用上述數(shù)據(jù)格式來(lái)顯示時(shí),必須要求送每一行的數(shù)據(jù)時(shí)要進(jìn)行顛倒,先送0x11,最后送0xAA,并且每一個(gè)字節(jié)的送數(shù)程序中,必須是低位在前先送出。
2)以最左邊的一點(diǎn)作為字節(jié)低位,最右邊的一點(diǎn)作為字節(jié)高位,取模數(shù)據(jù)為:0x55,0x00,0x00,0x00,0x00,0x00,0x00,0x88。
如果利用上述數(shù)據(jù)格式來(lái)顯示,只需要在送每一行的數(shù)據(jù)時(shí)進(jìn)行顛倒,先送0x88,最后送0x55,而每一個(gè)字節(jié)的送數(shù)程序,必須是高位在前先送出。
3顯示驅(qū)動(dòng)程序設(shè)計(jì)
在LED顯示屏顯示時(shí),由于采用了移位寄存器,如果直接采用橫向取模的話(huà),每行生成的顯示數(shù)據(jù)為8個(gè)字節(jié)(由LED顯示屏的實(shí)際大小決定),該行最左面為第一個(gè)字節(jié),最右面的為第八個(gè)字節(jié)。因此在送顯示數(shù)據(jù)時(shí),最右面顯示的數(shù)據(jù)應(yīng)該最先送,最左面顯示的數(shù)據(jù)應(yīng)該最后送。
編程時(shí),在每一行送數(shù)據(jù)時(shí)要顛倒一下順序,先送第八字節(jié),再送第七個(gè)字節(jié),最后送第一個(gè)字節(jié)。同時(shí)對(duì)于單個(gè)字節(jié)顯示時(shí),如果沒(méi)有設(shè)置參數(shù)為“字節(jié)倒序”,則在送每個(gè)字節(jié)數(shù)據(jù)時(shí),也要先送數(shù)據(jù)字節(jié)的最低位,最后送最高位。如果設(shè)置參數(shù)為“字節(jié)倒序”,則送數(shù)時(shí)就可以先送數(shù)據(jù)字節(jié)的最高位,最后送最低位。
我們利用取模軟件獲取圖片的顯示數(shù)據(jù)后,生成一個(gè)一維的數(shù)組,將該數(shù)組復(fù)制到源程序中,并以static的關(guān)鍵字定義,這樣編譯器就會(huì)把顯示數(shù)據(jù)放到Flash存儲(chǔ)器。
具體步驟如下:
1)初始化GPIO引腳的方向和初始電平;
2)取顯示數(shù)據(jù)第一行進(jìn)行顯示,送每一位數(shù)據(jù)時(shí)同步送出移位時(shí)鐘;
3)送出一行數(shù)據(jù)后,送出行選通信號(hào),點(diǎn)亮該行的LED進(jìn)行顯示,并保持1ms左右的時(shí)間;
4)在進(jìn)行該行顯示的同時(shí),開(kāi)始送下一行數(shù)據(jù)到列移位寄存器的數(shù)據(jù)緩沖區(qū)(6B595是雙緩沖結(jié)構(gòu)的移位寄存器,在顯示的同時(shí)可以送入新的顯示數(shù)據(jù));
5)持續(xù)該過(guò)程,直到48行數(shù)據(jù)全部送出;
6)送出48行顯示數(shù)據(jù)后,表明顯示完一次圖片的顯示數(shù)據(jù),即完成了一場(chǎng)的顯示,送出場(chǎng)信號(hào)。
實(shí)際設(shè)置中,顯示程序往往會(huì)設(shè)置為一個(gè)子函數(shù),該函數(shù)只完成一次顯示數(shù)據(jù)的顯示,由主程序通過(guò)定時(shí)中斷來(lái)調(diào)用,定時(shí)時(shí)間間隔為20 ms,確保LED顯示屏的掃描頻率為50 Hz[8]。程序流程圖如圖5所示。
圖5 顯示程序流程圖
實(shí)際的圖片顯示效果如圖6所示。
圖6 LED顯示屏顯示圖片
4結(jié)束語(yǔ)
LED顯示屏的圖片顯示實(shí)驗(yàn)包含了LED顯示屏顯示原理,LED顯示屏驅(qū)動(dòng)電路的設(shè)計(jì)、LED
顯示時(shí)序的分析、驅(qū)動(dòng)程序的編寫(xiě)以及字模軟件的使用等知識(shí)點(diǎn)。實(shí)驗(yàn)項(xiàng)目具有一定的創(chuàng)新性和綜合性,可以使學(xué)生更好地理解LED顯示屏的工作原理和驅(qū)動(dòng)程序的編寫(xiě)[9]。
參 考 文 獻(xiàn)
[1]李維諟,郭強(qiáng).液晶顯示應(yīng)用技術(shù)[M].北京:電子工業(yè)出版社,2000.
[2]吳援明,蔣泉,陳文彬,等.顯示器件驅(qū)動(dòng)技術(shù)[M].成都:電子科技大學(xué)出版社,2008.
[3]靳桅,鄔芝權(quán),李琪,等.基于51系列單片機(jī)的LED顯示屏開(kāi)發(fā)技術(shù)[M].北京:北京航空航天大學(xué)出版社,2009.
[4]漆強(qiáng),歐中華,劉子驥,等.嵌入式系統(tǒng)設(shè)計(jì)工程實(shí)踐——基于Cortex-M3內(nèi)核處理器LPC17XX[M].北京: 國(guó)防工業(yè)出版社,2015.
[5]趙俊.ARM嵌入式應(yīng)用程序架構(gòu)設(shè)計(jì)實(shí)例精講——基于LPC1700[M].北京: 北京航空航天大學(xué)出版社,2013.
[6]孫安青.ARM Cortex-M3嵌入式開(kāi)發(fā)實(shí)例詳解——基于NXP LPC1768[M].北京: 北京航空航天大學(xué)出版社,2012.
[7]樓建明,傅越千,安鵬,等.基于能力培養(yǎng)自制實(shí)驗(yàn)儀器設(shè)備[J].實(shí)驗(yàn)技術(shù)與管理,2014,31(9):81-86.
[8]應(yīng)安明,王桂玲,劉桂濤.自制實(shí)驗(yàn)儀器設(shè)備在教學(xué)中的使用[J].實(shí)驗(yàn)室研究與探索,2003,22(1):20-21.
[9]韓宇光.ISP系統(tǒng)創(chuàng)新實(shí)驗(yàn)平臺(tái)研制[J].實(shí)驗(yàn)技術(shù)與管理,2014,31(10):120-122.
收稿日期:2015-05-14;修改日期: 2015-07-07
基金項(xiàng)目:電子科技大學(xué)2015年本科教育教學(xué)改革研究項(xiàng)目(2015XJYYB028)。
作者簡(jiǎn)介:孫利佳(1977-),女,碩士,工程師,主要從事電路與系統(tǒng)教學(xué)工作。
中圖分類(lèi)號(hào)TP368;G642
文獻(xiàn)標(biāo)志碼A
doi:10.3969/j.issn.1672-4550.2016.03.016
Design of Picture Display Experiment for LED Display Screen
SUN Lijia,QI Qiang
(School of Electronic Engineering,University of Electronic Science and Technology of China,Chengdu 610054,China)
AbstractPicture display experiment of light emitting diode(LED) display screen is introduced in this paper.The paper analyzes the display principle of LED display screen,as well as the timing relationships between each drive signal.With a display image,word-model extraction software is utilized to extract image display date firstly,then according to the principle of dynamic display,we send the image data to LED display screen according to certain order.The students can master the operating principle of LED display screen and improve the ability to design the driving program through the experiment.This experiment integrates theory with practice and has achieved good teaching effect.
Key wordsLED display screen;picture display;microcontroller;driving program