點陣式漢字LED顯示屏的制作
列方向則由4—16譯碼器74LS154完成掃描,它由89C51的P1.0---P1.3控制。同樣,驅動部分則是16個2N5401的三極管完成的。
電路的供電為一片LM7805三端穩壓器,耗電電流為100Ma左右。
??? 然后找一個電腦硬盤的數據線, 截取所需的長度,分別將行,列線引出至電路的相關管腳即可。原理圖為了簡潔,故只畫出了示意圖,行列方向只畫出了2個三極管,屏幕只畫出4個發光管, 實際上發光管為256只,三極管行列方向各16只,一共32只。焊接過程認真仔細一天時間即可完成全部制作。將程序編譯后燒寫入89c51, 插入40pin Ic座,即可看到屏幕輪流顯示:“電路圖”。
??? 當然,你可將程序的漢字代碼部分更換為您所需要的代碼即可顯示你所需要的漢字。
程序:
ORG? 00H
LOOP: MOV A,#0FFH ;開機初始化,清除畫面
MOV P0,A??? ;清除P0口
?????? ANL P2,#00?? ;清除P2口
MOV R2,#200?
D100MS: MOV R3,#250 ;延時100毫秒
?????? DJNZ R3,$
?????? DJNZ R2,D100MS
?????? MOV 20H,#00H ;取碼指針的初值
l100:??? MOV R1,#100 ;每個字的停留時間
L16:??? MOV R6,#16 ;每個字16個碼
?????? MOV R4,#00H ;掃描指針清零
?????? MOV R0,20H ;取碼指針存入R0
L3:??? MOV A,R4?? ;掃描指針存入A
?????? MOV P1,A?? ;掃描輸出
?????? INC R4????? ;掃描指針加1,掃描下一個
?????? MOV A,R0?? ; 取碼指針存入A
?????? MOV DPTR,#TABLE ;取數據表的上半部分的代碼
?????? MOVC A,@A+DPTR
?????? MOV P0,A?? ; 輸出到P0
?????? INC R0????? ;取碼指針加1,取下一個碼。
?????? MOV A,R0
?????? MOV DPTR,#TABLE ;取數據表下半部份的代碼
?????? MOVC A,@A+DPTR
?????? MOV P2,A????????? ;輸出到P2口
?????? INC R0
MOV R3,#02??????? ;掃描1毫秒
DELAY2:? MOV R5,#248??? ;
?????? DJNZ R5,$
?????? DJNZ R3,DELAY2
?????? MOV A,#00H???? ;清除屏幕
?????? MOV P0,A
?????? ANL P2,#00H???
?????? DJNZ R6,L3?????? ;一個字16個碼是否完成?
?????? DJNZ R1,L16????? ;每個字的停留時間是否到了?
?????? MOV 20H,R0????? ;取碼指針存入20H
?????? CJNE R0,#0FFH,L100 ;8個字256個碼是否完成?
?????? JMP LOOP ;反復循環
????
?TABLE :
;漢字“電”的代碼
DB 00H,00H,1FH,0E0H,12H,40H,12H,40H
DB 12H,40H,12H,40H,0FFH,0FCH,12H,42H
DB 12H,42H,12H,42H,12H,42H,3FH,0E2H
DB 10H,02H,00H,0EH,00H,00H,00H,00H
;漢字“路”的代碼
DB 00H,02H,7FH,7EH,42H,02H,43H,0FCH
DB 42H,44H,0FEH,44H,48H,80H,10H,0FFH
DB 31H,42H,0EAH,42H,24H,42H,2AH,42H
DB 31H,42H,21H,0FFH,01H,40H,00H,00H
;漢字“圖”的代碼
DB 00H,00H,7FH,0FFH,40H,22H,44H,22H
DB 48H,42H,78H,92H,55H,92H,52H,4AH
DB 55H,26H,58H,82H,50H,42H,40H,62H
DB 40H,42H,0FFH,0FFH,40H,00H,00H,00H
- LED顯示屏(97851)
- 漢字(18214)
相關推薦
評論
查看更多