發(fā)燒友DIY:點陣LED顯示屏的原理與制作流程圖
該部分電路主要由AT89S52和74LS154組成。單片機(jī)的P0和P2號控制顯示信號的輸出,P1號的低4位控制74LS154的譯碼輸入,從而控制掃描信號的輸出。2、電源電路
整個電路的供電由USB電源提供,利用我們的電腦主機(jī)USB接口可以輸出+5V電壓,方便我們在實驗室調(diào)試
3、控制信號放大電路
為提供負(fù)載能力,在P0和P2口接16個常用9013的NPN三極管放大驅(qū)動信號。電路中列方向由p0口和p2口完成掃描,由于p0口沒有上拉電阻,因此接一個1k*8的排阻上拉。行方向則由4—16譯碼器74LS154完成掃描,它由89C51的P1.0---P1.3控制。同樣,驅(qū)動部分則是16個9015的三極管完成的。
(圖6)
三、 程序與軟件
在UCDOS中文宋體字庫中,每一個字由16行16列的點陣組成顯示,即國標(biāo)漢字庫中的每一個字均由256點陣來表示。我們可以把每一個點理解為一個像素,而把每一個字的字形理解為一幅圖像。事實上這個漢字屏不僅可以顯示漢字, 也可以顯示在256像素范圍內(nèi)的任何圖形。用8位的AT89S52單片機(jī)控制, 由于單片機(jī)的總線為8位,一個字需要拆分為2個部分如圖9所示。本電路把它拆分為左部和右部,左部由16(行)*8(列)點陣組成, 下部也由16(行)*8(列)點陣組成。
圖(7)
為了讓大家更清楚的理解點陣的掃描過程,在這我們以顯示漢字“我”為例,來說明其掃描原理:單片機(jī)首先由P2口輸出顯示數(shù)據(jù)信號給右部分的第一行如圖9所示,即第一行的P20---P27口。方向為P20到P27 ,顯示漢字“我”時,P21點亮,由左到右排,為P20滅,P21亮, P22滅,P23滅, P24滅, P25滅, P26滅, P27滅。即二進(jìn)制00000010,轉(zhuǎn)換為16進(jìn)制為 0x02。右部分的第一行完成后,繼續(xù)掃描左半部的第一行,為了接線的方便,我們?nèi)栽O(shè)計成由左往右掃描,即從P00向P07方向掃描,從上圖可以看到,這一行只有P05、P06亮,其它滅, 即為00000110,16進(jìn)制則為0x60。然后單片機(jī)再次轉(zhuǎn)向右半部第二行,仍為P21、P23點亮,為01010000,即16進(jìn)制0x0A。這一行完成后繼續(xù)進(jìn)行左半部分的第二行掃描,P02、P03、P04點亮,為二進(jìn)制00111000,即16進(jìn)制0x1C。依照這個方法,繼續(xù)進(jìn)行下面的掃描,一共掃描32個8位,可以得出漢字“我”的掃描代碼為:
0x02,0x60,0x0A,0x1C,0x12,0x10,0x12,0x10,
0x02,0x10,0x7F,0xFF,0x02,0x10,0x12,0x10,
0x14,0x70,0x0C,0x1C,0x04,0x13,0x0A,0x10,
0x49,0x90,0x50,0x10,0x60,0x14,0x40,0x08
由這個原理可以看出, 無論顯示何種字體或圖像, 都可以用這個方法來分析出它的掃描代碼從而顯示在屏幕上。不過現(xiàn)在有很多現(xiàn)成的漢字字模生成軟件, 我們就不必自己去畫表格算代碼了。在網(wǎng)上漢字字模生成軟件有很多種,本文告別推薦一種漢字字模生成軟件,HZDotReader V3.0,我個人認(rèn)為這個軟件的功能相當(dāng)完美。最主要的一個功能是可以選擇漢字編碼的取模方式,本例中的“我”字的取模方式為以橫向8個連續(xù)點構(gòu)成一個字節(jié),最左邊的點為字節(jié)的最低位,即BIT0,最右邊的點為BIT7。很少有字模軟件可以實現(xiàn)這一功能。
下面給出一個簡單的靜態(tài)顯示“我”字的程序清單:
#include《reg52.h》
#define CCED2 0x0000 /*我 */
unsigned char code word_zai[16][2] = {/*我 CCED2 */
0x02,0x60,0x0A,0x1C,0x12,0x10,0x12,0x10,
0x02,0x10,0x7F,0xFF,0x02,0x10,0x12,0x10,
0x14,0x70,0x0C,0x1C,0x04,0x13,0x0A,0x10,
led顯示器相關(guān)文章:led顯示器原理
評論