You are on page 1of 84

NG DUNG IC LP TRINH AT89C51 LAM MACH

EN QUANG BAO DUNG LED MA TRN 8X8

1. T lam bang en Led chay ch trn ma trn 8x24 chi dung mt IC


AT89C51
Dung ic lp trinh AT89C51, Ban co th kim soat c trang thai tt sang cua cac day
Led trn cac bang en, t o co th tao ra c cac hinh anh hay cac dong con ch cho chay trn
cac bang en nay, cng vic nay hin rt c nhiu Ban a thich, trong bai vit nay, ti trinh
bay mt bai lam thc hanh kha n gian nhng rt cn c Ban hiu c nguyn ly lam vic
cua cac bang en quang bao. T cac hiu bit nay, Ban mi co th se m rng ra nhiu kiu bang
en phc tap hn. Mong Ban tm tim hiu.

Bai thc hanh nay se cho hin hinh va cac dong ch chay, nhp nhay, trn mt bang en
ma trn 8x8. Vi ic mt lp trinh co 4 cang p0, p1, p2, p3, chung ta se dung 3 b ma trn 8x8 va
nh vy se khng cn thm mt ic logic nao na. Mach rt n gian, nhng co c s ly thuyt
rt c ban, se giup Ban hiu rt ro v cac loai en quang bao ln khac.

Phn tich s mach in

Trc ht ban tao bang en dung 3 b 8x8. Cac hang, trn o la cac chn Anode cua cac
Led cho ni chung va dung mt transistor pnp dung bit 0 xut trn cac chn cua cang p1 cp
cho chn B cua transistor cho ni dy chung ny ln ng ngun 5V. Do mach dung ky thut
quet nn mi ln chi co mt hang cho ni vao ng ngun 5V.
Do cac chn cua Cathode cua Led cho ni chung trn mt ct, chung ta dung cac transistor
npn cho ct thng masse ly dong cp cho cac Led, vy chn Cathode thng masse,
chung ta se dung bit 1, cho xut trn cac chn cua cng p2, p0 va p3 cp cho chn B cua cac
transistor. Vi mt cng co 8 bit, vy mi b ma 8 bit cho xut ra trn cac cng p2, p0, p3, chung
ta co th iu khin mi nhip c 8 Led.

2. Tim hiu bang ma trn Led 8x8


Hinh ve cho thy cach gn cac Led trn ma trn tao bi 8 hang va 8 ct.

S dung giai thich nguyn ly tt m cac Led trn bang ma trn 8x8.

Cach 1: Ma quet xut trn p2, p3, p0, ma hinh hay ch xut trn cang p1.
S mach in trn, mt ln na, cho thy, chung ta cho ni 8 chn cua cac chn B cua
8 transistor 2SA1015 va cang p1. Vy khi co mt chn cua cang p1 xut ra bit 0, no se lam
transistor bao hoa, va luc nay dy anode chung se c cho ni vao ng ngun 5V. y,
Ban se vit oan chng trinh sao cho mi nhip chi co mt chn cua cng p1 xut ra bit 0.
Ban thy khi xut 8 bit ra trn cang p2, 8 bit mc 1 ng vi mc volt cao dung cp cho
chn B cua 8 transistor 2SC1815, luc nay cac transistor se bi lam cho bao hoa, no cho 8 ct trn
o co cac chn Cathode ni masse, vy 8 Led nay se phat sang, trong mach chung ta han dong
vi cac in tr 100 ohm.
Tom lai, mun in hinh hay cac con ch trn bang Led ma trn nay, Ban phai lam c 2 vic
sau:
Vic 1: Vit oan chng trinh cp ma quet.Tc quet u nhanh dung hin tng lu
anh cua mt ma gy ra "nhm ln" la trn bang en ang co rt nhiu Led ang c cp
dong phat sang.
-

Vit oan chng trinh xut ma quet bit 0 trn cac chn B cua cac transistor pnp trn
cac cang p1, cho ch tri xung.

Vit oan chng trinh xut ma quet bit 0 trn cac chn B cua cac transistor pnp trn
cac cang p1, cho ch tri ln.

Vit chng trinh ma quet, cp bit 1 cho cac chn B cua cac transistor npn trn cac cang
p2, p3, p0, tao hinh di ngang.

Vic 2: Vit cac day ma 8 bit cho xut ma hinh trn cac cang p2, p3, p0 hay trn p1
lam sang cac Led trn cac ct, cac ma 8 bit nay vit theo kiu hinh hay dang con ch ma
Ban mun no hin ra trn bang en. Cac day ma 8 bit nay chung ta se cho ct trong cac
bang, sau nay se dung cu lnh movc a, @a + dptr ly cac day ma ra cho xut trn cac
cang cua ic AT89C51. Sau y la oan chng trinh vit cho xut ma quet trn p2, p3, p0
va ma hinh xut trn cang p1.
h1b: ;t tn nhan dung cho lnh nhy
mov r0, #11111110b ; t tri khi u dung cho lnh quay vong
mov r1, #00h ; t tri khi u dung cho lnh ly ma hinh hay ch
ll1b: mov a, r0 ; chuyn tri trong r0 vao thanh a
rr a ; cho 8 bit trong a quay vong qua hng phai
mov r0, a ; chuyn tri trong thanh a ra r0
mov p1, r0 ; cho xut tri trong thanh a ra cang p1
mov a, r1 ; chuyn tri trong thanh r1 vao thanh a
movc a, @a + dptr ; truy ly ma hinh trong bang cho ct vao thanh a
mov p2, a ; cho xut ma hinh trn cang p2
inc r1 ; tng tri trong thanh r1 ln +1 ly ma hinh tip theo
mov a, r1 ; chuyn tri r1 vao thanh a
movc a, @a + dptr ; truy ly ma hinh trong bang cho ct vao thanh a
mov p3, a ; cho xut ma hinh trn cang p3
inc r1 ; tng tri trong thanh r1 ln +1 ly ma hinh tip theo
mov a, r1 ; chuyn tri r1 va thanh a
movc a, @a + dptr ; truy ly ma hinh trong bang cho ct vao thanh a
mov p0, a ; cho xut ma hinh trn cang p0
inc r1 ; lai tng tri trong r1 ln +1
call del1 ; goi chng trinh lam chm
mov p1, #11111111b ; tt 8 bit trn cang p1
mov p0, #00h ; tt 8 bit trn cang p0
mov p2, #00h ; tt 8 bit trn cang p2

mov p3, #00h ; tt 8 bit trn cang p3


call del1 ; goi chng trinh lam chm
cjne r0, #11111110b, ll1b ; so sanh ma quet chon hng nhy
ret ; quay lai sau lnh call
oan chng trinh nay vit ging nh oan trn, im khac bit la dung cu lnh rl a quay
vong theo hng trai i hng chay hinh trn bang ma trn 8x24. Ma quet t trn cang p1,
ma hinh ln lt cho ly ra xut trn cang p2, ri p3, ri p0.
h1c: ; t tn nhan dung cho lnh nhy
mov r0, #01111111b ; t tri khi u dung cho lnh quay vong
mov r1, #00h
ll1c: mov a, r0 ; chuyn tri trong r0 vao thanh a
rl a ; cho 8 bit trong thanh a quay vong theo hng trai
mov r0, a ; chuyn tri trong thanh a vao thanh r0
mov p1, r0 ; cho xut tri trong thanh r0 ra cang p1
; ly ma hinh xut trn cang p2
mov a, r1
movc a, @a + dptr
mov p2, a
; ly ma hinh xut trn cang p3
inc r1
mov a, r1
movc a, @a + dptr
mov p3, a
; ly ma hinh xut trn cang p0
inc r1
mov a, r1
movc a, @a + dptr
mov p0, a

; tranh hinh bi lem


inc r1
call del1
mov p1, #11111111b
mov p0, #00h
mov p2, #00h
mov p3, #00h
call del1
cjne r0, #01111111b, ll1c
ret ; quay lai sau lnh call
Mt minh hoa: Ma quet cho xut trn cac cang p2 ri p3 ri p0. Ma hinh xut trn cang p1.

Cho xut ma quet nhip nhanh trn cac cang p2, p3, p0 va cung luc cho xut ma hinh hay
ch trn cang p1. Sau y la oan chng trinh vit cho trng hp 2 dung hin cac hinh va
con ch trn bang ma trn 8x24.
Phn tich cu lnh:

; Cac cu lnh cho xut ma quet trn cang p2, ma hinh trn p1
h1: ; t tn nhan dung cho lnh nhy
mov r0, #00000001b ; t tri khi u cho thanh r0
mov r1, #00h ; tra thanh r1 v tri 0
ll1: mov a, r0 ; cho chuyn tri trong r0 va thanh a
rr a ; cho cac 8 bit trong thanh a, quay vong qua theo hng bn phai
mov r0, a ; chuyn tri co trong thanh a vao thanh r0
mov p2, r0 ; cho xut tri trong r0 ra cang p2
mov a, r1 ; by gi chuyn tri trong r1 vao thanh a
movc a, @a + dptr ; ly ma 8 bit trong bang theo tri trong a, ri cho ct vao thanh a
mov p1, a ; cho xut tri nay trn cang p1
inc r1 ; cho tng tri trong r1 ln +1 chun bi ly dong ma tip theo
call del1 ; goi chng trinh lam chm tao mc sang cho cac led
mov p2, #00h ; cho 8 chn cua cang p2 xung mc 0 tt cac Led.
mov p1, #0ffh ; Cho 8 chn cua cang p1 ln mc 1 cung tt Led
call del1 ; cho goi tring lam chm xoa cac Led tranh lem
cjne r0, #00000001b, ll1 ; so sanh tri trong r0, nu thy cha quay u 8 nhip thi tip tuc.
; Cac cu lnh cho xut ma quet trn cang p3, ma hinh trn cang p1
ll2: ; t tn nhan dung cho lnh nhy
mov a, r0 ; lai chuyn tri trong r0 vao a
rr a ; cho quay vong 8 bit trong a theo hng bn phai
mov r0, a ; chuyn tri trong thanh a vao r0
mov p3, r0 ; cho xut tri trong r0 ra trn cang p3
mov a, r1 ; chuyn tri co trong r1 vao thanh a
movc a, @a + dptr ; cho ly ma trong bang ct vao a
mov p1, a ; cho tri trong a xut ra trn cang p1
inc r1 ; tng tri trong r1 ln +1 ly dong ma hinh tip theo
call del1 ; goi chng trinh lam chm
mov p3, #00h ; t 8 chn cua cang p3 xung mc 0

mov p1, #0ffh ; t 8 chn cua cang p1 ln mc 1


call del1 ; cho goi chng trinh lam chm
cjne r0, #00000001b, ll2 ; so sanh tri trong r0 inh hng nhy
; Cac cu lnh cho xut ma quet trn cang p0, ma hinh trn cang p1
ll3: ; t tn nhan dung cho lnh nhy
mov a, r0 ; chuyn tri trong thanh a vao thanh r0
rr a ; cho 8 bit trong thanh a quay vong qua hng phai
mov r0, a ; chuyn tri trong thanh a tr lai r0
mov p0, r0 ; cho tri trong r0 xut ra trn cang p0
mov a, r1 ; chuyn tri trong r1 vao thanh a
movc a, @a + dptr ; ly ma 8 bit trong bang ct vao thanh a
mov p1, a ; cho tri trong a xut ra trn cang p1
inc r1 ; tng tri trong r1 ln +1 ly dong ma k tip
call del1 ; goi chng trinh lam chm
mov p0, #00h ; t 8 chn cua cang p0 xung mc 0
mov p1, #0ffh ; t 8 bit cua cang p1 ln mc 1
call del1 ; goi chng trinh lam chm
cjne r0, #00000001b, ll3 ; so sanh tri trong r0 inh hng nhy
ret ; quay lai sau lnh call

Cach 2: Ma quet cho xut trn p1va ma hinh hay ch cho xut trn cang p2, p3, p0
Mt minh hoa: Cho xut ma quet nhanh trn cang p1, cac ma hinh ln lt cho xut trn cang
p2, cang p3, cang p0

Phn tich cu lnh:


h1b: ; t tn nhan cho lnh nhy
mov r0, #11111110b ; t tri khi u cho nhip quet
mov r1, #00h ; tra tri khi u cho r1 v 0
ll1b: mov a, r0 ; chuyn tri r0 vao thanh a
rr a ; cho 8 bit trong a quay vong qua phai
mov r0, a ; chuyn tri trong a ra r0
mov p1, r0 ; cho xut tri trong r0 ra cang p1
mov a, r1 ; chuyn tri r1 vao a
movc a, @a + dptr ; ly ma ia chi trong bang cho ct vao thanh a
mov p2, a ; cho xut 8 bit ma hinh ra trn cang p2
inc r1 ; tng tri trong r1 ln +1
mov a, r1 ; lai chuyn tri trong r1 vao thanh a
movc a, @a + dptr ; lai ly tip 8 bit ma hinh ct vao thanh a
mov p3, a ; cho xut 8 bit ma hinh ra trn cang p3

inc r1 ; mt ln na lai tng tri trong r1 ln +1


mov a, r1 ; lai chuyn tri cua r1 vao thanh a
movc a, @a + dptr ; lai ly tip 8 bit ma hinh cho ct vao thanh a
mov p0, a ; by gi cho xut 8 bit ma hinh ra trn cang p0
inc r1 ; lai tng tri r1 ln +1, chun bi ly tip cac ma hinh tip theo
call del1 ; goi chng trinh lam chm
mov p1, #11111111b ; xoa xung quet tranh lem hinh
mov p0, #00h ; xoa ma hinh trn p0
mov p2, #00h ; xoa ma hinh trn p2
mov p3, #00h ; xoa ma hinh trn p3
call del1 ; goi chng trinh lam chm
cjne r0, #11111110b, ll1b ; so sanh tri trong a vi ma quet khi u nhy.
ret ; quay lai sau lnh call
Phn tich cach vit chng trinh ngun tng hp:
org 0000h ; khi u chng tring ngun
slan equ 20h ; t tn slan "s ln" cho thanh 20h
bd: call xoa ; goi chng trinh xoa
mov r3, #0 ; t tri 3 vao thanh r1
call h2 ; cho goi trinh m man
mov p1, #11111111b ; xoa
mov dptr, #b_1 ; cho hin ch Phuc
st: mov r4, #10 ; nap tri 10 vao thanh r4
tta: call h1 ; cho goi chng trinh co tn nhan h1
djnz r4, tta ; cho lp lai call h1 10 ln
; inc dptr ; tam dng di ch Phuc
inc r3 ; tng tri r3 theo bc +1
cjne r3, #26, st ; so sanh tri trong r3 inh hng nhy
mov r3, #0 ; tra tri trong r3 v 0

mov p1, #11111111b ; cho tt 8 bit trn cang p1


mov dptr, #b_2 ; cho hin ch Lan
st2: mov r4, #10
ttb: call h1
djnz r4, ttb
; inc dptr
inc r3
cjne r3, #26, st2
mov 3, #0
call h4a ; bo man xung
call h4 ; keo man ln
call xoa
mov dptr, #b_2b ; cho hin ch N
st21: mov r4, #2
ttb1: call h1
djnz r4, ttb1
; inc dptr
inc r3
cjne r3, #26, st21
mov 3, #0
call xoa
mov dptr, #b_2ba ; cho hin ch NH
st21a: mov r4, #2
ttb1a: call h1
djnz r4, ttb1a
; inc dptr
inc r3

cjne r3, #26, st21a


mov 3, #0
call xoa
mov dptr, #b_2bb ; cho hin ch NH
st21b: mov r4, #2
ttb1b: call h1
djnz r4, ttb1b
; inc dptr
inc r3
cjne r3, #26, st21b
mov 3, #0
call xoa
mov dptr, #b_2bc ; cho hin ch NHT
st21c: mov r4, #10
ttb1c: call h1
djnz r4, ttb1c
; inc dptr
inc r3
cjne r3, #26, st21c
mov 3, #0
call xoa
mov dptr, #b_2c ; cho hin ch T
st22: mov r4, #2
ttb2: call h1
djnz r4, ttb2
; inc dptr
inc r3
cjne r3, #26, st22
mov 3, #0

call xoa
mov dptr, #b_2ca ; cho hin ch T
st22a: mov r4, #2
ttb2a: call h1
djnz r4, ttb2a
; inc dptr
inc r3
cjne r3, #26, st22a
mov 3, #0
call xoa
mov dptr, #b_2cb ; cho hin ch TN
st22b: mov r4, #10
ttb2b: call h1
djnz r4, ttb2b
; inc dptr
inc r3
cjne r3, #26, st22b
mov 3, #0
call h4a ; ha man xung
call h4 ; keo man ln
call xoa
mov dptr, #b_2a ; cho hin ch Phuc Lan, ch chay
st5a: mov r4, #20
tte1: call h1
djnz r4, tte1
inc dptr
inc r3
cjne r3, #54, st5a
mov r3, #0

call xoa
mov slan, #3
ttuc: mov dptr, #b_4 ; cho hin ch Chao
st4: mov r4, #10
ttd: call h1
djnz r4, ttd
;inc dptr
inc r3
cjne r3, #10, st4
mov r3, #0
mov p0, #00h
mov p2, #00h
mov p3, #00h
call delay
call xoa
mov dptr, #b_4b ; cho hin ch Ban
st4a: mov r4, #10
ttd1: call h1
djnz r4, ttd1
;inc dptr
inc r3
cjne r3, #10, st4a
mov r3, #0
mov p0, #00h
mov p2, #00h
mov p3, #00h
call delay
djnz slan, ttuc
call xoa
mov dptr, #b_3 ; cho hin ch Tap chi in t Vit Nam, ch chay

st3: mov r4, #15


ttc: call h1
djnz r4, ttc
inc dptr
inc r3
cjne r3, #122, st3
mov r3, #0
call xoa
mov dptr, #b_5 ; PHONE : 39235347, hin s in thoai, ch chay
st5: mov r4, #20
tte: call h1
djnz r4, tte
inc dptr
inc r3
cjne r3, #79, st5
mov r3, #0
call h4a ; ha man xung
call h4 ; keo man ln
call xoa
mov dptr, #b_9 ; cho hin hinh hang cy
st9: mov r4, #20
tti: call h1
djnz r4, tti
; inc dptr
inc r3
cjne r3, #26, st9
mov 3, #0
call xoa
mov slan, #14

lamt: mov dptr, #b_10 ; hin hinh Logo 1


mov r3, #0
qlai: mov r2, #12
llai: call h1b
djnz r2, llai
inc dptr
inc dptr
inc dptr
inc r3
cjne r3, #16, qlai
djnz slan, lamt
call xoa
mov dptr, #b_6 ; hin hang ch CHUYEN BAN CAC LINH KIEN DIEN TU
ABCDEFGHIJKLMNOPQ
st6: mov r4, #8
ttf: call h1
djnz r4, ttf
inc dptr
inc r3
cjne r3, #255, st6
mov r3, #0
call xoa
mov dptr, #b_7 ; hin hang ch RSTXYZUVW
st7: mov r4, #8
ttg: call h1
djnz r4, ttg
inc dptr
inc r3
cjne r3, #52, st7
mov r3, #0

call xoa
mov slan, #6
lamt1: mov dptr, #b_11 ; cho hin hinh Logo 2
mov r3, #0
qlai1: mov r2, #12
llai1: call h1b
djnz r2, llai1
inc dptr
inc dptr
inc dptr
inc r3
cjne r3, #16, qlai1
djnz slan, lamt1
call xoa
mov slan, #2
lamt2: mov dptr, #b_12 ; cho hin hinh Logo 3 in tr
mov r3, #0
qlai2: mov r2, #50
llai2: call h1b
djnz r2, llai2
inc dptr
inc dptr
inc dptr
inc r3
cjne r3, #16, qlai2
djnz slan, lamt2
call xoa
mov slan, #10
lamt3: mov dptr, #b_13 ; cho hin hinh Logo 4 giot nc

mov r3, #0
qlai3: mov r2, #40
llai3: call h1c
djnz r2, llai3
inc dptr
inc dptr
inc dptr
inc r3
cjne r3, #16, qlai3
djnz slan, lamt3
call xoa
mov slan, #4
lamt4: mov dptr, #b_14 ; cho hin hinh Logo 5
mov r3, #0
qlai4: mov r2, #12
llai4: call h1b
djnz r2, llai4
inc dptr
inc dptr
inc dptr
inc r3
cjne r3, #16, qlai4
djnz slan, lamt4
call xoa
mov dptr, #b_8 ; hin hinh cn nha
st8: mov r4, #30
tth: call h1
djnz r4, tth
; inc dptr
inc r3

cjne r3, #26, st8


mov 3, #0
call h3 ; keo man ln
call delay
call delay
jmp bd

h2: ; trinh m man


mov p1, #00h
mov p0, #0ffh
mov p2, #0ffh
mov p3, #0ffh
call delay
mov p3, #11100111b
call delay
mov p3, #11000011b
call delay
mov p3, #10000001b
call delay
mov p3, #00000000b
call delay
mov p2, #11111110b
mov p0, #01111111b
call delay
mov p2, #11111100b
mov p0, #00111111b
call delay
mov p2, #11111000b
mov p0, #00011111b

call delay
mov p2, #11110000b
mov p0, #00001111b
call delay
mov p2, #11100000b
mov p0, #00000111b
call delay
mov p2, #11000000b
mov p0, #00000011b
call delay
mov p2, #10000000b
mov p0, #00000001b
call delay
mov p2, #00000000b
mov p0, #00000000b
call delay
call delay
ret
h3: ; trinh keo man, sang t 2 bn vao
mov p1, #00h
mov p0, #00h
mov p2, #00h
mov p3, #00h
call delay
mov p2, #10000000b
mov p0, #00000001b
call delay
mov p2, #11000000b
mov p0, #00000011b
call delay

mov p2, #11100000b


mov p0, #00000111b
call delay
mov p2, #11110000b
mov p0, #00001111b
call delay
mov p2, #11111000b
mov p0, #00011111b
call delay
mov p2, #11111100b
mov p0, #00111111b
call delay
mov p2, #11111110b
mov p0, #01111111b
call delay
mov p2, #11111111b
mov p0, #11111111b
call delay
mov p3, #10000001b
call delay
mov p3, #11000011b
call delay
mov p3, #11100111b
call delay
mov p3, #11111111b
call delay
call delay
ret

h4: ; keo man ln.

mov p1, #00h


mov p0, #0ffh
mov p2, #0ffh
mov p3, #0ffh
call delay
call delay
setb p1.7
call delay
setb p1.6
call delay
setb p1.5
call delay
setb p1.4
call delay
setb p1.3
call delay
setb p1.2
call delay
setb p1.1
call delay
setb p1.0
call delay
call delay
ret
h4a: ; ha man xung
mov p1, #0ffh
call delay
call delay
mov p0, #0ffh
mov p2, #0ffh

mov p3, #0ffh


clr p1.0
call delay
mov p0, #0ffh
mov p2, #0ffh
mov p3, #0ffh
clr p1.1
call delay
mov p0, #0ffh
mov p2, #0ffh
mov p3, #0ffh
clr p1.2
call delay
mov p0, #0ffh
mov p2, #0ffh
mov p3, #0ffh
clr p1.3
call delay
mov p0, #0ffh
mov p2, #0ffh
mov p3, #0ffh
clr p1.4
call delay
mov p0, #0ffh
mov p2, #0ffh
mov p3, #0ffh
clr p1.5
call delay
mov p0, #0ffh
mov p2, #0ffh

mov p3, #0ffh


clr p1.6
call delay
mov p0, #0ffh
mov p2, #0ffh
mov p3, #0ffh
clr p1.7
call delay
call delay
ret
; oan chng trinh dung in hinh trn ma trn 8x24, ma hinh xut trn cang p1
h1: ; t tn nhan dung cho lnh nhy
mov r0, #00000001b ; t tri khi u cho lnh quay vong
mov r1, #00h ; t tri khi u dung ly ma hinh trong bang

ll1: mov a, r0 ; chuyn tri trong r0 vao thanh a dung lnh rr a


rr a ; cho 8 bit trong thanh a quay vong theo hng phai
mov r0, a ; chuyn tri trong a tr lai thanh r0
mov p2, r0 ; cho xut tri trong r0 ra cang p2

mov a, r1 ; chuyn tri trong r1 vao thanh a


movc a, @a + dptr ; truy ly ma hinh trong bang ct vao thanh a
mov p1, a ; cho xut ma hinh trong a ra cang p1

inc r1 ; tng tri trong r1 ln +1 ly ma hinh tip theo


call del1 ; goi tr
mov p2, #00h ; tt 8 bit trn cang p2
mov p1, #0ffh ; tt bit trn cang p1

call del1 ; goi tr


cjne r0, #00000001b, ll1 ; so sanh thanh r0 vi ma quet chon hng nhy
ll2: mov a, r0 ; chuyn tri trong r0 vao thanh a
rr a ; cho 8 bit trong thanh a quay vong theo hng phai
mov r0, a ; chuyn tri trong a vao thanh r0
mov p3, r0 ; cho tri ma quet trong r0 xut ra cang p3

mov a, r1 ; chuyn tri trong thanh r1 vao thanh a


movc a, @a + dptr ; truy ly ma hinh trong bang ct vao thanh a
mov p1, a ; cho xut ma hinh trong a ra cang p1

inc r1 ; tng tri trong r1 ln +1 ly ma hinh tip theo


call del1 ; goi tr
mov p3, #00h ; tt 8 bit trn cang p3
mov p1, #0ffh ; tt 8 bit trn cang p1
call del1 ; goi tr
cjne r0, #00000001b, ll2 ; so sanh r0 va ma quet chon hng nhy
ll3: mov a, r0 ; chuyn tri trong r0 vao thanh a
rr a ; cho 8 bit trong thanh a quay vong theo hng phai
mov r0, a ; chuyn tri trong thanh a tr lai thanh r0
mov p0, r0 ; cho xut tri ma quet trong r0 ra cang p0

mov a, r1 ; chuyn tri trong thanh r1 vao thanh a


movc a, @a + dptr ; truy ly ma hinh trong bang ct vao thanh a
mov p1, a ; cho xut tri ma hinh trong thanh a ra cang p1

inc r1 ; tng tri trong r1 ln +1 ly ma hinh tip theo


call del1 ; goi tr
mov p0, #00h ; cho tt 8 bit trn cang p0

mov p1, #0ffh ; cho tt 8 bit trn cang p1


call del1 ; goi tr
cjne r0, #00000001b, ll3 ; so sanh tri trong r0 vi ma quet inh hng nhy
ret ; quay lai sau lnh call

del1:
mov r7, #3
v6: mov r6, #50
djnz r6, $
djnz r7, v6
ret

delay:
mov r7, #5
v6a: mov r6, #50
v5: mov r5, #250
djnz r5, $
djnz r6, v5
djnz r7, v6a
ret
xoa: mov p0, #00000000b
mov p2, #00000000b
mov p3, #00000000b
mov p1, #11111111b
ret
; oan chng trinh cho xut ma hinh trn cang p2, p3, p0
h1b:
mov r0, #11111110b
mov r1, #00h

ll1b: mov a, r0
rr a
mov r0, a
mov p1, r0
mov a, r1
movc a, @a + dptr
mov p2, a
inc r1
mov a, r1
movc a, @a + dptr
mov p3, a
inc r1
mov a, r1
movc a, @a + dptr
mov p0, a
inc r1
call del1
mov p1, #11111111b
mov p0, #00h
mov p2, #00h
mov p3, #00h
call del1
cjne r0, #11111110b, ll1b
ret
; oan chng trinh cho xut ma hinh trn cang p2, p3, p0
h1c:
mov r0, #01111111b
mov r1, #00h
ll1c: mov a, r0
rl a

mov r0, a
mov p1, r0
mov a, r1
movc a, @a + dptr
mov p2, a
inc r1
mov a, r1
movc a, @a + dptr
mov p3, a
inc r1
mov a, r1
movc a, @a + dptr
mov p0, a
inc r1
call del1
mov p1, #11111111b
mov p0, #00h
mov p2, #00h
mov p3, #00h
call del1
cjne r0, #01111111b, ll1c
ret
; cac bang dung t ma hinh va ch do Ban t soan
b_1: ; tao ch Phuc
db 11111111b
db 00000001b
db 00000001b
db 11101101b
db 11101101b
db 11110011b

db 11111111b
db 00000001b
db 00000001b
db 11101111b
db 11101111b
db 00000001b
db 11111111b
db 10000001b
db 00000001b
db 01111101b
db 01111110b
db 10000001b
db 11111111b
db 10000011b
db 00000001b
db 01111101b
db 01111101b
db 10011011b

b_2: ; tao ch Lan


db 11111111b
db 11111111b
db 11111111b
db 00000001b
db 00000001b
db 01111111b
db 01111111b
db 01111111b
db 11111111b
db 00000111b

db 00000011b
db 11011101b
db 11011011b
db 00000111b
db 11111111b
db 00000001b
db 00000011b
db 11110111b
db 11101111b
db 00000001b
db 11111111b
db 11111111b
db 11111111b
db 11111111b

b_2a: ; tao ch Phuc * Lan


db 11111111b
db 11111111b
db 00000001b
db 00000001b
db 11101101b
db 11101101b
db 11110011b
db 11111111b
db 00000001b
db 00000001b
db 11101111b
db 11101111b
db 00000001b
db 11111111b

db 10000001b
db 00000001b
db 01111101b
db 01111110b
db 10000001b
db 11111111b
db 10000011b
db 00000001b
db 01111101b
db 01111101b
db 10011011b
db 11111111b
db 11111111b
db 10111011b
db 11010111b
db 00000001b
db 11010111b
db 10111011b
db 11111111b
db 11111111b
db 00000001b
db 00000001b
db 01111111b
db 01111111b
db 01111111b
db 11111111b
db 00000111b
db 00000011b
db 11011101b
db 11011011b

db 00000111b
db 11111111b
db 00000001b
db 00000011b
db 11110111b
db 11101111b
db 00000001b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b

db 11111111b
db 11111111b
b_2b: ; tao ch N
db 11111111b
db 00000011b
db 11110111b
db 11101111b
db 11011111b
db 00000011b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
b_2ba: ; tao ch NH
db 11111111b

db 00000011b
db 11110111b
db 11101111b
db 11011111b
db 00000011b
db 11111111b
db 00000011b
db 11011111b
db 11011111b
db 11011111b
db 00000011b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
b_2bb: ; tao ch NH
db 11111111b
db 00000011b
db 11110111b
db 11101111b
db 11011111b

db 00000011b
db 11111111b
db 00000011b
db 11011111b
db 11011111b
db 11011111b
db 00000011b
db 11111111b
db 00001111b
db 11010101b
db 01011010b
db 11010101b
db 00001111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
b_2bc: ; tao ch NHT
db 11111111b
db 00000011b
db 11110111b
db 11101111b
db 11011111b
db 00000011b
db 11111111b
db 00000011b
db 11011111b

db 11011111b
db 11011111b
db 00000011b
db 11111111b
db 00001111b
db 11010101b
db 01011010b
db 11010101b
db 00001111b
db 11111111b
db 11111011b
db 11111011b
db 00000011b
db 11111011b
db 11111011b
db 11111111b
b_2c: ; tao ch T
db 11111111b
db 11111111b
db 11111111b
db 11111011b
db 11111011b
db 00000011b
db 11111011b
db 11111011b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b

db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
b_2ca: ; tao ch T
db 11111111b
db 11111111b
db 11111111b
db 11111011b
db 11111011b
db 00000011b
db 11111011b
db 11111011b
db 11111111b
db 11111111b
db 00001111b
db 11010101b
db 11011010b
db 11010101b
db 00001111b
db 11111111b
db 11111111b

db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
b_2cb: ; tao ch TN
db 11111111b
db 11111111b
db 11111111b
db 11111011b
db 11111011b
db 00000011b
db 11111011b
db 11111011b
db 11111111b
db 11111111b
db 00001111b
db 11010101b
db 11011010b
db 11010101b
db 00001111b
db 11111111b
db 11111111b
db 00000011b
db 11110111b
db 11101111b
db 11011111b

db 00000011b
db 11111111b
db 11111111b
db 11111111b
b_3: ; tao ch Tap Chi in T Vit Nam
db 11111111b
db 11111101b
db 11111101b
db 00000001b
db 11111101b
db 11111101b
db 11111111b
db 00001111b
db 11010111b
db 01011011b
db 11010111b
db 00001111b
db 11111111b
db 00000011b
db 11011011b
db 11011011b
db 11011011b
db 11100111b
db 11111111b
db 11011111b
db 11011111b
db 11011111b
db 11111111b
db 10000111b
db 01111011b

db 01111011b
db 01111011b
db 10110111b
db 11111111b
db 00000011b
db 11101111b
db 11101111b
db 11101111b
db 00000011b
db 11111111b
db 00000011b
db 11111111b
db 11011101b
db 11011110b
db 11011111b
db 11111111b
db 00000001b
db 01101101b
db 01101101b
db 01111101b
db 10000011b
db 11111111b
db 00000010b
db 11111111b
db 00000111b
db 01010101b
db 01010110b
db 01010101b
db 01110111b
db 11111111b

db 00000011b
db 11110111b
db 11101111b
db 11011111b
db 00000011b
db 11111111b
db 11011111b
db 11011111b
db 11011111b
db 11111111b
db 11111101b
db 11111101b
db 00000001b
db 11111101b
db 11111101b
db 11111111b
db 10000111b
db 01111111b
db 01110010b
db 01111101b
db 10000111b
db 11111001b
db 11011111b
db 11011111b
db 11011111b
db 11111111b
db 11000001b
db 10111111b
db 01111111b
db 10111111b

db 11000001b
db 11111111b
db 00000010b
db 11111111b
db 00000111b
db 01010101b
db 01010110b
db 01010101b
db 01110111b
db 11111111b
db 11111011b
db 11111011b
db 00000011b
db 11111011b
db 11111011b
db 11111111b
db 11101111b
db 11101111b
db 11101111b
db 11111111b
db 00000001b
db 11111011b
db 11110111b
db 11101111b
db 00000001b
db 11111111b
db 00001111b
db 10110111b
db 10111011b
db 10110111b

db 00001111b
db 11111111b
db 00000011b
db 11110111b
db 11101111b
db 11110111b
db 00000011b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b

db 11111111b
db 11111111b

b_4: ; tao ch Chao


db 10000111b
db 01111011b
db 01111011b
db 01111011b
db 10110111b
db 11111111b
db 00000011b
db 11011111b
db 11011111b
db 11011111b
db 00000011b
db 11111111b
db 00001111b
db 11010111b
db 11011011b
db 11010110b
db 00001101b
db 11111111b
db 10000111b
db 01111011b
db 01111011b
db 01111011b
db 10000111b
db 11111111b

b_4b: ; tao ch Ban

db 11111111b
db 11111111b
db 00000011b
db 01101011b
db 01101011b
db 01101011b
db 10010111b
db 11111111b
db 11111111b
db 00001111b
db 11010111b
db 01011011b
db 11010111b
db 00001111b
db 11111111b
db 11111111b
db 00000011b
db 11110111b
db 11101111b
db 11011111b
db 00000011b
db 11111111b
db 11111111b
db 11111111b
b_5: ; tao ch Phone: 39235347
db 11111111b
db 11111111b
db 00000011b
db 11011011b
db 11011011b

db 11100111b
db 11111111b
db 00000011b
db 11101111b
db 11101111b
db 00000011b
db 11111111b
db 10000111b
db 01111011b
db 01111011b
db 10000111b
db 11111111b
db 00000011b
db 11110111b
db 11101111b
db 00000011b
db 11111111b
db 00000011b
db 01101011b
db 01101011b
db 11111111b
db 11111111b
db 11101111b
db 11010111b
db 10111011b
db 11010111b
db 11010111b
db 10111011b
db 11010111b
db 11101111b

db 11111111b
db 11111111b
db 10111011b
db 01111101b
db 01101101b
db 01101101b
db 10010011b
db 11111111b
db 01110011b
db 01101101b
db 01101101b
db 01101101b
db 10000011b
db 11111111b
db 00111011b
db 01011101b
db 01011101b
db 01011101b
db 01100011b
db 11111111b
db 10111011b
db 01111101b
db 01101101b
db 01101101b
db 10010011b
db 11111111b
db 10110001b
db 01110101b
db 01110101b
db 01110101b

db 10001101b
db 11111111b
db 10111011b
db 01111101b
db 01101101b
db 01101101b
db 10010011b
db 11111111b
db 11001111b
db 11010111b
db 11011011b
db 00000001b
db 11011111b
db 11111111b
db 11111001b
db 11111101b
db 00001101b
db 11110101b
db 11111001b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b

db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
b_6: ; tao ch Chuyn Mua Ban Cac Linh Kin in T
db 10000111b
db 01111011b
db 01111011b
db 01111011b
db 10110111b
db 11111111b
db 00000011b
db 11101111b
db 11101111b
db 11101111b
db 00000011b
db 11111111b
db 10000011b
db 01111111b
db 01111111b
db 01111111b

db 10000011b
db 11111111b
db 11110011b
db 11101111b
db 00011111b
db 11101111b
db 11110011b
db 11111111b
db 00000111b
db 01010101b
db 01010110b
db 01010101b
db 01110111b
db 11111111b
db 00000011b
db 11110111b
db 11101111b
db 11011111b
db 00000011b
db 11111111b
db 11111111b
db 11111111b
db 00000011b
db 11110111b
db 11101111b
db 11110111b
db 00000011b
db 11111111b
db 10000011b
db 01111111b

db 01111111b
db 01111111b
db 10000011b
db 11111111b
db 00001111b
db 10110111b
db 10111011b
db 10110111b
db 00001111b
db 11111111b
db 11111111b
db 11111111b
db 00000011b
db 01101011b
db 01101011b
db 01101011b
db 10010111b
db 11111111b
db 00001111b
db 10110111b
db 10111011b
db 10110111b
db 00001101b
db 11111110b
db 00000011b
db 11110111b
db 11101111b
db 11011111b
db 00000011b
db 11111111b

db 11111111b
db 11111111b
db 10000111b
db 01111011b
db 01111011b
db 01111011b
db 10110111b
db 11111111b
db 00001111b
db 10110111b
db 10111011b
db 10110111b
db 00001101b
db 11111110b
db 10000111b
db 01111011b
db 01111011b
db 01111011b
db 10110111b
db 11111111b
db 11111111b
db 11111111b
db 00000011b
db 01111111b
db 01111111b
db 01111111b
db 01111111b
db 11111111b
db 00000101b
db 11111111b

db 00000011b
db 11110111b
db 11101111b
db 11011111b
db 00000011b
db 11111111b
db 00000011b
db 11011111b
db 11011111b
db 11011111b
db 00000011b
db 11111111b
db 11111111b
db 11111111b
db 00000011b
db 11011111b
db 11001111b
db 10110111b
db 01111111b
db 11111111b
db 00000101b
db 11111111b
db 00000111b
db 01010011b
db 01010101b
db 01010011b
db 01110111b
db 11111111b
db 00000011b
db 11110111b

db 11101111b
db 11011111b
db 00000011b
db 11111111b
db 11111111b
db 11111111b
db 00000011b
db 01011011b
db 01011011b
db 01111011b
db 10000111b
db 11111111b
db 00000101b
db 11111111b
db 00000111b
db 01010011b
db 01010101b
db 01010011b
db 01110111b
db 11111111b
db 00000011b
db 11110111b
db 11101111b
db 11011111b
db 00000011b
db 11111111b
db 11111111b
db 11111111b
db 11111011b
db 11111011b

db 00000011b
db 11111011b
db 11111011b
db 11111111b
db 10000011b
db 01111111b
db 01110010b
db 01111101b
db 10000111b
db 11111001b
db 11111111b
db 11111111b
db 00000111b
db 11011011b
db 11011101b
db 11011011b
db 00000111b
db 11111111b
db 00000001b
db 01101101b
db 01101101b
db 01101101b
db 10010011b
db 11111111b
db 10000011b
db 01111101b
db 01111101b
db 01111101b
db 10111011b
db 11111111b

db 00000001b
db 01111101b
db 01111101b
db 01111101b
db 10000011b
db 11111111b
db 00000001b
db 01101101b
db 01101101b
db 01101101b
db 01111101b
db 11111111b
db 00000001b
db 11101101b
db 11101101b
db 11101101b
db 11111101b
db 11111111b
db 10000011b
db 01111101b
db 01101101b
db 01101101b
db 10001011b
db 11111111b
db 00000001b
db 11101111b
db 11101111b
db 11101111b
db 00000001b
db 11111111b

db 00000001b
db 11111111b
db 10111101b
db 01111101b
db 10000001b
db 11111101b
db 11111101b
db 11111111b
db 00000001b
db 11101111b
db 11010111b
db 10111011b
db 01111101b
db 11111111b
db 00000001b
db 01111111b
db 01111111b
db 01111111b
db 01111111b
db 11111111b
db 00000001b
db 11111011b
db 11110111b
db 11111011b
db 00000001b
db 11111111b
db 00000001b
db 11111011b
db 11110111b
db 11101111b

db 00000001b
db 11111111b
db 10000011b
db 01111101b
db 01111101b
db 01111101b
db 10000011b
db 11111111b
db 00000001b
db 11101101b
db 11101101b
db 11101101b
db 11110011b
db 11111111b
db 10000011b
db 01111101b
db 01111101b
db 01011101b
db 10000011b
db 01111111b
db 11111111b

b_7: ; tao mu cac con ch


db 11111111b
db 00000001b
db 11101101b
db 11001101b
db 10101101b
db 01110011b
db 11111111b

db 10011011b
db 01110101b
db 01101101b
db 10011011b
db 11111111b
db 11111101b
db 11111101b
db 00000001b
db 11111101b
db 11111101b
db 11111111b
db 10000001b
db 01111111b
db 01111111b
db 01111111b
db 10000001b
db 11111111b
db 11000001b
db 10111111b
db 01111111b
db 10111111b
db 11000001b
db 11111111b
db 10000001b
db 01111111b
db 10011111b
db 01111111b
db 10000001b
db 11111111b
db 01111101b

db 11011011b
db 11110111b
db 11011011b
db 01111101b
db 11111111b
db 11111001b
db 11110111b
db 00001111b
db 11110111b
db 11111001b
db 11111111b
db 00111101b
db 01011101b
db 01101101b
db 01110101b
db 01111001b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b

db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b

b_8: ; tao hinh cn nha va cy


db 01110011b
db 00001101b
db 01110011b
db 00000111b
db 01111011b
db 01000101b
db 01010110b
db 01000100b
db 01111000b
db 00000000b
db 01110000b
db 01110000b
db 01110000b
db 01110000b
db 01110000b
db 01110001b
db 00000011b

db 00110111b
db 00011111b
db 00001111b
db 00111001b
db 00000110b
db 00111001b
db 01111111b

b_9: ; tao hinh rng cy


db 00111111b
db 01111001b
db 00000110b
db 01111001b
db 00111111b
db 00000111b
db 00001111b
db 00111111b
db 00111111b
db 00000011b
db 00011111b
db 00000011b
db 00000000b
db 00000111b
db 00011111b
db 00111111b
db 01110001b
db 00000000b
db 01110001b
db 01111111b
db 00111111b

db 00011111b
db 00000111b
db 00011111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b

b_10: ; tao hinh hoa vn


db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b

db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 01000100b,01000100b,01000100b
db 00101000b,00101000b,00101000b
db 01000100b,01000100b,01000100b
db 10010010b,10010010b,10010010b
db 01000100b,01000100b,01000100b
db 00101000b,00101000b,00101000b
db 01000100b,01000100b,01000100b
db 00101000b,00101000b,00101000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b

b_11: ; tao hinh cac mui tn


db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b

db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00010000b,00001000b,00000100b
db 00111000b,00011100b,00001110b
db 11111110b,01111111b,00111111b
db 01111100b,00111110b,00011111b
db 01000100b,00100010b,00010001b
db 11000110b,01100011b,00110001b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b

b_12: ; tao hinh cac ky hiu in t


db 11111111b,11111111b,11111111b
db 10000000b,00001100b,11000001b
db 10000000b,00001110b,11000001b
db 10000001b,11111111b,11111001b
db 10000000b,00001110b,11000001b
db 10000000b,00001100b,11000001b
db 10000000b,00001000b,00000001b
db 11111111b,11111111b,11111111b
db 00000000b,00000000b,00000000b
db 11111111b,11111111b,11111111b
db 10000000b,00000000b,00000001b
db 10000010b,00100010b,00000001b

db 10011101b,01010101b,01110001b
db 10000000b,10001000b,10000001b
db 10000000b,00000000b,00000001b
db 11111111b,11111111b,11111111b
db 00000000b,00000000b,00000000b
db 00000000b,01001000b,00000000b
db 00000000b,01001000b,00000000b
db 00011111b,11001111b,11100000b
db 00000000b,01001000b,00000000b
db 00000000b,01001000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b

b_13: ; tao hinh cac bng hoa


db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00011100b,00011100b,00011100b
db 00111110b,00111110b,00111110b
db 00011100b,00011100b,00011100b
db 10001001b,10001001b,10001001b
db 01001010b,01001010b,01001010b
db 00101100b,00101100b,00101100b
db 00011000b,00011000b,00011000b
db 11111111b,11111111b,11111111b

db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b

b_14: ; tao hinh cac giot nc


db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00100000b,10000010b,00001000b
db 01110001b,11000111b,00011100b
db 11111011b,11101111b,10111110b
db 01110001b,11000111b,00011100b
db 00000100b,00010000b,01000000b
db 00001110b,00111000b,11100000b
db 00011111b,01111101b,11110000b
db 00001110b,00111000b,11100000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b

db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
end
Noi ro hn: Cach tao hinh trn bang en ma trn 8x24
Hinh ve di y cho thy cach Ban tao ra khung ma hinh dung bit 0 tao hinh.

Mun in hinh ra trn bang ma trn 8x24, trc ht Ban hay t tn bang, ri tao khung
hinh tng ng vi bang en. Mt thi du:
b_8: ; t tn nhan cua bang ma hinh
db 01110011b
db 00001101b
db 01110011b
db 00000111b
db 01111011b
db 01000101b
db 01010110b
db 01000100b
db 01111000b
db 00000000b
db 01110000b
db 01110000b
db 01110000b
db 01110000b
db 01110000b
db 01110001b
db 00000011b
db 00110111b
db 00011111b
db 00001111b
db 00111001b
db 00000110b
db 00111001b
db 01111111b

Trn y la 24 dong ma 8 bit vit dang h c 2. Trong o ng vi vi tri bit 0 se lam cho
Led sang. Hinh trn cho thy chung ta a dung bit 0 tao ra hinh mt ngi nha trn bang en.
Tom lai, mun Led nao sang, chung ta t vao s 0, va s 1 se lam tt Led. Kt qua chung ta se
co hinh hin ra nh sau:

Ban co th vit gon lai bang ma hinh trn nu dung ma 8 bit vit dang h 16, kt qua
chung ta co bang ma hinh trn nh sau:
b_8: ; t tn nhan cua bang ma hinh
db 0111 0011b ; 73h
db 0000 1101b ; 0dh
db 0111 0011b ; 73h
db 0000 0111b ; 07h
db 0111 1011b ; 7bh
db 0100 0101b ; 45h
db 0101 0110b ; 56h
db 0100 0100b ; 44h
db 0111 1000b ; 78h
db 0000 0000b ; 00h

db 0111 0000b ; 70h


db 0111 0000b ; 70h
db 0111 0000b ; 70h
db 0111 0000b ; 70h
db 0111 0000b ; 70h
db 0111 0001b ; 71h
db 0000 0011b ; 03h
db 0011 0111b ; 37h
db 0001 1111b ; 1fh
db 0000 1111b ; 0fh
db 0011 1001b ; 39h
db 0000 0110b ; 06h
db 0011 1001b ; 39h
db 0111 1111b ; 7fh
Ghi nhn: Vit ma hinh dang h 16, tuy ngn gon hn, nhng Ban se khng nhin thy
trong cac dong ma nay no la hinh gi va khi hinh hay ch bi sai rt kho sa lai cho ung.
b_8: ; t tn nhan cua bang ma hinh
db 73h, 0dh, 73h, 07h, 7bh, 45h, 56h, 44h
db 78h, 00h, 70h, 70h, 70h, 70h, 70h, 71h
db 03h, 37h, 1fh, 0fh, 39h, 06h, 39h, 7fh

Di y la mt khung hinh trng, vi toan bit 1 (tt Led), mun tao hinh trn cac im
Led cua ma trn 8x24, Ban dung bit 0.
b_vkh: ; t tn nhan cho bang
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b ;
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b ;
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b
db 11111111b

Hinh ve di y cho thy cach Ban dung bit 1 tao hinh

Ban co th t ma quet trn cang p1, va cho xut ma hinh trn cac cang p2, p3, p0. Luc
nay ng vi bit 1 se lam cho Led sang. Ban xem mt thi du, minh hoa bng hinh sau:

Nh vy khung tao hinh cho kiu quet nay se nh sau:


b_14:
; t tn nhan dung lnh mov dptr, #b_14
; cu lnh nay cho t bang vao thanh ia chi dptr.
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
db 00000000b,00000000b,00000000b
Trn y la mt khung mu trng vi toan la bit 0, nu Ban mun co hinh gi hin trn ma
trn 8x24, thi hay dung bit 1 lam sang cac Led cac vi tri tng ng. Ban cung co th vit cac
ma hinh 8 bit nay dang h c 16, luc o bang se ngn gon hn, nhng Ban se khng thy c
hinh gi trn cac dong ma nay, va khi cn sa i se rt kho khn.

Y kin chung ti:

Nu Ban mun lam thc hanh bai vit trn, u tin Ban phai co

bang en ma trn 8x24 nh hinh trn, Ban co th mua ban mach in ca hang Phuc Lan
Shop, sau o gn Led ln ban mach in va kt ni vi ic lp trinh AT89C52 (dung ic
AT89C52 co b nh 8K ln hn ic AT89C51 chi co 4K). Tip theo Ban ct oan
chng trinh ngun trn va dan vao vung bin soan cua MIDE-51 (xem hinh bn di),
t cho no mt cai tn vi ho la .asm, ri go phim F9 bin dich file .asm ra file .hex,
by gi Ban cho nap oan chng trinh ma h 16 nay vao b nh EEPROM cua ic lp
trinh AT89C52, gn vao board test, Ban se thy hinh va dong ch ma Ban soan trong
cac khung hinh xut hin trn bang en. Thich khng?

Sau khi bin dich xong, chung ta co file .hex nh sau:


:1000000012043B7B001202347590FF9004A07C0A1E
:100010001203D5DCFB0BBB1AF57B007590FF900437
:10002000B87C0A1203D5DCFB0BBB1AF57503001272
:10003000035812031A12043B90051B7C021203D5CD
:10004000DCFB0BBB1AF575030012043B9005347CF6
:10005000021203D5DCFB0BBB1AF575030012043B3F
:1000600090054D7C021203D5DCFB0BBB1AF5750322
:100070000012043B9005667C0A1203D5DCFB0BBB27
:100080001AF575030012043B90057F7C021203D51C
:10009000DCFB0BBB1AF575030012043B9005987C42
:1000A000021203D5DCFB0BBB1AF575030012043BEF
:1000B0009005B17C0A1203D5DCFB0BBB1AF5750366
:1000C0000012035812031A12043B9004D07C14123D
:1000D00003D5DCFBA30BBB36F47B0012043B75207D
:1000E0000390065D7C0A1203D5DCFB0BBB0AF57B93
:1000F0000075800075A00075B00012042E12043B3C
:100100009006757C0A1203D5DCFB0BBB0AF57B005D
:1001100075800075A00075B00012042ED520C212A3
:10012000043B9005CA7C0F1203D5DCFBA30BBB7A02
:10013000F47B0012043B90068D7C141203D5DCFB8B
:10014000A30BBB4FF47B0012035812031A12043B9B
:100150009008747C141203D5DCFB0BBB1AF57503F5
:100160000012043B75200E9008A17B007A0C12044B
:1001700048DAFBA3A3A30BBB10F2D520EA12043B81
:100180009006F97C081203D5DCFBA30BBBFFF47BC4
:100190000012043B90080E7C081203D5DCFBA30B75
:1001A000BB34F47B0012043B7520069008E97B0009
:1001B0007A0C120448DAFBA3A3A30BBB10F2D520E0
:1001C000EA12043B7520029009317B007A32120456

:1001D00048DAFBA3A3A30BBB10F2D520EA12043B21
:1001E00075200A9009797B007A28120474DAFBA33F
:1001F000A3A30BBB10F2D520EA12043B7520049098
:1002000009C17B007A0C120448DAFBA3A3A30BBB41
:1002100010F2D520EA12043B90085C7C1E1203D534
:10022000DCFB0BBB1AF57503001202A712042E1299
:10023000042E01007590007580FF75A0FF75B0FF5A
:1002400012042E75B0E712042E75B0C312042E7579
:10025000B08112042E75B00012042E75A0FE7580B8
:100260007F12042E75A0FC75803F12042E75A0F835
:1002700075801F12042E75A0F075800F12042E7564
:10028000A0E075800712042E75A0C07580031204CB
:100290002E75A08075800112042E75A00075800057
:1002A00012042E12042E2275900075800075A00095
:1002B00075B00012042E75A08075800112042E7591
:1002C000A0C075800312042E75A0E075800712048B
:1002D0002E75A0F075800F12042E75A0F875801F82
:1002E00012042E75A0FC75803F12042E75A0FE75B9
:1002F000807F12042E75A0FF7580FF12042E75B04A
:100300008112042E75B0C312042E75B0E712042EAC
:1003100075B0FF12042E12042E227590007580FF16
:1003200075A0FF75B0FF12042E12042ED29712048E
:100330002ED29612042ED29512042ED29412042E8E
:10034000D29312042ED29212042ED29112042ED2E3
:100350009012042E12042E227590FF12042E120405
:100360002E7580FF75A0FF75B0FFC29012042E7528
:1003700080FF75A0FF75B0FFC29112042E7580FF3B
:1003800075A0FF75B0FFC29212042E7580FF75A094
:10039000FF75B0FFC29312042E7580FF75A0FF7524
:1003A000B0FFC29412042E7580FF75A0FF75B0FFD8

:1003B000C29512042E7580FF75A0FF75B0FFC2961E
:1003C00012042E7580FF75A0FF75B0FFC29712044E
:1003D0002E12042E2278017900E803F888A0E99310
:1003E000F5900912042575A0007590FF120425B838
:1003F00001E7E803F888B0E993F590091204257540
:10040000B0007590FF120425B801E7E803F8888072
:10041000E993F590091204257580007590FF120488
:1004200025B801E7227F037E32DEFEDFFA227F0558
:100430007E327DFADDFEDEFADFF62275800075A0E1
:100440000075B0007590FF2278FE7900E803F88807
:1004500090E993F5A009E993F5B009E993F58009CE
:1004600091257590FF75800075A00075B0009125ED
:10047000B8FED922787F7900E823F88890E993F5CF
:10048000A009E993F5B009E993F5800991257590E4
:10049000FF75800075A00075B0009125B87FD92246
:1004A000FF0101EDEDF3FF0101EFEF01FF81017DA0
:1004B0007E81FF83017D7D9BFFFFFF01017F7F7FA9
:1004C000FF0703DDDB07FF0103F7EF01FFFFFFFF7E
:1004D000FFFF0101EDEDF3FF0101EFEF01FF8101EE
:1004E0007D7E81FF83017D7D9BFFFFBBD701D7BB55
:1004F000FFFF01017F7F7FFF0703DDDB07FF0103B4
:10050000F7EF01FFFFFFFFFFFFFFFFFFFFFFFFFF11
:10051000FFFFFFFFFFFFFFFFFFFFFFFF03F7EFDF1F
:1005200003FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7
:10053000FFFFFFFFFF03F7EFDF03FF03DFDFDF0353
:10054000FFFFFFFFFFFFFFFFFFFFFFFFFFFF03F7BF
:10055000EFDF03FF03DFDFDF03FF0FD55AD50FFF08
:10056000FFFFFFFFFFFFFF03F7EFDF03FF03DFDF07
:10057000DF03FF0FD55AD50FFFFBFB03FBFBFFFF8C
:10058000FFFFFBFB03FBFBFFFFFFFFFFFFFFFFFF87

:10059000FFFFFFFFFFFFFFFFFFFFFFFBFB03FBFB77
:1005A000FFFF0FD5DAD50FFFFFFFFFFFFFFFFFFFB4
:1005B000FFFFFFFFFBFB03FBFBFFFF0FD5DAD50FB0
:1005C000FFFF03F7EFDF03FFFFFFFFFDFD01FDFD71
:1005D000FF0FD75BD70FFF03DBDBDBE7FFDFDFDFDF
:1005E000FF877B7B7BB7FF03EFEFEF03FF03FFDDAD
:1005F000DEDFFF016D6D7D83FF02FF0755565577E6
:10060000FF03F7EFDF03FFDFDFDFFFFDFD01FDFD90
:10061000FF877F727D87F9DFDFDFFFC1BF7FBFC14B
:10062000FF02FF0755565577FFFBFB03FBFBFFEF70
:10063000EFEFFF01FBF7EF01FF0FB7BBB70FFF03B2
:10064000F7EFF703FFFFFFFFFFFFFFFFFFFFFFFFD6
:10065000FFFFFFFFFFFFFFFFFFFFFFFFFF877B7B2A
:100660007BB7FF03DFDFDF03FF0FD7DBD60DFF878D
:100670007B7B7B87FFFFFF036B6B6B97FFFF0FD7C6
:100680005BD70FFFFF03F7EFDF03FFFFFFFFFF0362
:10069000DBDBE7FF03EFEF03FF877B7B87FF03F7DE
:1006A000EF03FF036B6BFFFFEFD7BBD7D7BBD7EFD2
:1006B000FFFFBB7D6D6D93FF736D6D6D83FF3B5DC4
:1006C0005D5D63FFBB7D6D6D93FFB17575758DFFCE
:1006D000BB7D6D6D93FFCFD7DB01DFFFF9FD0DF51E
:1006E000F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20
:1006F000FFFFFFFFFFFFFFFFFF877B7B7BB7FF0352
:10070000EFEFEF03FF837F7F7F83FFF3EF1FEFF3B5
:10071000FF0755565577FF03F7EFDF03FFFFFF0392
:10072000F7EFF703FF837F7F7F83FF0FB7BBB70F21
:10073000FFFFFF036B6B6B97FF0FB7BBB70DFE039C
:10074000F7EFDF03FFFFFF877B7B7BB7FF0FB7BBB5
:10075000B70DFE877B7B7BB7FFFFFF037F7F7F7F2C
:10076000FF05FF03F7EFDF03FF03DFDFDF03FFFF1B

:10077000FF03DFCFB77FFF05FF0753555377FF0315
:10078000F7EFDF03FFFFFF035B5B7B87FF05FF07DF
:1007900053555377FF03F7EFDF03FFFFFFFBFB0327
:1007A000FBFBFF837F727D87F9FFFF07DBDDDB0744
:1007B000FF016D6D6D93FF837D7D7DBBFF017D7DB1
:1007C0007D83FF016D6D6D7DFF01EDEDEDFDFF831F
:1007D0007D6D6D8BFF01EFEFEF01FF01FFBD7D81AF
:1007E000FDFDFF01EFD7BB7DFF017F7F7F7FFF0115
:1007F000FBF7FB01FF01FBF7EF01FF837D7D7D83AD
:10080000FF01EDEDEDF3FF837D7D5D837FFFFF0154
:10081000EDCDAD73FF9B756D9BFFFDFD01FDFDFFF4
:10082000817F7F7F81FFC1BF7FBFC1FF817F9F7FAE
:1008300081FF7DDBF7DB7DFFF9F70FF7F9FF3D5D0A
:100840006D7579FFFFFFFFFFFFFFFFFFFFFFFFFF5A
:10085000FFFFFFFFFFFFFFFFFFFFFFFF730D7307AA
:100860007B455644780070707070707103371F0FAD
:100870003906397F3F7906793F070F3F3F031F0352
:1008800000071F3F7100717F3F1F071FFFFFFFFF22
:10089000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68
:1008A000FF00000000000000000000000000000049
:1008B00000000000000000000044444428282844B0
:1008C000444492929244444428282844444428288A
:1008D00028000000000000000000000000000000F0
:1008E0000000000000000000000000000000000008
:1008F00000000000000000000000000000000000F8
:1009000000000000000000100804381C0EFE7F3FAD
:100910007C3E1F442211C66331000000000000002D
:1009200000000000000000000000000000000000C7
:1009300000FFFFFF800CC1800EC181FFF9800EC156
:10094000800CC1800801FFFFFF000000FFFFFF8057

:1009500000018222019D5571808881800001FFFF86
:10096000FF0000000048000048001FCFE0004800E2
:10097000004800000000000000000000000000002F
:100980000000000000000000000000000000000067
:10099000001C1C1C3E3E3E1C1C1C8989894A4A4A7C
:1009A0002C2C2C181818FFFFFF000000000000007E
:1009B0000000000000000000000000000000000037
:1009C0000000000000000000000000000000000027
:1009D00000000000000000000020820871C71CFB1E
:1009E000EFBE71C71C0410400E38E01F7DF00E38BA
:1009F000E000000000000000000000000000000017
:090A0000000000000000000000ED
:00000001FF
Tam kt: Qua phn trinh bay trn, Ban thy dung ic lp trinh AT89C51, chung ta a co
th iu khin c s tt sang cua bt ky con Led nao trn bang en, iu nay cho
chung ta mt s thich thu kho ta, cung qua bai vit nay ti nghi Ban a lam quen vi
cach dung bang Led ma trn lam hin hinh va cho chay ch, y la mt tai rt rt
hp dn, khi co dip chung ti se tr lai tai nay vi mt mc rng hn, cao hn.
Mong Ban thich bai vit nay.
(Ngun: http://www.phuclanshop.com/TraoDoiHocTap-ChiTiet.aspx?NewsId=136)

You might also like