1 主要元件
1>at89c51
2>matrix-8x8-red
3>4-16解碼器 74159
2.匯程式設計序
org 0000h
ljmp main
org 0030h
main: mov r2,#30
mov dptr,#wo
lcall disp
mov dptr,#ai
lcall disp
mov dptr,#xiao
lcall disp
mov dptr,#hong
lcall disp
ljmp main
disp:
mov r0,#0 ;段碼控制變數
mov r1,#0 ;列碼控制變數
disp1: mov p1,r1 ;p1埠選擇輸出的列
mov a,r0
movc a,@a+dptr ;查表求得上8位的編碼
mov p2,a ;將查表得的編碼從p0輸出
; lcall delay;
disp2: inc r0 ;段碼增1,表示要查下個輸出的編碼
mov a,r0
movc a,@a+dptr ;查得下半段的編碼
mov p3,a ;將查表得的下半段的編碼從p2輸出
lcall delay
inc r0 ;段碼增1,指向下乙個段碼
inc r1 ;列增1,指向下乙個列
mov a,r1 ;看乙個字是否全部顯示完
subb a,#16 ;乙個字有2x16=32個 位元組
jz disp3 ;如果已顯示了32個位元組,則把1~16列重新顯示
ljmp disp1
disp3: djnz r2,disp
mov r2,#30
retdelay: ;延時小段時間
; mov r0,#02h
mov r3,#02h
d1: mov r4,#80h
d2: djnz r4,d2
djnz r3,d1
ret
wo:
db 20h,04h,20h,04h,22h,42h,22h,82h,0feh,7fh,21h,01h,21h,01h,20h,10h
db 20h,10h,ffh,08h,20h,07h,22h,1ah,ach,21h,20h,40h,20h,f0h,00h,00h
ai:db 00h,40h,40h,20h,b2h,a0h,96h,90h,9ah,4ch,92h,47h,f6h,2ah,9ah,2ah
db 93h,12h,91h,1ah,99h,26h,97h,22h,91h,40h,90h,c0h,30h,40h,00h,00h
xiao:
db 00h,04h,00h,02h,00h,01h,c0h,00h,70h,00h,20h,40h,00h,80h,ffh,7fh
db 00h,00h,10h,00h,20h,00h,c0h,00h,80h,01h,00h,07h,00h,02h,00h,00h
hong:
db 20h,22h,30h,66h,2ch,23h,a3h,12h,60h,12h,18h,52h,00h,40h,08h,40h
db 08h,40h,08h,40h,f8h,7fh,08h,40h,08h,40h,0ch,60h,08h,40h,00h,00h
3.佈線圖
點陣漢字顯示
由於turbo c應用於dos作業系統下,在使用turbo c進行程式設計時,一般情況下只好使用英文進行人機互動。要是想直接用中文介面,就需要另想他法了。如果使用中文dos系統 如ucdos 則可以解決在字元介面下的漢字顯示問題。也就是說,可以用printf或其他字串函式來輸出漢字。但是,這樣仍然有...
陣漢字顯示
見http dev.gameres.com program control fontdos.htm 文件內容 你是否碰到過用啟動盤啟動系統後用dir命令得到一串串莫名其妙的字元?有經驗的朋友會告訴你 那是漢字。漢字?你不禁會問 怎麼乙個我乙個也不認識。但那確確實實是漢字,如果你啟動ucdos或其他的...
點陣漢字顯示
陣漢字顯示 目錄 dos下的點陣漢字 漢字的內碼 漢字字模 漢字型檔檔案 列印字型檔檔案和hzk12 文件內容 dos下的點陣漢字 你是否碰到過用啟動盤啟動系統後用dir命令得到一串串莫名其妙的字元?有經驗的朋友會告訴你 那是漢字。漢字?你不禁會問 怎麼乙個我乙個也不認識。但那確確實實是漢字,如果你...