- 熱門關鍵詞:
- 武漢LED顯示屏
- 武漢LED電子屏
- 武漢LED廣告屏
- LED顯示屏安裝
- LED顯示屏批發(fā)
佳恒武漢LED顯示屏該文就LED顯示屏的圖片顯示實驗進行了探討。分析了佳恒武漢LED顯示屏的顯示原理,以及各個驅(qū)動信號之間的時序關系。在顯示圖片時,先利用字模提取軟件提取圖片的顯示數(shù)據(jù),再根據(jù)逐行掃描的動態(tài)顯示原理,將顯示數(shù)據(jù)按照一定的先后順序送到LED顯示屏顯示。通過實驗可使學生掌握LED顯示屏的工作原理,提高驅(qū)動程序設計能力。同時將理 論知識的學習和實踐環(huán)節(jié)有機結(jié)合,取得了良好的教學效果。
LED是發(fā)光二很管( light emitting diode) 的英文縮寫。多個發(fā)光二很管按照行列排布,可以形成大 尺寸的顯示屏幕,由于其亮度較高,因此廣泛用于戶外顯示,用來顯示文字、圖形、動畫和視頻等各 種信息。
為了便于學生掌握LED顯示屏的驅(qū)動電路設計方法、顯示原理和顯示驅(qū)動程序的設計方法,我們研制了LED顯示實驗箱。該實驗箱以LPC1768 微控制器為主控芯片,設計了64( 列) × 48( 行) 的LED顯示屏。行驅(qū)動電路在設計時一般可以采用兩種方法完成設計,一種是利用多個譯碼器完成每一行的選中,比如48行就可以利用3個四線16線譯碼器完成設計,但是這個方法所用芯片數(shù)量較多,成本較多,程序編寫也相對比較麻煩。因此我 們采用了第二種設計方法: 利用多個移位寄存器的級聯(lián)構成行驅(qū)動電路和列驅(qū)動電路。具體的行驅(qū)動和列驅(qū)動電路如圖1和圖2所示。
1、LED顯示屏時序分析
LED顯示屏采用動態(tài)掃描方法完成顯示。顯示數(shù)據(jù)由微控制器提供,通過數(shù)據(jù)線送去列驅(qū)動電路,顯示數(shù)據(jù)在時鐘的作用下依次移位,當完成一行的信息顯示時,將該行數(shù)據(jù)鎖存,同時進行顯示,這樣可以避免顯示中的“鬼影列”現(xiàn)象。 在顯示當前行的時候,開始進行下一行數(shù)據(jù)的準 備,這樣可以提高顯示的效率。下一行數(shù)據(jù)準備好后,行驅(qū)動電路選中新的一行進行顯示。這樣逐行完成整屏顯示數(shù)據(jù)的顯示。一屏的顯示時間只要小于20ms,或者說掃描頻率只要大于50Hz,則利 用人眼的視覺暫留,就會感覺整屏顯示內(nèi)容是同時顯示,沒有閃爍的效應。LED 顯示屏中幾個主要的控制信號為列移位時鐘( CP) 、行信號( H) 和場信號( V) ,它們之間的時序關系如圖3所示。
在設計LED顯示實驗箱時,為了保證今后實驗平臺的升級換代,我們使用了NXP 公司生產(chǎn)的主要面向嵌入式系統(tǒng)的微控制器LPC1768。該芯片是LPC1700系列芯片中資源較豐富的一款,內(nèi)部 集成了512KB的閃存和64 KB的數(shù)據(jù)存儲器,并且具備定時器、串口、網(wǎng)絡通信、USB接口和CAN總線接口等多種外設; 且I/O口的切換頻率 可達50MHz,完全滿足設計需求[4]; 512 KB的程序空間也可以存放大量的顯示圖片,而不需要外擴 存儲器。
2、圖片顯示數(shù)據(jù)的獲取
在進行字符和圖片顯示時,要把這些字符和圖片進行分解,分解成一個個的點陣。這需要通過字模軟件來完成。利用字模軟件來生成字模,顯示時要用微控制器做一個送數(shù)順序的顛倒。由于取模軟 件采用的是正常的顯示方式獲取顯示數(shù)據(jù),而LED顯示屏的列驅(qū)動信號采用移位寄存器來完成, 因此較先送出的數(shù)據(jù)會出現(xiàn)在屏幕的較右方,較后送出的數(shù)據(jù)出現(xiàn)在屏幕的較左方,在送數(shù)時需要做 一個順序的變換。一般的LED顯示屏基本采用 水平方式掃描,因此取模方式一般是橫向取模。
如圖4所示,該圖片大小為64(列) × 48(行) 。 如果只是橫向取模,字節(jié)正序,則取模時8個點為 一個字節(jié)。1) 在這8點數(shù)據(jù)中較左邊的一點作為該字節(jié)的高位,較右邊的一點作為該字節(jié)的低位。該圖片生成的顯示數(shù)據(jù)為: 0xAA,0x00,0x00,如果利用上述數(shù)據(jù)格式來顯示時,必須要求送每一行的數(shù)據(jù)時要進行顛倒,先送0x11,較后送0xAA,并且每一個字節(jié)的送數(shù)程序中,必須是低 位在前先送出。
2) 以較左邊的一點作為字節(jié)低位,較右邊的 一點作為字節(jié)高位,取模數(shù)據(jù)為: 0x55,0x00, 0x00,0x00,0x00,0x00,0x00,0x88。
如果利用上述數(shù)據(jù)格式來顯示,只需要在送每 一行的數(shù)據(jù)時進行顛倒,先送0x88,較后送0x55, 而每一個字節(jié)的送數(shù)程序,必須是高位在前先送出。
3、顯示驅(qū)動程序設計
在LED顯示屏顯示時,由于采用了移位寄存 器,如果直接采用橫向取模的話,每行生成的顯示數(shù)據(jù)為8 個字節(jié)( 由LED顯示屏的實際大小決定) ,該行較左面為個字節(jié),較右面的為第八 個字節(jié)。因此在送顯示數(shù)據(jù)時,較右面顯示的數(shù)據(jù) 應該較先送,較左面顯示的數(shù)據(jù)應該較后送。
編程時,在每一行送數(shù)據(jù)時要顛倒一下順序, 先送第八字節(jié),再送第七個字節(jié),較后送個字節(jié)。同時對于單個字節(jié)顯示時,如果沒有設置參數(shù)為“字節(jié)倒序”,則在送每個字節(jié)數(shù)據(jù)時,也要先 送數(shù)據(jù)字節(jié)的較低位,較后送較高位。如果設置參 數(shù)為“字節(jié)倒序”,則送數(shù)時就可以先送數(shù)據(jù)字節(jié) 的較高位,較后送較低位。
我們利用取模軟件獲取圖片的顯示數(shù)據(jù)后,生成一個一維的數(shù)組,將該數(shù)組復制到源程序中,并以static的關鍵字定義,這樣編譯器就會把顯示數(shù)據(jù)放到Flash存儲器。
具體步驟如下:
1) 初始化GPIO引腳的方向和初始電平;
2) 取顯示數(shù)據(jù)行進行顯示,送每一位數(shù)據(jù)時同步送出移位時鐘;
3) 送出一行數(shù)據(jù)后,送出行選通信號,點亮該行的LED進行顯示,并保持1ms左右的時間;
4) 在進行該行顯示的同時,開始送下一行數(shù)據(jù)到列移位寄存器的數(shù)據(jù)緩沖區(qū)( 6B595是雙緩沖結(jié)構的移位寄存器,在顯示的同時可以送入新的顯示數(shù)據(jù)) ;
5) 持續(xù)該過程,直到48行數(shù)據(jù)全部送出;
6) 送出48行顯示數(shù)據(jù)后,表明顯示完一次圖片的顯示數(shù)據(jù),即完成了一場的顯示,送出場信號。
實際設置中,顯示程序往往會設置為一個子函數(shù),該函數(shù)只完成一次顯示數(shù)據(jù)的顯示,由主程序通過定時中斷來調(diào)用,定時時間間隔為20ms,確保LED顯示屏的掃描頻率為50Hz。程序流程圖如圖5所示。
實際的圖片顯示效果如圖6所示。
4、結(jié)束語
LED顯示屏的圖片顯示實驗包含了LED顯示屏顯示原理,LED顯示屏驅(qū)動電路的設計、LED顯示時序的分析、驅(qū)動程序的編寫以及字模軟件的使用等知識點。實驗項目具有一定的創(chuàng)新性和綜合性,可以使學生更好地理解LED顯示屏的工作原理和驅(qū)動程序的編寫。