You are on page 1of 12

KHOA CNG NGH I NT B MN I N T CNG NGHI P

TI LI U H NG D N TH NGHI M - TH C HNH

D. H TH NG I U KHI N BN PHM.

A. M C CH: Th c hnh l p trnh ng d ng trn my tnh, bin d ch chng trnh, n p vo vi i u khi n v s d ng m hnh th nghi m ki m ch ng. i u khi n thi t b ngo i vi b ng cc port c a vi i u khi n. i u khi n cc thi t b ngo i vi b ng bn phm (bn phm thi t k theo ki u ma tr n). Trnh by k thu t qut phm cho d ng bn phm ma tr n 16 phm (4 hng x 4 c t). Trnh by m t s ng d ng trong k thu t i u khi n bn phm.

B. YU C U: N m v ng t p l nh c a vi i u khi n MCS-51. Bi t cch vi t cc chng trnh i u khi n bn phm ma tr n. N m c s v nguyn l ho t ng c a kh i bn phm ma tr n trn m hnh th nghi m. N m c nguyn l v k thu t qut phm cho cc d ng bn phm ma tr n. Bi t cch vi t cc chng trnh ng d ng c s d ng bn phm ma tr n i u khi n cc thi t b ngo i vi khc nhau.

Gio trnh th c hnh vi x l.

Bin so n: Ph m Quang Tr

D. H TH NG Bi 1: Chng trnh i u khi n bn phm v BIN (LED sng = m c 1, LED t t = m (KEYPAD c n i v i Port0, LED

I U KHI N BN PHM. hi n th m c a phm nh n trn 8 LED d i d ng s c 0), khng phm no c nh n th m phm l FFH c n i v i Port1).

1 Trnh t ti n hnh th nghi m: 1.1 K t n i thi t b th nghi m. T t ngu n c p cho m hnh th nghi m. Dng dy bus 8 n i J64 (PORT1) kh i vi i u khi n v i J11 (BAR LED 1) kh i dy LED. Dng dy bus 8 n i J63 (PORT0 / DATA) kh i vi i u khi n v i J15 (KEYBOARD) kh i phm ma tr n. Dng dy bus 3 n i J103 (POWER) kh i dy LED v i ngu n +5V kh i ngu n.

LED DAY
BAR LED 2 POWER BAR LED 1

VI IEU KHIEN
POWER SW

NGUON +5V

BAN PHM MA TRAN


A0..A7 SELECT CHIP CLOCK OUT

1.2 S

nguyn l c a h th ng:
RP1
1

MA CH IEU KHIE N BAN PHM MA TRA N 4 x 4


+5V AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7

C2
33p

X1
12MHz

C1
33p

2 3 4 5 6 7 8 9 10K P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD

AD0

7 4 1
ON C
1

8 5 2 0
2 AD6

9 6 3 =
3 AD5

AD1

AD2 +5V 19

U1
XTAL1

18

C3
10uF 9

AD7

RST

R1
10k +5V +5V 29 30 31 PSEN ALE EA

RP2
1 2 3 4 5 6 7 8 9 10K D0 D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3 D4 D5 D6 D7 10 18 17 16 15 14 13 12 11

U2
COM 1C 2C 3C 4C 5C 6C 7C 8C ULN2803 1B 2B 3B 4B 5B 6B 7B 8B 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 AT89C51

21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17

+5V

+5V

+5V

+5V

+5V

+5V

AD4 +5V

XTAL2

39 AD0 38 AD1 37 AD2 36 AD3 35 AD4 34 AD5 33 AD6 32 AD7

AD3

+5V

R9
330

R8
330

R7
330

R6
330

R5
330

R4
330

R3
330

R2
330

D8

D7

D6

D5

D4

D3

D2

D1

D7

D6

D5

D4

D3

D2

D1

Gio trnh th c hnh vi x l.

Bin so n: Ph m Quang Tr

D0

D. H TH NG Bi 1: Chng trnh i u khi n bn phm v BIN (LED sng = m c 1, LED t t = m (KEYPAD c n i v i Port0, LED
1.3 V lu

I U KHI N BN PHM. hi n th m c a phm nh n trn 8 LED d i d ng s c 0), khng phm no c nh n th m phm l FFH c n i v i Port1).

gi i thu t v vi t chng trnh i u khi n.

;*************************************************** ;CHUONG TRINH DIEU KHIEN BAN PHIM MA TRAN 4 X 4. ;*************************************************** ;KET NOI: LED -> PORT1 (CO DEM DAO), KEYPAD -> PORT0. ;*************************************************** ORG 00H MAIN: LCALL SCANKEYPAD ;QUET KEYPAD JC MP1 ;KIEM TRA CO NHAN PHIM (C = 1) MOV A,#0FFH ;KHONG NHAN PHIM A = FFH MP1: ;CO NHAN PHIM A = MA PHIM MOV P1,A ;XUAT MA PHIM RA LED HIEN THI DANG SO BIN LJMP MAIN ;QUAY LAI KIEM TRA KEYPAD TIEP ;*************************************************** SCANKEYPAD: ;CTC QUET BAN PHIM MA TRAN 4 X 4, CO CHONG DOI. PUSH 03H MOV R3,#50 ;SO LAN LAP DE CHONG DOI BACK: ACALL GETKEY ;GOI CTC QUET PHIM JNC NOPRESSED ;C = 0 -> THOAT KHI KHONG CO PHIM NHAN. DJNZ R3,BACK ;C = 1 -> CO PHIM NHAN, GIAM SO LAN LAP DE CHONG DOI NOPRESSED: POP 03H RET ;*************************************************** GETKEY: PUSH 05H PUSH 06H PUSH 07H MOV A,#0EFH ;BAT DAU TAI COT 0 MOV R6,#4 ;R6 LAM BO DEM COT TEST: MOV P0,A ;TICH CUC COT MOV R7,A ;LUU ACC MOV A,P0 ;DOC LAI TU PORT 1 ANL A,#0FH ;CACH LY CAC HANG CJNE A,#0FH,KEYPRESSED ;HANG TICH CUC ? MOV A,R7 ;N -> DI CHUYEN TOI RL A ;COT KE TIEP DJNZ R6,TEST CLR C ;KHONG CO PHIM DUOC NHAN HAY NHAN NHIEU PHIM CUNG LUC SJMP EXIT ;THOAT VOI C = 0 KEYPRESSED: MOV R7,A ;LUU TRONG R7

Gio trnh th c hnh vi x l.

Bin so n: Ph m Quang Tr

D. H TH NG Bi 1: Chng trnh i u khi n bn phm v BIN (LED sng = m c 1, LED t t = m (KEYPAD c n i v i Port0, LED
MOV CLR SUBB MOV MOV MOV AGAIN: RRC JNC INC INC INC INC DJNZ DONE: SETB MOV EXIT: POP POP POP RET END 07H 06H 05H C A,R6 A DONE R6 R6 R6 R6 R5,AGAIN A,#4 C A,R6 R6,A A,R7 R5,#4

I U KHI N BN PHM. hi n th m c a phm nh n trn 8 LED d i d ng s c 0), khng phm no c nh n th m phm l FFH c n i v i Port1).

;CHUAN BI TINH ;TRONG SO CUA COT ;4 - R6 = TRONG SO ;LUU TRONG R6 ;PHUC HOI MA QUET ;DUNG R5 LAM BO DEM ;QUAY CHO DEN KHI = 0 ;THUC THI XONG KHI C = 0 ;CONG 4 CHO DEN KHI TIM THAY HANG TICH CUC

;CO PHIM NHAN -> C = 1 ;MA TRONG A

1.4 Lu chng trnh v bin d ch chng trnh. 1.5 Ki m tra l i v hi u ch nh l i n u c. 1.6 G n chip vi i u khi n th nghi m vo socket tng ng trn kh i n p chip v b t ngu n cho kh i n p chip ho t ng. 1.7 N p chng trnh vo vi i u khi n. 1.8 S d ng vi i u khi n v a n p g n vo socket tng ng trn kh i vi i u khi n. 1.9 B t ngu n cho m hnh th nghi m. Quan st k t qu ho t ng, n u k t qu ho t ng khng ng yu c u c a bi th ph i quay l i ki m tra vi c k t n i m ch, hi u ch nh chng trnh v lm l i cc b c t b c 3 n b c 9. 2 Bi t p: Bi 1: Hy vi t chng trnh i u khi n v hi n th m c a phm nh n trn LED 7 phng php k t n i bn phm v LED 7 o n. Bi 2: Hy vi t chng trnh i u khi n v hi n th m c a phm nh n trn LED ma phng php k t n i bn phm v LED ma tr n. Bi 3: Hy vi t chng trnh i u khi n v hi n th tn c a phm nh n trn LED 7 phng php k t n i bn phm v LED 7 o n. Bi 4: Hy vi t chng trnh i u khi n v hi n th tn c a phm nh n trn LED ma phng php k t n i bn phm v LED ma tr n. Bi 5: Sinh vin t mnh suy ngh v pht tri n thm chng trnh. o n. T l a ch n tr n. T l a ch n o n. T l a ch n tr n. T l a ch n

Gio trnh th c hnh vi x l.

Bin so n: Ph m Quang Tr

D. H TH NG I U KHI N BN PHM. Bi 2: Chng trnh i u khi n bn phm v bi u di n cc ki u hi n th trn tm LED thng qua cc phm c nh n (KEYPAD c n i v i Port0, LED c n i v i Port1): Nh n phm F1: 8 LED sng t t 3 l n. Nh n phm F2: 8 LED sng d n v t t d n. Nh n phm F3: 8 LED m ln nh phn. Nh n phm F4: 8 LED sng d n. 1 Trnh t ti n hnh th nghi m: 1.1 K t n i thi t b th nghi m. Qu trnh k t n i thi t b th nghi m tng t nh Bi 1. 1.2 S nguyn l c a h th ng: S nguyn l c a h th ng tng t nh Bi 1. 1.3 V lu gi i thu t v vi t chng trnh i u khi n.
D2

BEGIN
MAIN: I U KHI N T T LED (P1) = 00H G I CTC QUT BN PHM SCANKEYPAD PHM NH N (A) 00H
F1

CHOPTAT
CHOPTAT: I U KHI N LED SNG (P1) = 11111111B / 1 = SNG G I CTC T O TR

SANGDON
SANGDON: C T T M GI TR C A THANH GHI A VO STACK N P S L N D CH BIT (R0) = 08H TR NG THI DY LED L N D N U TIN (R1) = 00000000B / 0 = T T LAP2: N P S L N PH I D CH BIT (R2) = (R0) N P TR NG THI D CH BIT U TIN (R3) = 000000001B / 1 = SNG LAP1: N P TR NG THI D CH BIT (A) = (R3) K T H P TR NG THI DY LED V TR NG THI D CH BIT HI N T I (A) = (R3) + (R1) XU T D LI U RA PORT (P1) = (A)

SANGDAN
SANGDAN: C T T M GI TR C A THANH GHI A VO STACK N P GI TR U (A) = 0 / 0 = T T SD1: THI T L P C C / 1 = SNG (C) = 1 XU T D LI U RA PORT (P1) = (A)

DELAY500MS
I U KHI N LED T T (P1) = 00000000B / 0 = T T G I CTC T O TR DELAY500MS I U KHI N LED SNG (P1) = 11111111B / 1 = SNG G I CTC T O TR

S G I CTC LED CH P T T CHOPTAT NEXT1: PHM NH N (A) 04H


F2

G I CTC T O TR

DELAY500MS
D CH TRI (A) KM C RLC A / SNG D N CHA SNG 8 LED (C) = 0 SD2: S XA C C / 0 = T T (C) = 0 XU T D LI U RA PORT (P1) = (A)

DELAY500MS
I U KHI N LED T T (P1) = 00000000B / 0 = T T G I CTC T O TR DELAY500MS I U KHI N LED SNG (P1) = 11111111B / 1 = SNG G I CTC T O TR

S G I CTC LED SNG/T T D N SANGDAN NEXT2: PHM NH N (A) 08H


F3

S G I CTC LED M LN DEMLEN NEXT3: PHM NH N (A) 0CH


F4

DELAY500MS
I U KHI N LED T T (P1) = 00000000B / 0 = T T G I CTC T O TR DELAY500MS

G I CTC T O TR

G I CTC T O TR

DELAY500MS
D CH TRI (A) KM C RLC A / T T D N CHA T T 8 LED (C) = 1 S L Y L I GI TR CHO THANH GHI A T STACK

DELAY500MS
D CH TRI (R3) RL A / SNG U I GIM S L N D CH BIT (R2)

S G I CTC LED SNG D N SANGDON NEXT4:

RET DEMLEN
DEMLEN: C T T M GI TR C A THANH GHI A VO STACK N P GI TR B T U M (A) = 00H DL: XU T D LI U RA LED (P1) = (A) G I CTC T O TR DELAY500MS TNG GI TR (+1) (A) = (A) + 1 CHA (A) M XONG 00H

S L N D CH BIT 0 (CHA D CH BIT XONG)

SCANKEYPAD
(XEM CTC NY T I PH N H NG D N C A V D D2)

GIM S

S L N PH I D CH BIT (R0) = (R0) - 1

RET

DELAY500MS
(XEM CTC NY T I V D A1)

THAY I TR NG THI DY LED CHO L N D N K TI P (D CH PH I BIT 1 VO R1)


S L N PH I D CH 0 (CHA 8 L N)

RET

S L Y L I GI TR CHO THANH GHI A T STACK

RET

;*************************************************** ;CHUONG TRINH DIEU KHIEN LED HIEN THI CAC KIEU KHAC NHAU KHI ;TA NHAN CAC PHIM TREN BAN PHIM MA TRAN 4 X 4. ;*************************************************** ;KET NOI: LED -> PORT1 (CO DEM DAO), KEYPAD -> PORT0. ;*************************************************** ORG 00H

Gio trnh th c hnh vi x l.

Bin so n: Ph m Quang Tr

D. H TH NG I U KHI N BN PHM. Bi 2: Chng trnh i u khi n bn phm v bi u di n cc ki u hi n th trn tm LED thng qua cc phm c nh n (KEYPAD c n i v i Port0, LED c n i v i Port1): Nh n phm F1: 8 LED sng t t 3 l n. Nh n phm F2: 8 LED sng d n v t t d n. Nh n phm F3: 8 LED m ln nh phn. Nh n phm F4: 8 LED sng d n.
MAIN: MOV LCALL CJNE LCALL NEXT1: CJNE A,#04H,NEXT2 LCALL SANGDAN NEXT2: CJNE A,#08H,NEXT3 LCALL DEMLEN NEXT3: CJNE A,#0CH,NEXT4 LCALL SANGDON NEXT4: LJMP MAIN ;QUAY LAI KIEM TRA KEYPAD TIEP ;*************************************************** SCANKEYPAD: ;CTC QUET BAN PHIM MA TRAN 4 X 4, CO CHONG DOI. PUSH 03H MOV R3,#50 ;SO LAN LAP DE CHONG DOI BACK: ACALL GETKEY ;GOI CTC QUET PHIM JNC NOPRESSED ;C = 0 -> THOAT KHI KHONG CO PHIM NHAN. DJNZ R3,BACK ;C = 1 -> CO PHIM NHAN, GIAM SO LAN LAP DE CHONG DOI NOPRESSED: POP 03H RET ;*************************************************** GETKEY: PUSH 05H PUSH 06H PUSH 07H MOV A,#0EFH ;BAT DAU TAI COT 0 MOV R6,#4 ;R6 LAM BO DEM COT TEST: MOV P0,A ;TICH CUC COT MOV R7,A ;LUU ACC MOV A,P0 ;DOC LAI TU PORT 1 ANL A,#0FH ;CACH LY CAC HANG CJNE A,#0FH,KEYPRESSED ;HANG TICH CUC ? MOV A,R7 ;N -> DI CHUYEN TOI RL A ;COT KE TIEP DJNZ R6,TEST CLR C ;KHONG CO PHIM DUOC NHAN HAY NHAN NHIEU PHIM CUNG LUC SJMP EXIT ;THOAT VOI C = 0 KEYPRESSED: MOV R7,A ;LUU TRONG R7 MOV A,#4 ;CHUAN BI TINH CLR C ;TRONG SO CUA COT SUBB A,R6 ;4 - R6 = TRONG SO MOV R6,A ;LUU TRONG R6 MOV A,R7 ;PHUC HOI MA QUET MOV R5,#4 ;DUNG R5 LAM BO DEM AGAIN: RRC A ;QUAY CHO DEN KHI = 0 JNC DONE ;THUC THI XONG KHI C = 0 INC R6 ;CONG 4 CHO DEN KHI TIM THAY HANG TICH CUC INC R6 INC R6 INC R6 DJNZ R5,AGAIN DONE: SETB C ;CO PHIM NHAN -> C = 1 MOV A,R6 ;MA TRONG A ;KHONG PHAI PHIM F4 -> KIEM TIEP ;PHIM F4 DUOC NHAN -> CHAY CHUONG TRINH CON TUONG UNG ;KHONG PHAI PHIM F3 -> KIEM TIEP ;PHIM F3 DUOC NHAN -> CHAY CHUONG TRINH CON TUONG UNG ;KHONG PHAI PHIM F2 -> KIEM TIEP ;PHIM F2 DUOC NHAN -> CHAY CHUONG TRINH CON TUONG UNG P1,#00H SCANKEYPAD A,#00H,NEXT1 CHOPTAT ;LED TAT ;QUET KEYPAD ;KHONG PHAI PHIM F1 -> KIEM TIEP ;PHIM F1 DUOC NHAN -> CHAY CHUONG TRINH CON TUONG UNG

Gio trnh th c hnh vi x l.

Bin so n: Ph m Quang Tr

D. H TH NG I U KHI N BN PHM. Bi 2: Chng trnh i u khi n bn phm v bi u di n cc ki u hi n th trn tm LED thng qua cc phm c nh n (KEYPAD c n i v i Port0, LED c n i v i Port1): Nh n phm F1: 8 LED sng t t 3 l n. Nh n phm F2: 8 LED sng d n v t t d n. Nh n phm F3: 8 LED m ln nh phn. Nh n phm F4: 8 LED sng d n.
EXIT: POP 07H POP 06H POP 05H RET ;*************************************************** CHOPTAT: ;CTC DIEU KHIEN 8 LED SANG TAT MOV P1,#0FFH ;LED SANG LCALL DELAY500MS MOV P1,#00H ;LED TAT LCALL DELAY500MS MOV P1,#0FFH ;LED SANG LCALL DELAY500MS MOV P1,#00H ;LED TAT LCALL DELAY500MS MOV P1,#0FFH ;LED SANG LCALL DELAY500MS MOV P1,#00H ;LED TAT LCALL DELAY500MS RET ;*************************************************** DEMLEN: ;CTC DIEU KHIEN 8 LED DEM LEN NHI PHAN PUSH ACC MOV A,#00H ;LED TAT DL: MOV P1,A LCALL DELAY500MS INC A ;TANG NHI PHAN CJNE A,#00H,DL ;KIEM TRA DEM LEN HOAN TAT POP ACC RET ;*************************************************** SANGDAN: ;CTC DIEU KHIEN 8 LED SANG DAN VA TAT DAN PUSH ACC MOV A,#00H ;KHOI DONG GIA TRI BAN DAU SD1: SETB C ;C=1 MOV P1,A ;HIEN THI LCALL DELAY500MS RLC A ;DICH BIT 1 SANG TRAI KEM C, SANG DAN JNC SD1 ;CHUA SANG HET THI LAM TIEP SD2: CLR C ;C=0 MOV P1,A ;HIEN THI LCALL DELAY500MS RLC A ;DICH BIT 1 SANG TRAI KEM C, TAT DAN JC SD2 ;CHUA TAT HET THI LAM TIEP POP ACC RET ;*************************************************** SANGDON: PUSH ACC MOV R0,#08H ;LUU SO LAN DICH BIT MOV R1,#00H ;TRANG THAI LED KHI DON LAN DAU TIEN LAP2: MOV R2,00H MOV R3,#01H LAP1: MOV A,R3 ORL A,R1 MOV P1,A ;HIEN THI LCALL DELAY500MS MOV A,R3 ;DON LED RL A

Gio trnh th c hnh vi x l.

Bin so n: Ph m Quang Tr

D. H TH NG I U KHI N BN PHM. Bi 2: Chng trnh i u khi n bn phm v bi u di n cc ki u hi n th trn tm LED thng qua cc phm c nh n (KEYPAD c n i v i Port0, LED c n i v i Port1): Nh n phm F1: 8 LED sng t t 3 l n. Nh n phm F2: 8 LED sng d n v t t d n. Nh n phm F3: 8 LED m ln nh phn. Nh n phm F4: 8 LED sng d n.
MOV R3,A DJNZ R2,LAP1 ;CHUA DON XONG? QUAY LAI DEC R0 ;GIAM SO LAN DON LED SETB C ;THAY DOI TRANG THAI LED CHO LAN DON TIEP THEO MOV A,R1 RRC A MOV R1,A CJNE R0,#00H,LAP2 ;CHUA HOAN TAT CHU TRINH? QUAY L I POP ACC RET ;*************************************************** DELAY500MS: ;CTC TAO THOI GIAN TRE 500MS PUSH 00H MOV R0,#100 MOV TMOD,#01H DEL1: MOV TH0,#HIGH(-5000) MOV TL0,#LOW(-5000) SETB TR0 JNB TF0,$ CLR TR0 CLR TF0 DJNZ R0,DEL1 POP 00H RET END

1.4 Th c hi n l n l t cc b c t 1.3 2

n 1.8 tng t nh bi trn.

Bi t p: Bi 1: Hy vi t chng trnh i u khi n v bi u di n cc ki u hi n th c a chu i k t DIEN-TU trn tm LED 7 o n. T l a ch n phng php k t n i bn phm v LED 7 o n. Nh n phm ENTER: hi n th chu i. Nh n phm ESC: khng hi n th chu i. Nh n phm 1: sng t t chu i lin t c. Nh n phm 2: d ch chuy n chu i t ph i sang tri lin t c. Nh n phm 3: d ch chuy n chu i t tri sang ph i lin t c. Sinh vin t mnh suy ngh v pht tri n thm chng trnh. Bi 2: Hy vi t chng trnh i u khi n v bi u di n cc ki u hi n th c a m t s chu i k t trn tm LED 7 o n. T l a ch n phng php k t n i bn phm v LED 7 o n. Nh n phm ESC: khng hi n th chu i. Nh n phm 1: hi n th chu i COCACOLA. Nh n phm 2: hi n th chu i PEPSI. Nh n phm 3: hi n th chu i FANTA. Nh n phm 4: hi n th chu i TRIBECO. Nh n phm 5: hi n th chu i NUOCSUOI. Sinh vin t mnh suy ngh v pht tri n thm chng trnh. Bi 3: Hy vi t chng trnh i u khi n v bi u di n cc ki u hi n th c a LED1. T l a ch n phng php k t n i bn phm v LED 7 o n. Nh n phm ESC: khng hi n th . Nh n phm 1: hi n th m BCD t 0 ln 9 trn LED1. Nh n phm 2: hi n th m BCD t 9 xu ng 0 trn LED1. Nh n phm 3: hi n th m HEX t 0 ln F trn LED1. Nh n phm 4: hi n th m HEX t 9 xu ng 0 trn LED1. Sinh vin t mnh suy ngh v pht tri n thm chng trnh. Bi 4: Hy vi t chng trnh i u khi n v bi u di n cc ki u hi n th c a k t A trn LED ma tr n. T l a ch n phng php k t n i bn phm v LED ma tr n. Nh n phm F1: hi n th k t mu . 9 Bin so n: Ph m Quang Tr

Gio trnh th c hnh vi x l.

D. H TH NG I U KHI N BN PHM. Bi 2: Chng trnh i u khi n bn phm v bi u di n cc ki u hi n th trn tm LED thng qua cc phm c nh n (KEYPAD c n i v i Port0, LED c n i v i Port1): Nh n phm F1: 8 LED sng t t 3 l n. Nh n phm F2: 8 LED sng d n v t t d n. Nh n phm F3: 8 LED m ln nh phn. Nh n phm F4: 8 LED sng d n. Nh n phm F2: hi n th k t mu xanh. Nh n phm F3: hi n th k t mu vng. Nh n phm ESC: khng hi n th k t . Sinh vin t mnh suy ngh v pht tri n thm chng trnh. Bi 5: Hy vi t chng trnh i u khi n v bi u di n cc ki u hi n th c a LED ma tr n. T l a ch n phng php k t n i bn phm v LED ma tr n. Nh n phm ESC: khng hi n th . Nh n phm 1: hi n th m BCD t 0 ln 9 trn LED ma tr n. Nh n phm 2: hi n th m BCD t 9 xu ng 0 trn LED ma tr n. Nh n phm 3: hi n th cc k t t A n Z trn LED ma tr n. Nh n phm 4: hi n th cc k t t Z n A trn LED ma tr n. Bi 6: Hy vi t chng trnh i u khi n v bi u di n cc ki u hi n th c a chu i k t DAI HOC CONG NGHIEP TP HO CHI MINH trn LED ma tr n. T l a ch n phng php k t n i bn phm v LED ma tr n. Nh n phm ESC: khng hi n th chu i. Nh n phm 1: d ch chuy n chu i t ph i sang tri lin t c. Nh n phm 2: d ch chuy n chu i t tri sang ph i lin t c. Sinh vin t mnh suy ngh v pht tri n thm chng trnh. Bi 7: Hy vi t chng trnh i u khi n v bi u di n cc ki u hi n th c a hai chu i k t DAI HOC CONG NGHIEP TP HO CHI MINH v KHOA DIEN TU trn LED ma tr n. T l a ch n phng php k t n i bn phm v LED ma tr n. Nh n phm ESC: khng hi n th chu i. Nh n phm 1: d ch chuy n chu i t ph i sang tri lin t c. Nh n phm 2: d ch chuy n chu i t tri sang ph i lin t c. Nh n phm F1: ch n chu i hi n th c mu . Nh n phm F2: ch n chu i hi n th c mu xanh. Nh n phm F3: ch n chu i hi n th l DAI HOC CONG NGHIEP TP HO CHI MINH. Nh n phm F4: ch n chu i hi n th l KHOA DIEN TU. Bi 8: Sinh vin t mnh suy ngh v pht tri n thm chng trnh.

H ng d n:

KHNG NH N PHM

NH N PHM ENTER

NH N PHM ESC

NH N PHM F4

NH N PHM F3

NH N PHM F2

Gio trnh th c hnh vi x l.

10

NH N PHM F1

NH N PHM 1

NH N PHM 4

NH N PHM 7

NH N PHM 0

NH N PHM 2

NH N PHM 5

NH N PHM 8

NH N PHM 3

NH N PHM 6

NH N PHM 9

Bin so n: Ph m Quang Tr

D. H TH NG I U KHI N BN PHM. Bi 2: Chng trnh i u khi n bn phm v bi u di n cc ki u hi n th trn tm LED thng qua cc phm c nh n (KEYPAD c n i v i Port0, LED c n i v i Port1): Nh n phm F1: 8 LED sng t t 3 l n. Nh n phm F2: 8 LED sng d n v t t d n. Nh n phm F3: 8 LED m ln nh phn. Nh n phm F4: 8 LED sng d n. Chng trnh con qut phm c ch ng d i: o Lu :
SCANKEYPAD
NAME: INPUT: SCANKEYPAD - QUT BN PHM MA TR N 4x4. P0.0 P0.3 = HNG 0 HNG 3 (M NH N D NG PHM NH N). P0.4 P0.7 = C T 0 - C T 3 (TN HI U QUT, TCH C C = 0) OUTPUT: C PHM NH N (CY) = 1 V (A) = M PHM (00H 0FH). KHNG PHM NH N (CY) = 0 V (A) = KHNG XC NH.

GETKEY
GETKEY: C T T M GI TR C A R5, R6, R7 VO STACK N P M QUT C T U TIN (A) = 11101111B = EFH N P GI TR B MC T (R6) = 4 TEST: XU T M QUT C T (P0) = (A) LU M QUT C T HI N T I (R7) = (A) C GI TR T BN PHM (A) = (P0) = c4c3c2c1h4h3h2h1B

SCANKEYPAD: C T T M GI TR C A R3 VO STACK N P TH I GIAN CH NG D I PHM KHI NH N PHM (R0) = 50 - S L N L P BACK: G I CTC T O M PHM NH N GETKEY GIM S L N QUT

S L NL P0 (CHA XONG)

S L Y L I GI TR CHO R3 T STACK

RET
LU M HNG C A PHM C NH N (R7) = (A) N P GI TR TNH TR NG S C A C T C PHM C NH N (A) = 4 - S L NG C T

TCH L Y GI TR HNG RA KH I GI TR C T BN PHM (XA B GI TR C T) (A) = (A) AND 0FH c4c3c2c1h4h3h2h1B AND 00001111B = 0000h4h3h2h1B (A) = 0000h4h3h2h1B
C NH N

KEYPRESSED:

(A)

C NH N PHM 00001111B 0FH

KHNG NH N

L Y L I M QUT C T HI N T I (R7) = (A) D CH M QUT SANG C T K TI P RL A GIM GI TR B M C T (-1) (R6) = (R6) - 1


GI TR B M0 (CHA QUT C T XONG)

TNH TR NG S (NH NH T) C A C T C PHM C NH N TR NG S (MIN) = S L NG C T - GI TR B MC T (A) = (A) - (R6) LU TR NG S C A C T C PHM C NH N (R6) = (A) L Y L I M HNG C A PHM C NH N DNG TNH TON V T O M PHM (A) = (R7) N P GI TR S PHM TRONG M T C T (R5) = 4 AGAIN:

XA C

S CY V KHNG C PHM NH N (CY) = 0

XOAY M HNG TM V TR PHM C NH N THU C HNG NO - TM M C TH P (0) RRC A


TM C V TR (CY) = 0

S TNG TR NG S CHO HNG K TI P (R6) = (R6) + 4 GIM GI TR S PHM TRONG M T C T (R5) = (R5) - 1 (R5) 0
(CHA KI M TRA H T PHM)

S TC

DONE:

CY V C PHM NH N (CY) = 1

LU M PHM C NH N (A) = (R6) EXIT: L Y L I GI TR CHO R5, R6, R7 T STACK

RET

Gio trnh th c hnh vi x l.

11

Bin so n: Ph m Quang Tr

D. H TH NG I U KHI N BN PHM. Bi 2: Chng trnh i u khi n bn phm v bi u di n cc ki u hi n th trn tm LED thng qua cc phm c nh n (KEYPAD c n i v i Port0, LED c n i v i Port1): Nh n phm F1: 8 LED sng t t 3 l n. Nh n phm F2: 8 LED sng d n v t t d n. Nh n phm F3: 8 LED m ln nh phn. Nh n phm F4: 8 LED sng d n. o Chng trnh m u:
;*************************************************** ;CTC QUET BAN PHIM MA TRAN 4 X 4, CO CHONG DOI. ;*************************************************** ;NAME: SCANKEYPAD. ;INPUT: PORT 0 (ROW0...ROW4 -> P0.0...P0.3 & COL0...COL4 -> P0.4...P0.7). ;OUTPUT: C = 1: CO PHIM NHAN - ACC = CHUA MA PHIM (00H -> FFH). ; C = 0: KHONG CO PHIM NHAN. ;*************************************************** SCANKEYPAD: PUSH 03H MOV R3,#50 ;SO LAN LAP DE CHONG DOI BACK: ACALL GETKEY ;GOI CTC QUET PHIM JNC NOPRESSED ;C = 0 -> THOAT KHI KHONG CO PHIM NHAN. DJNZ R3,BACK ;C = 1 -> CO PHIM NHAN, GIAM SO LAN LAP DE CHONG DOI NOPRESSED: POP 03H RET ;*************************************************** GETKEY: PUSH 05H PUSH 06H PUSH 07H MOV A,#0EFH ;BAT DAU TAI COT 0 MOV R6,#4 ;R6 LAM BO DEM COT TEST: MOV P0,A ;TICH CUC COT MOV R7,A ;LUU ACC MOV A,P0 ;DOC LAI TU PORT 1 ANL A,#0FH ;CACH LY CAC HANG CJNE A,#0FH,KEYPRESSED ;HANG TICH CUC ? MOV A,R7 ;N -> DI CHUYEN TOI RL A ;COT KE TIEP DJNZ R6,TEST CLR C ;KHONG CO PHIM DUOC NHAN HAY NHAN NHIEU PHIM CUNG LUC SJMP EXIT ;THOAT VOI C = 0 KEYPRESSED: MOV R7,A ;LUU TRONG R7 MOV A,#4 ;CHUAN BI TINH CLR C ;TRONG SO CUA COT SUBB A,R6 ;4 - R6 = TRONG SO MOV R6,A ;LUU TRONG R6 MOV A,R7 ;PHUC HOI MA QUET MOV R5,#4 ;DUNG R5 LAM BO DEM AGAIN: RRC A ;QUAY CHO DEN KHI = 0 JNC DONE ;THUC THI XONG KHI C = 0 INC R6 ;CONG 4 CHO DEN KHI TIM THAY HANG TICH CUC INC R6 INC R6 INC R6 DJNZ R5,AGAIN DONE: SETB C ;CO PHIM NHAN -> C = 1 MOV A,R6 ;MA TRONG A EXIT: POP 07H POP 06H POP 05H RET ;***************************************************

Gio trnh th c hnh vi x l.

12

Bin so n: Ph m Quang Tr

You might also like