You are on page 1of 55

Ti liu thc hnh Vi iu khin

BI 2: CC LNH C BN CA 89C51
MC CH

Gip sinh vin kho st cc vn sau: S dng phn mm Proteus m phng mch in. Thc hin m phng mt s lnh ca 89C51. My vi tnh. Phn mm Proteus

THIT B S DNG

1. C s l thuyt
M phng 89C51 thc hin qu trnh m phng 89C51 trong Proteus, ta cn thc hin cc bc sau: Bc 1: V mch nguyn l. Bc 2: nh ngha chng trnh dch

Chn menu Source > Define Code Generation Tools

Sau thc hin chn chng trnh dch mong mun. y ta thc hin m phng cho 89C51 nn chn chng trnh ASEM51.

Phm Hng Kim Khnh

Trang 9

Ti liu thc hnh Vi iu khin

Phn Tools: chn ASEM51, phn Command Line: g vo %1. Bc 3: nh ngha file chng trnh cho 89C51. Chn menu Source > Add/Remove Source File

Chn phn Code Generation Tool l ASEM51.

To file mi

Do cha c chng trnh cho 89C51, ta nhn vo nt New to file. Trong phn File name, ta g vo tn chng trnh (gi s g vo bai2).

Phm Hng Kim Khnh

Trang 10

Ti liu thc hnh Vi iu khin

Nu cha c file bai2.ASM, Proteus s xut hin thng bo yu cu to file, nhn Yes to:

Sao khi to file thnh cng, trn menu Source s xut hin thm file bai2.ASM.

Bc 4: nh ngha file thc thi cho 89C51

Chn file bai2.ASM son tho chng trnh ngun, nhp vo END v nhn nt Save.

Nhn Save lu

Sau khi lu file ngun, ta thc hin dch chng trnh ngun.

Phm Hng Kim Khnh

Trang 11

Ti liu thc hnh Vi iu khin

Khi bin dch, nu c li, chng trnh dch s thng bo li, nu khng th s to ra file bai2.HEX.

Thng bo chng trnh khng c li

Thc hin gn file thc thi cho 89C51 bng cch nhn chut phi ln 89C51 chn (89C51 s chuyn sang mu ) ri nhn chut tri m ca s thuc tnh ca 89C51.

Nt Browse: M chng trnh thc thi

Nhn vo nt Browse (hnh v trn) m chng trnh thc thi, chn chng trnh l bai2.HEX

Phm Hng Kim Khnh

Trang 12

Ti liu thc hnh Vi iu khin

Nhn nt Open m file, khi trong thuc tnh Program File ca 89C51 s c tn chng trnh l bai2.HEX.

Sau khi gn file thc thi cho 89C51, ta ch cn thc hin sa chng trnh ngun v bin dch li m khng cn gn li file thc thi. Cc lnh c bn Lnh MOV: di chuyn d liu MOV A,30h ; chuyn ni dung ca nh 30h vo thanh ghi A MOV A,#30h ; chuyn gi tr 30h vo thanh ghi A MOV A,R0 ; chuyn ni dung ca thanh ghi R0 vo thanh ghi A MOV A,@R0 ; chuyn ni dung ca nh vo thanh ghi A, a ch ca nh cha trong thanh ghi R0 (nu R0 = 30h th lnh ny tng ng lnh MOV A,30h) Lnh INC: tng gi tr ln 1 Lnh DEC: gim gi tr xung 1 Lnh SJMP: lnh nhy khng iu kin
Trang 13

VD:

Phm Hng Kim Khnh

Ti liu thc hnh Vi iu khin

Lnh DJNZ: gim v nhy khi gi tr khc 0. Lnh DJNZ thng dng to vng lp v c dng sau: MOV R7,#s_ln_lp

loop: DJNZ R7,loop Lnh CJNE: so snh v nhy nu khng bng CJNE A,#10,Khac ; on chng trnh x l khi ni dung thanh ghi A l 10 SJMP Tiep Khac: JC Lonhon ; on chng trnh x l khi ni dung thanh ghi A < 10 SJMP Tiep Lonhon: ; on chng trnh x l khi ni dung thanh ghi A > 10 Tiep: Lnh CALL: gi chng trnh con Lnh RET, RETI: lnh tr v t chng trnh con hay chng trnh phc v ngt Lnh DIV AB: chia ni dung thanh ghi A cho thanh ghi B, thng s cha trong A v s d cha trong B. Lnh MOVC: chuyn gi tr hng s vo thanh ghi A, thng dng cho mc ch tra bng MOV DPTR,#MaLed7 MOV A,#2 MOVC A,@A+DPTR Lnh PUSH: lu tr ni dung thanh ghi vo stack Lnh POP: ly ni dung t stack. V s mch nh hnh v: Cc linh kin cho nh sau: Keywords Category Sub-category Results Led Optoelectronics LEDs LED-RED Resistor Resistors Resistor packs RX8
Phm Hng Kim Khnh Trang 14

VD:

VD: Ly phn t th 2 ca bng MaLed7:

2. Tin trnh thc hin

Ti liu thc hnh Vi iu khin

Resistor 8951

Resistors All

Resistor packs RESPACK-8 All AT89C51

Hin th d liu ra Led Thc thi chng trnh sau v quan st trng thi ca Led: MOV P0,#0Fh ; Sng 4 Led phi END Xo in tr thanh RP1 ri thc thi chng trnh, quan st kt qu. Rt ra kt lun v tc dng ca in tr ko ln ngun RP1. Thay i chng trnh 4 Led bn phi sng, 2 Led gia sng, 2 Led ngoi cng sng.

- Thc thi chng trnh sau v quan st trng thi ca Led: Main: MOV P0,#0FFh CALL Delay MOV P0,#0 CALL Delay SJMP main Delay: PUSH 07h PUSH 06h MOV R6,#255 Delay1: MOV R7,#255 DJNZ R7,$
Phm Hng Kim Khnh Trang 15

; Sng 8 Led ; Tt 8 Led

Ti liu thc hnh Vi iu khin

DJNZ R6,Delay1 POP 06h POP 07h RET END Thay on in m bng on chng trnh sau v quan st trng thi cc Led: MOV P0,#01h CALL Delay MOV P0,#02h CALL Delay MOV P0,#04h CALL Delay MOV P0,#08h CALL Delay MOV P0,#10h CALL Delay MOV P0,#20h CALL Delay MOV P0,#40h CALL Delay MOV P0,#80h CALL Delay SJMP main Thay i chng trnh Led sng t trong ra ngoi. Thay th on in m bng on chng trnh sau v quan st trng thi cc Led: MOV R0,#0 MOV DPTR,#MaLed Lap: MOV A,R0 MOVC A,@A+DPTR MOV P0,A
Phm Hng Kim Khnh Trang 16

Main:

Main:

Ti liu thc hnh Vi iu khin

CALL Delay INC R0 CJNE R0,#9,Lap SJMP main MaLed: DB 00h,01h,03h,07h,0Fh,1Fh,3Fh,7Fh,0FFh - Thay i chng trnh Led sng tu . Kim tra cc lnh s hc Thc thi chng trnh sau v kim tra kt qu: MOV A,#19h ADD A,#72h MOV P0,A END Thc thi chng trnh sau v kim tra kt qu: MOV A,#57h MOV B,#10 DIV AB MOV P0,A MOV A,B MOV P1,A END

Phm Hng Kim Khnh

Trang 17

Ti liu thc hnh Vi iu khin

BI 3: IU KHIN LED 7 ON
MC CH

Gip sinh vin kho st cc vn sau: S dng phn mm Proteus m phng mch in. Tm hiu cc phng php hin th d liu trn Led 7 on dng 89C51. My vi tnh. Phn mm Proteus

THIT B S DNG

1. C s l thuyt
Cu trc v m hin th d liu trn Led 7 on Dng Led
a f g e d c dp b

Led Anode chung


COM

D1 a

D2 b

D3 c

D4 d

D5 e

D6 f

D7 g

D8 dp

dp

i vi dng Led anode chung, chn COM phi c mc logic 1 v mun sng Led th tng ng cc chn a f, dp s mc logic 0. Bng m cho Led Anode chung (a l MSB, dp l LSB): S 0 1 2 3 4 5
Phm Hng Kim Khnh

a 0 1 0 0 1 0

b 0 0 0 0 0 1

c 0 0 1 0 0 0

d 0 1 0 0 1 0

e 0 1 0 1 1 1

f 0 1 1 1 0 0

g dp M hex 1 1 03h 1 1 9Fh 0 1 25h 0 1 0Dh 0 1 99h 0 1 49h


Trang 18

Ti liu thc hnh Vi iu khin

6 7 8 9

0 0 0 0

1 0 0 0

0 0 0 0

0 1 0 0

0 1 0 1

0 1 0 0

0 1 0 0

1 1 1 1

41h 1Fh 01h 09h

Bng m cho Led Anode chung (a l LSB, dp l MSB): S dp g f e d c b a M hex 0 1 1 0 0 0 0 0 0 0C0h 1 1 1 1 1 1 0 0 1 0F9h 2 1 0 1 0 0 1 0 0 0A4h 3 1 0 1 1 0 0 0 0 0B0h 4 1 0 0 1 1 0 0 1 99h 5 1 0 0 1 0 0 1 0 92h 6 1 0 0 0 0 0 1 0 82h 7 1 1 1 1 1 0 0 0 0F8h 8 1 0 0 0 0 0 0 0 80h 9 1 0 0 1 0 0 0 0 90h Led Cathode chung
a
D1 a

b
D2 b

c
D3 c

d
D4 d

e
D5 e

g
D6 f

f
D7 g

dp
D8 dp

COM

i vi dng Led Cathode chung, chn COM phi c mc logic 0 v mun sng Led th tng ng cc chn a f, dp s mc logic 1. Bng m cho Led Cathode chung (a l MSB, dp l LSB): S 0 1 2 3 4 5 6 7 8 9 a 1 0 1 1 0 1 1 1 1 1 b 1 1 1 1 1 0 0 1 1 1 c 1 1 0 1 1 1 1 1 1 1 d 1 0 1 1 0 1 1 0 1 1 e 1 0 1 0 0 0 1 0 1 0 f 1 0 0 0 1 1 1 0 1 1 g dp M hex 0 0 0FCh 0 0 60h 1 0 0DAh 1 0 0F2h 1 0 66h 1 0 0B6h 1 0 0BEh 0 0 0E0h 1 0 0FEh 1 0 0F6h

Phm Hng Kim Khnh

Trang 19

Ti liu thc hnh Vi iu khin

Bng m cho Led Anode chung (a l LSB, dp l MSB): S dp g f e d c b a M hex 0 0 0 1 1 1 1 1 1 3Fh 1 0 0 0 0 0 1 1 0 06h 2 0 1 0 1 1 0 1 1 5Bh 3 0 1 0 0 1 1 1 1 4Fh 4 0 1 1 0 0 1 1 0 66h 5 0 1 1 0 1 1 0 1 6Dh 6 0 1 1 1 1 1 0 1 7Dh 7 0 0 0 0 0 1 1 1 07h 8 0 1 1 1 1 1 1 1 7Fh 9 0 1 1 0 1 1 1 1 6Fh Dng phng php qut Khi kt ni chung cc ng d liu ca Led 7 on (hnh v), ta khng th cho cc Led ny sng ng thi (do nh hng ln nhau gia cc Led) m phi thc hin phng php qut, ngha l ti mi thi im ch sng mt Led v tt cc Led cn li. Do hin tng lu nh ca mt, ta s thy cc Led sng ng thi.

Phm Hng Kim Khnh

Trang 20

Ti liu thc hnh Vi iu khin

Dng phng php cht Khi thc hin tch ring cc ng d liu ca Led, ta c th cho php cc Led sng ng thi m s khng c hin tng nh hng gia cc Led. IC cht cho php lu tr d liu cho cc Led c th s dng l 74LS373, 74LS374.

2. Tin trnh thc hin


Dng phng php qut S dng mch nh hnh v phn trn vi cc linh kin: Keywords 7seg 8951 Pnp Resistor main: MOV CLR CALL SETB MOV CLR CALL SETB
Phm Hng Kim Khnh

Category All All Transistor Resistors

Sub-category All All Generic Resistor Packs

Results Value 7SEG-COM-ANODE AT89C51 PNP RX8 220

Thc hin on chng trnh sau hin th s 26 ra 2 Led 7 on: P2,#82h P1.0 Delay P1.0 P2,#0A4H P1.1 Delay P1.1
Trang 21

; M ca s 6 ; Hin s

; M ca s 2

Ti liu thc hnh Vi iu khin

SJMP Delay: PUSH MOV DJNZ POP RET END -

main 07H R7,#100 R7,$ 07H

Sa on chng trnh trn hin th s 15, 37 ra 2 Led 7 on. B cc lnh SETB v nhn xt tc dng ca cc lnh ny.

Dng phng php cht S dng mch nh hnh v phn trn vi cc linh kin: Keywords 7seg 8951 374 Resistor Category All All 74 TTL Series Resistors Sub-category All All All Resistor Packs Results Value 7SEG-COM-ANODE AT89C51 74LS374 RX8 220

Thc hin on chng trnh sau hin th s 08 ra 2 Led 7 on: MOV CLR SETB MOV CLR SETB P2,#80h P1.0 P1.0 P2,#0C0H P1.1 P1.1 ; M ca s 0 ; M ca s 8

END Thc hin on chng trnh trn hin th s tng dn t 00 n 99 ra 2 Led 7 on. MOV lap: MOV MOV DIV MOV
Phm Hng Kim Khnh

main: 30H,#0 A,30H B,#10 AB ; A cha s hng chc, B, cha s ; hng n v ; nh 30h cha gi tr xut ra Led

DPTR,#Maled7
Trang 22

Ti liu thc hnh Vi iu khin

MOVC MOV CLR SETB MOV MOVC MOV CLR SETB CALL INC MOV CJNE SJMP Maled7: DB Delay: PUSH PUSH MOV Delay1: MOV DJNZ DJNZ POP POP RET END -

A,@A+DPTR P2,A P1.1 P1.1 A,B A,@A+DPTR P2,A P1.0 P1.0 Delay 30H A,30H A,#100,lap main

; Chuyn sang m Led 7 on

; Xut s hng chc

; Xut s hng n v

; Tng nh 30h ; Nu gi tr nh tng n 100 ; th gim v 0

;----------------0C0h,0F9h,0A4h,0B0h,99h,92h,82h,0F8h,80h,90h ;----------------07 06 R6,#255 R7,#255 R7,$ R6,Delay1 06 07

Sa on chng trnh trn gi tr xut ra 2 Led 7 on tng dn t 00 - 59. Sa on chng trnh trn gi tr xut ra 2 Led 7 on tng dn t 00 - 23.
Trang 23

Phm Hng Kim Khnh

Ti liu thc hnh Vi iu khin

Sa on chng trnh trn gi tr xut ra 2 Led 7 on gim dn t 99 - 00. Sa on chng trnh trn gi tr xut ra 2 Led 7 on gim dn t 59 - 00. Sa on chng trnh trn gi tr xut ra 2 Led 7 on gim dn t 23 - 00.

Phm Hng Kim Khnh

Trang 24

Ti liu thc hnh Vi iu khin

BI 4: CNG TC NHN
MC CH

Gip sinh vin kho st cc vn sau: S dng phn mm Proteus m phng mch in. Tm hiu cch thc kim tra cng tc c nhn hay khng v cc ng dng ca chng dng trong 89C51. My vi tnh. Phn mm Proteus

THIT B S DNG

1. C s l thuyt
Cng tc n Cc phm n dng iu khin khi h thng khng i hi nhiu gi tr nhp (chng nh ch cn cc iu khin ng m thit b). Khi thc hin kim tra phm nhn, vn cn thit l phi thc hin chng di. Qu trnh chng di c th thc hin bng phn mm: Do thi gian di ca phm vo khong 20ms nn qu trnh chng di bng phn mm n gin l to mt thi gian tr ln chng trnh b qua nh hng khi di. Khi thc hin giao tip gia cng tc n v vi iu khin MCS-51 th cn lu phi set bit tng ng ca vi iu khin ln mc logic 1 mi c th c d liu vo. Phn cng giao tip c th m t nh hnh v, tuy nhin i vi h MCS-51, cc port c in tr ko ln ngun (tr port 0) nn i vi s hnh a v c c th khng cn in tr R.
VCC R SW To uP SW To uP To uP R VCC VCC R SW

Bn phm Hex khi khng nhn phm th hng ca bn phm Hex ni vi Vcc thng qua in tr R nn c mc logic 1. phn bit c trng thi ca phm nhn th mc logic khi nhn phm phi l mc logic 0. M khi nhn mt phm no th tng ng hng v ct ca bn phm Hex s kt ni vi nhau. Do , thc hin kim tra mt phm th ta phi cho trc ct cha phm tng ng mc logic 0, sau kim tra hng ca phm, nu hng = 0 th c nhn phm cn hng = 1 th khng nhn phm.
Phm Hng Kim Khnh Trang 25

Ti liu thc hnh Vi iu khin

V d nh mun kim tra phm 4 th ta cho ct cha phm 4 mc logic 0 (chn 5 ca J1, cc ct khc = 1, ngha l d liu ti J1 l 1000xxxxb), sau thc hin kim tra chn 2 ca J1 (hng ca phm 4), nu chn ny = 0 th phm 4 c nhn.
VCC

R 0 1 2 3

8 CON8 1 2 3 4 5 6 7 8 J1

2. Tin trnh thc hin


Cng tc n S dng mch nh hnh v trang bn vi cc linh kin: Keywords 7seg 8951 374 Button Resistor MOV SJMP Main: JNB JNB SJMP SW1: INC 30H ; Tng nh 30h
Trang 26

Category All All 74 TTL Series Switches & Relays Resistors 30H,#0 Hienthi P3.0,Sw1 P3.1,Sw2 Main

Sub-category All All All All Resistor Packs

Results Value 7SEG-COM-ANODE AT89C51 74LS374 Button RX8 220

Thc hin chng trnh sau:

; Nu P3.0 = 0 th nhn SW1 ; Nu P3.1 = 0 th nhn SW2

Phm Hng Kim Khnh

Ti liu thc hnh Vi iu khin

MOV CJNE MOV SJMP ;------------Sw2: DEC MOV CJNE MOV SJMP ;------------Hienthi: MOV MOV DIV MOV MOVC MOV CLR SETB MOV MOV MOVC MOV CLR SETB CALL SJMP ;-------------Delay: PUSH PUSH MOV

A,30H A,#100,Hienthi 30H,#0 Hienthi ; Nu gi tr nh 30h = 100 ; th gn 30h = 0 ; Hin th ra Led 7 on

30H A,30H A,#255,Hienthi 30H,#99 Hienthi

; Gim nh 30h ; Nu gi tr gim = -1 (255) ; th gn 30h = 99

A,30H B,#10 AB DPTR,#Maled7 A,@A+DPTR P2,A P1.1 P1.1 A,B DPTR,#Maled7 A,@A+DPTR P2,A P1.0 P1.0 Delay Main

Maled7: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H

07 06 R6,#100
Trang 27

Phm Hng Kim Khnh

Ti liu thc hnh Vi iu khin

Delay1: MOV DJNZ DJNZ POP POP RET END Nhn vo cc cng tc v quan st trng thi cc Led. R7,#255 R7,$ R6,Delay1 06 07

B lnh CALL Delay trong chng trnh trn v quan st trng thi cc Led, c nhn xt g so vi khi c thi gian Delay.

Bn phm Hex S dng mch nh hnh v trang bn vi cc linh kin: Keywords 7seg 8951 374 Resistor Keypad Main: MOV JNB P3,#0FEH P3.4,Sw7
Trang 28

Category All All 74 TTL Series Resistors Switches & Relays

Sub-category All All All Resistor Packs All

Results 7SEG-COM-ANODE AT89C51 74LS374 RX8 KEYPADSMALLCALC

Value

220

Thc hin chng trnh sau:


; Chn ct cha cc phm 7,8,9,

Phm Hng Kim Khnh

Ti liu thc hnh Vi iu khin

JNB JNB JNB MOV JNB JNB JNB JNB MOV JNB JNB JNB JNB MOV JNB JNB JNB JNB SJMP Main ;------------SW0: MOV 30H,#0 SJMP Hienthi ;------------SW1: MOV 30H,#1 SJMP Hienthi ;------------SW2: MOV 30H,#2 SJMP Hienthi ;------------SW3: MOV 30H,#3 SJMP Hienthi ;------------SW4:

P3.5,Sw8 P3.6,Sw9 P3.7,Swchia P3,#0FDH P3.4,Sw4 P3.5,Sw5 P3.6,Sw6 P3.7,Swnhan P3,#0FBH P3.4,Sw1 P3.5,Sw2 P3.6,Sw3 P3.7,Swtru P3,#0F7H P3.4,Swon P3.5,Sw0 P3.6,Swbang P3.7,Swcong ; Chn ct cha cc phm ON/C,0,=,+ ; Chn ct cha cc phm 1,2,3,; Chn ct cha cc phm 4,5,6,X

Phm Hng Kim Khnh

Trang 29

Ti liu thc hnh Vi iu khin

MOV 30H,#4 SJMP Hienthi ;------------SW5: MOV 30H,#5 SJMP Hienthi ;------------SW6: MOV 30H,#6 SJMP Hienthi ;------------SW7: MOV 30H,#7 SJMP Hienthi ;------------SW8: MOV 30H,#8 SJMP Hienthi ;------------SW9: MOV 30H,#9 SJMP Hienthi ;------------Swon: MOV 30H,#10 SJMP Hienthi ;------------Swbang: MOV 30H,#11 SJMP Hienthi ;------------Swcong: MOV 30H,#12 SJMP Hienthi ;------------Swtru: MOV 30H,#13
Phm Hng Kim Khnh Trang 30

Ti liu thc hnh Vi iu khin

SJMP Hienthi ;------------Swnhan: MOV 30H,#14 SJMP Hienthi ;------------Swchia: MOV 30H,#15 SJMP Hienthi ;------------Hienthi:

MOV MOV DIV MOV MOVC MOV CLR SETB MOV MOV MOVC MOV CLR SETB CALL LJMP ;-------------Delay: PUSH PUSH MOV Delay1: MOV

A,30H B,#10 AB DPTR,#MALED7 A,@A+DPTR P2,A P1.1 P1.1 A,B DPTR,#MALED7 A,@A+DPTR P2,A P1.0 P1.0 Delay Main

Maled7: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H

07 06 R6,#100 R7,#255
Trang 31

Phm Hng Kim Khnh

Ti liu thc hnh Vi iu khin

DJNZ DJNZ POP POP RET END

R7,$ R6,Delay1 06 07

Sa chng trnh : Nhn phm +: thc hin cng ni dung nh 30h vi 20 v xut ra 2 Led 7 on. Nhn phm -: thc hin tr ni dung nh 30h vi 1 v xut ra 2 Led 7 on. Nhn phm x: thc hin nhn ni dung nh 30h vi 3 v xut ra 2 Led 7 on. Nhn phm : thc hin chia ni dung nh 30h vi 2 v xut kt qu ra 2 Led 7 on. Nhn phm ON/C: thc hin xo ni dung nh 30h (gn bng 0) v xut ra 2 Led 7 on.

Phm Hng Kim Khnh

Trang 32

Ti liu thc hnh Vi iu khin

BI 5: TIMER
MC CH

Gip sinh vin kho st cc vn sau: S dng phn mm Proteus m phng mch in. Tm hiu cch s dng Timer trong 89C51. My vi tnh. Phn mm Proteus

THIT B S DNG

1. C s l thuyt
Vi iu khin 89C51 c hai thanh ghi timer/counter 16 bit. Cc thanh ghi ny c th hot ng mt trong hai trng thi timer hoc counter. Mi thanh ghi gm 2 thanh ghi 8 bit ghp li:
PULSE INPUT THx : 8 BIT TLx : 8 BIT

Cu trc ca b Timer/ Counter trong 89C51 nh hnh sau.

Hot ng ca b Timer/Counter c iu khin bi hai thanh ghi TCON v TMOD


Phm Hng Kim Khnh Trang 33

Ti liu thc hnh Vi iu khin

Thanh ghi TCON (timer control): L thanh ghi 8 bit, c th truy xut byte hoc bit dng iu khin hot ng ca Timer.
7 TF1 6 5 4 TR0 3 IE1 2 1 0 IT0

TR1 TF0

IT1 IE0

TF1: bo trng thi trn cho b Timer/Counter1 TR1: iu khin cp xung cho b Timer/Counter1 TF0: bo trng thi trn cho b Timer/Counter0 TR0: iu khin cp xung cho b Timer/Counter0 IE1, IT1, IE0, IT0: s dng cho ngt ngoi 1 v ngt ngoi 0 (khng dng cho Timer). Thanh ghi TMOD (timer mode): L thanh ghi 8 bit, ch c th truy xut byte dng xc nh ch hot ng ca Timer.
7 GATE 6 5 4 M0 3 GATE 2 C/T 1 M1 0 M0

C/T M1

IEU KHIEN TIMER 1

IEU KHIEN TIMER 0

GATE, C/ T : iu khin trng thi hot ng cho Timer/ M1, M0: chn ch hot ng cho Timer/Counter M1 M0 CH 0 0 0 0 1 1 1 0 2 1 1 3 a/ Ch 0:
PULSE INPUT THx : 8 BIT TLx : 5 BIT TFx

M T Timer/Counter 13 bit Timer/Counter 16 bit Timer/Counter 8 bit, auto reload Timer/Counter 8 bit

Thanh ghi THx v TLx kt hp to thnh b Timer/Counter 13 bit, khi trn 13 bit th c TFx s t ln logic 1.

Phm Hng Kim Khnh

Trang 34

Ti liu thc hnh Vi iu khin

b/ Ch 1 (16 bit):
PULSE INPUT THx : 8 BIT TLx : 8 BIT TFx

c/ Ch 2 (8 bit Auto-Reload):
PULSE INPUT TLx : 8 BIT TFx

OVERFLOW

THx : 8 BIT

TLx c np gi tr ban u t THx v bt u m t gi tr ny khi c xung ng vo, khi trn th TFx s t ln logic 1 ng thi kch hot b kha np gi tr trong THx vo TLx. d/ Ch 4:
PULSE INPUT TL0 : 8 BIT TF0

OSC:12

TH0 : 8 BIT

TF1

TR1

Trong ch ny, TH1 v TL1 khng c s dng thay vo l TH0 v TL0 hot ng nh 2 b Timer 8 bit (TL0) v Timer/Counter 8 bit (TL0). Tuy nhin, tn hiu m xung cho TH0 khng phi l TR0 m l TR1.

2. Tin trnh thc hin


S dng mch nh hnh v trang bn vi cc linh kin: Keywords 7seg 8951 374 Resistor Category All All 74 TTL Series Resistors Sub-category All All All Resistor Packs Results Value 7SEG-COM-ANODE AT89C51 74LS374 RX8 220
Trang 35

Phm Hng Kim Khnh

Ti liu thc hnh Vi iu khin

- Thc hin chng trnh sau (to mt mch ng h m pht, giy): MOV MOV MOV Lap: MOV MOV DIV MOV MOVC MOV CLR SETB MOV MOVC MOV A,30H B,#10 AB DPTR,#Maled7 A,@A+DPTR P2,A P1.1 P1.1 A,B A,@A+DPTR P2,A
Trang 36

TMOD,#01H 30H,#0 31H,#0

; S dng Timer0, ch 16 bit

Phm Hng Kim Khnh

Ti liu thc hnh Vi iu khin

CLR SETB MOV MOV DIV MOV MOVC MOV CLR SETB MOV MOVC MOV CLR SETB CALL INC MOV CJNE MOV INC MOV CJNE MOV SJMP Delay: PUSH MOV SETB MOV MOV

P1.0 P1.0 A,31H B,#10 AB DPTR,#Maled7 A,@A+DPTR P2,A P1.3 P1.3 A,B A,@A+DPTR P2,A P1.2 P1.2 Delay 31H A,31H A,#60,Lap 31H,#0 30H A,30H A,#60,Lap 30H,#0 Lap ; 60 pht th ; pht = 0 ; 60s (1 pht) th ; giy = 0 ; v tng pht ln 1

Maled7: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H 07 R7,#20 TR0 TH0,#HIGH(-50000) TL0,#LOW(-50000)


Trang 37

Delay1: ; To tr 50000 chu k = 50000s = 50ms

Phm Hng Kim Khnh

Ti liu thc hnh Vi iu khin

JNB CLR DJNZ CLR POP RET END CALL INC MOV CJNE MOV INC MOV CJNE MOV SJMP PUSH SETB MOV MOV JNB CLR CLR POP RET END

TF0,$ ; Ch n khi Timer trn TF0 R7,Delay1 ; R7 = 20 TR0 07 lp li 20 ln to tr 20*50ms

Sa chng trnh thc hin m giy v %giy. Delay 31H A,31H A,#100,Lap ; 100% s (1 s) th 31H,#0 30H A,30H A,#60,Lap 30H,#0 Lap 07 TR0 TH0,#HIGH(-10000) TL0,#LOW(-10000) TF0,$ TF0 TR0 07 ; 60 s th ; giy = 0 ; %giy = 0 ; v tng giy ln 1

Delay: ; To tr 10ms

Phm Hng Kim Khnh

Trang 38

Ti liu thc hnh Vi iu khin

BI 6: INTERRUPT (NGT)
MC CH

Gip sinh vin kho st cc vn sau: S dng phn mm Proteus m phng mch in. Tm hiu cch s dng ngt trong 89C51. My vi tnh. Phn mm Proteus

THIT B S DNG

1. C s l thuyt
Thanh ghi IE (Interrupt Enable Register) Thanh ghi IE dng cho php hay cm cc ngt hot ng. Mc nh khi khi ng chng trnh th tt c cc ngt u b cm. Chc nng cc bit trong thanh ghi IE cho trong bng sau:

D7 D6 D5 D4 D3 EA -

D2

D1

D0

ES ET1 EX1 ET0 EX0

EA ES ET1

= 0: cm tt c cc ngt = 1: cho php ngt tu theo trng thi cc bit iu khin tng ng = 0: cm ngt ti port ni tip = 1: cho php ngt ti port ni tip = 0: cm ngt ti Timer 1 = 1: cho php ngt ti Timer 1

EX1 = 0: cm ngt ti ngt ngoi 1 ( INT1 : chn P3.3) = 1: cho php ngt ti ngt ngoi 1 ET0 = 0: cm ngt ti Timer 0 = 1: cho php ngt ti Timer 0 EX0 = 0: cm ngt ti ngt ngoi 1 ( INT0 : chn P3.2) = 1: cho php ngt ti ngt ngoi 1 cho php ngt ti Timer 0, ta phi c: EA = 1 v ET0 = 1. Ni dung ca thanh ghi IE khi l:

Phm Hng Kim Khnh

Trang 39

Ti liu thc hnh Vi iu khin

D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 0 0 0 1 0 = 82h

Chng trnh c th thc hin nh sau: SETB EA SETB ET0 Hay c th vit: MOV IE,#82h Danh sch cc ngt trong 89C51 - Ngt ngoi 0: a ch vector ngt Khai bo s dng ngt S kin ngt: 0003H - SETB EA - SETB EX0 - SETB IT0 (ngt cnh) Xut hin cnh xung (hoc mc thp) ti chn INT0

- Ngt timer0: a ch vector ngt Khai bo s dng ngt S kin ngt - SETB - SETB Trn timer 0 000BH EA ET0

- Ngt ngoi 1: a ch vector ngt Khai bo s dng ngt S kin ngt: 00013H - SETB EA - SETB EX1 - SETB IT1 (ngt cnh) Xut hin cnh xung (hoc mc thp) ti chn INT1

- Ngt timer1: a ch vector ngt Khai bo s dng ngt S kin ngt - SETB - SETB Trn timer 1 0001BH EA ET1

Phm Hng Kim Khnh

Trang 40

Ti liu thc hnh Vi iu khin

- Ngt truyn thng (truyn/nhn UART): a ch vector ngt Khai bo s dng ngt S kin ngt Tc truyn nhn MODE autoreload (timer1) 00023H - SETB EA - SETB ES Nhn c mt byte hoc truyn xong mt byte trong SBUF - TH1 = -3 ; 9600bps - TH1 = -6 ; 4800bps - TH1 = -12 ; 2400bps - TH1 = -24 ; 1200bps

S CHNG TRNH KHI C S DNG NGT:


KHAI BO NGT

S kin ngt

Vector ngt: . . RETI

Cu trc chng trnh s dng ngt Chng trnh s dng ngt bao gm 2 phn: phn chng trnh chnh v phn x l ngt. Mt on chng trnh v d s dng ngt ngoi 0 nh sau: ORG LJMP ORG LJMP Main: ; khai bo s dng ngt SETB EA SETB EX0 ; C th thay 2 lnh ny bng lnh MOV IE,#81h ; chng trnh chnh Int0_isr: ; chng trnh phc v ngt RETI END 0 main 0003h int0_isr ; a ch bt u chng trnh ; a ch chng trnh phc v ngt cho INT0

Phm Hng Kim Khnh

Trang 41

Ti liu thc hnh Vi iu khin

VSM Oscilloscope VSM Oscilloscope l thit b cho php hin th dng tn hiu tng t, bao gm 2 knh A v B. VSM c kh nng o 2 tn hiu ng thi. V tr ca Oscilloscope trong ca s thit k nh sau:

Hnh nh ca Oscilloscope khi thit k v thc thi chng trnh nh sau:

Mn hnh hin th dng sng tn hiu

Chn hin th knh 1 hay knh 2

Chn hin th ng thi 2 knh hay v knh 2 theo knh 1

ng b tn hiu (cho php dng tn hiu)

Chn ch hin th cho knh 1: - DC: hin th AC v DC - GND: chnh mc GND - AC: ch hin th AC
Phm Hng Kim Khnh

Chnh h s trc tung Y ca knh 2 (bin )

Chnh h s trc honh X (thi gian)

Trang 42

Ti liu thc hnh Vi iu khin

2. Tin trnh thc hin


Ngt Timer To xung vung S dng mch nh hnh v:

Thc hin chng trnh dng ngt Timer 0 to xung vung tn s f = 5 KHz ti P2.0 nh sau: ORG 0000h LJMP main ORG 000Bh LJMP timer0_isr

main: MOV IE,#82h MOV TMOD,#02h MOV TH0,#(-100) ; f = 5KHz MOV TL0,#(-100) ; tr l 100 s SETB TR0 Here: SJMP here ;----------Timer0_isr: CPL P2.0
Phm Hng Kim Khnh Trang 43

T = 1/f = 0.2ms = 200 s

thi gian

gi tr m ca Timer l 100

Ti liu thc hnh Vi iu khin

RETI END Thc hin chng trnh dng ngt Timer 0 v Timer 1 ng thi to xung vung tn s f = 5 KHz ti P2.0 v f = 500Hz ti P2.1 nh sau: ORG 0000h LJMP main ORG 000Bh LJMP Timer0_isr ORG 001Bh LJMP Timer1_isr main: SETB EA SETB ET0 SETB ET1 MOV TMOD,#12h MOV TH0,#(-100) MOV TL0,#(-100) SETB TR0 MOV TH1,#HIGH(-1000) MOV TL1,#LOW(-1000) SETB TR1 here: SJMP here ;----------Timer0_isr: CPL P2.0 RETI ;----------Timer1_isr: MOV TH1,#HIGH(-1000) MOV TL1,#LOW(-1000) CPL P2.1 RETI ;----------END
Phm Hng Kim Khnh Trang 44

Ti liu thc hnh Vi iu khin

Vit chng trnh dng ngt Timer 0 v Timer 1 ng thi to xung vung tn s f = 20 KHz ti P2.3 v f = 100Hz ti P2.4. Chn menu System > Set Sheet Sizes

Mch ng h -

Chn kch thc Sheet l A3:

S dng mch nh hnh v (cc IC cht s dng l 74LS374). Cc linh kin cho nh sau: Keywords 7seg 8951 374 Switch Category All All 74 TTL Series Switches & Relays Sub-category All All All Switches Results 7SEG-COM-ANODE AT89C51 74LS374 SW-SPDT

Phm Hng Kim Khnh

Trang 45

Ti liu thc hnh Vi iu khin

Chng trnh ng h: ORG 0 LJMP main ORG 0Bh LJMP Timer0_ISR main: SETB EA SETB ET0 MOV TMOD,#01h MOV TH0,#HIGH(-50000) MOV TL0,#LOW(-50000) MOV R7,#20 SETB TR0 MOV 30h,#0 MOV 31h,#0 MOV 32h,#0 CALL display here: SJMP here
Phm Hng Kim Khnh Trang 46

; m 50000 chu k = 50 ms ; 20 x 50ms = 1000ms = 1s ; Gi ; Pht ; Giy

Ti liu thc hnh Vi iu khin

;---------Timer0_ISR: MOV TH0,#HIGH(-50000) MOV TL0,#LOW(-50000) DJNZ R7,exittimer0 MOV R7,#20 CALL IncTime CALL display exittimer0: RETI ;--------IncTime: INC 32h MOV A,32h CJNE A,#60,ExitIncTime ; Nu Giy = 60 MOV 32h,#0 INC 31h MOV A,31h CJNE A,#60,ExitIncTime ; Nu Pht = 60 MOV 31h,#0 INC 30h MOV A,30h CJNE A,#24,ExitIncTime ; Nu gi = 24 MOV 30h,#0 ExitIncTime: RET ;--------display: MOV A,30h MOV B,#10 DIV AB MOV DPTR,#MaLed7 MOVC A,@A+DPTR MOV P2,A CLR P1.0
Phm Hng Kim Khnh Trang 47

; C mi 1s th tng thi gian ; v hin th ra Led

; Tng giy

; th Giy = 0 ; v tng pht

; th Pht = 0 ; v tng gi

; th Gi = 0

; Hin th 2 Led ch gi

Ti liu thc hnh Vi iu khin

SETB P1.0 MOV A,B MOVC A,@A+DPTR MOV P2,A CLR P1.1 SETB P1.1 MOV A,31h MOV B,#10 DIV AB MOV DPTR,#MaLed7 MOVC A,@A+DPTR MOV P2,A CLR P1.2 SETB P1.2 MOV A,B MOVC A,@A+DPTR MOV P2,A CLR P1.3 SETB P1.3 MOV A,32h MOV B,#10 DIV AB MOV DPTR,#MaLed7 MOVC A,@A+DPTR MOV P2,A CLR P1.4 SETB P1.4 MOV A,B MOVC A,@A+DPTR MOV P2,A CLR P1.5 SETB P1.5 RET ;--------MaLed7: DB 0C0h,0F9h,0A4h,0B0h,99h,92h,82h,0F8h,80h,90h
Phm Hng Kim Khnh Trang 48

; Hin th 2 Led ch pht

; Hin th 2 Led ch giy

Ti liu thc hnh Vi iu khin

END Sa chng trnh trn cho php m gi th thao: 2 Led ch pht, 2 Led ch giy v 2 Led ch %giy. S dng mch nh hnh v:

Ngt ngoi

Cc linh kin cho nh sau: Keywords 7seg 8951 374 Switch Category All All 74 TTL Series Switches & Relays Sub-category All All All Switches Results 7SEG-COM-ANODE AT89C51 74LS374 SW-SPDT

Vit chng trnh m s dng ngt ngoi 0 nh sau (mi ln c ngt xy ra th tng ni dung nh 30h ln 1 v xut ra Led 7 on): ORG 0 LJMP main ORG 03h LJMP Int0_ISR main: SETB EA SETB EX0 MOV 30h,#0 CALL display

Phm Hng Kim Khnh

Trang 49

Ti liu thc hnh Vi iu khin

here: SJMP here ;---------Int0_ISR: INC 30h MOV A,30h CJNE A,#100,next MOV 30h,#0 next: CALL display RETI ;--------display: MOV A,30h MOV B,#10 DIV AB MOV DPTR,#MaLed7 MOVC A,@A+DPTR MOV P2,A CLR P1.0 SETB P1.0 MOV A,B MOVC A,@A+DPTR MOV P2,A CLR P1.1 SETB P1.1 RET ;--------MaLed7: DB 0C0h,0F9h,0A4h,0B0h,99h,92h,82h,0F8h,80h,90h END Thm vo lnh cho php ngt bng cnh nh sau (ti on in m): SETB EA SETB EX0 SETB IT0
Phm Hng Kim Khnh Trang 50

Ti liu thc hnh Vi iu khin

So snh trng hp s dng ngt bng cnh v bng mc logic. Sa chng trnh trn cho php m t 10 50. Cc linh kin cho nh sau:

Kt hp ngt ngoi v ngt Timer. Keywords 7seg 8951 374 Switch Switch Subcategory All All All All 74 TTL Series All Switches & Switches Relays Switches & Switches Relays Category Results 7SEG-COM-ANODE AT89C51 74LS374 BUTTON BUTTON Componet Reference

INC DEC

S dng mch nh hnh v:

Chng trnh m giy v iu chnh gi tr hin th bng 2 cng tc (nhn INC th tng gi tr hin th v nhn DEC th gim gi tr hin th) nh sau: ORG 0 LJMP main ORG 03h LJMP Int0_ISR ORG 0Bh LJMP Timer0_ISR ORG 13h LJMP Int1_ISR
Phm Hng Kim Khnh Trang 51

Ti liu thc hnh Vi iu khin

main: SETB EA SETB EX0 SETB EX1 SETB ET0 SETB IT0 SETB IT1 MOV TMOD,#01h MOV TH0,#HIGH(-50000) MOV TL0,#LOW(-50000) MOV R7,#20 SETB TR0 MOV 30h,#0 CALL display here: SJMP here ;---------Int0_ISR: INC 30h MOV A,30h CJNE A,#100,next MOV 30h,#0 next: CALL display RETI ;---------Int1_ISR: DEC 30h MOV A,30h CJNE A,#255,next1 MOV 30h,#99 next1: CALL display RETI ;--------Phm Hng Kim Khnh Trang 52

Ti liu thc hnh Vi iu khin

Timer0_ISR: MOV TH0,#HIGH(-50000) MOV TL0,#LOW(-50000) DJNZ R7,exittimer0 MOV R7,#20 INC 30h MOV A,30h CJNE A,#100,next2 MOV 30h,#0 next2: CALL display exittimer0: RETI ;--------display: MOV A,30h MOV B,#10 DIV AB MOV DPTR,#MaLed7 MOVC A,@A+DPTR MOV P2,A CLR P1.0 SETB P1.0 MOV A,B MOVC A,@A+DPTR MOV P2,A CLR P1.1 SETB P1.1 RET ;--------MaLed7: DB 0C0h,0F9h,0A4h,0B0h,99h,92h,82h,0F8h,80h,90h END Sa chng trnh khi nhn INC th tng 2 n v v nhn DEC th gim 10 n v.

Phm Hng Kim Khnh

Trang 53

Ti liu thc hnh Vi iu khin

BI 7: GIAO TIP CC THIT B C BN


MC CH

Gip sinh vin kho st cc vn sau: S dng phn mm Proteus m phng mch in. Kho st phng php hin th trn ma trn Led, iu khin ng c, ng ngt Relay. My vi tnh. Phn mm Proteus

THIT B S DNG

1. C s l thuyt
Ma trn Led Ma trn LED bao gm nhiu LED cng nm trong mt v chia thnh nhiu ct v hng, mi giao im gia hng v ct c th c 1 LED (ma trn LED mt mu) hay nhiu LED (2 LED ti mt v tr to thnh ma trn LED 3 mu). LED ti mt v tr no sng th phi cp hiu in th dng gia Anode v Cathode. Trn c s cu trc nh vy, ta c th m rng hng v ct ca ma trn LED to thnh cc bng quang bo.

Kt ni ca ma trn Led c 2 cch: anode ni vi hng, cathode ni vi ct hay ngc li. S kt ni m t nh hnh v trang bn. Theo cu trc kt ni nh hnh v, 2 Led trn 2 ct khng th sng ng thi. Xt s kt ni nh mch hnh b, mt Led sng khi tng ng hng ca Led = 0 v ct = 1. Gi s ta cn sng Led ng thi ti hng 1, ct 1 v hng 2, ct 2. Nh vy, ta phi c hng 1 = 0, ct 1 = 1 (sng Led ti hng 1, ct 1) v hng 2 = 0, ct 2 = 1 (sng Led ti hng 2, ct 2). T , do hng 1 = 0, ct 2 = 1 v hng 2 = 0, ct 2 = 1 nn ta cng c cc Led ti hng 1, ct 2 v hng 2, ct 1 cng sng.

Phm Hng Kim Khnh

Trang 54

Ti liu thc hnh Vi iu khin

Ngha l, khi ta cho 2 Led ti hng 1, ct 1 v hng 2, ct 2 sng ng thi th s dn n cc Led ti hng 1, ct 2 v hng 2, ct 1 cng sng. Do , thc hin sng mt k t trn ma trn Led, ta phi dng c ch qut, ti mi thi im ch sng 1 ct, cc ct cn li tt i nhng nu cho thi gian qut nhanh th ta vn thy ging nh cc ct sng ng thi.

Hnh a

Hnh b

Phm Hng Kim Khnh

Trang 55

Ti liu thc hnh Vi iu khin

D liu cho s 0: X X X X X X X X X X X X X X X X

sng s 0 trn ma trn Led, ta thc hin qu trnh qut nh sau: Ln 1: Hng = 0100 0001b, ct = 0001 0000b Ln 2: Hng = 0011 1110b, ct = 0000 1000b Ln 3: Hng = 0011 1110b, ct = 0000 0100b Ln 4: Hng = 0011 1110b, ct = 0000 0010b Ln 5: Hng = 0100 0001b, ct = 0000 0001b iu khin Relay Relay hot ng nh mt cng tc in t bao gm mt chn thng ng (NC Normally Closed: chn 5) v mt chn thng m (NO - Normal Open: chn 4). Khi c dng in i qua cun dy (1-2) ca Relay, v tr ca cng tc s thay i t NC sang NO. Nh vy, khi khng c dng in qua cun dy th chn 3 ni vi chn 5 v khi c dng in th chn 3 ni vi chn 4. Dng ca Relay v s mch cho nh hnh v.
5 3 4 1 2

iu khin ng c bc ng c bc l ng c cho php dch chuyn mi ln mt bc hay na bc tu theo xung iu khin. Gc quay ca mi bc tu theo loi ng c, thng l 1.80/bc.

Phm Hng Kim Khnh

Trang 56

Ti liu thc hnh Vi iu khin

ng c bc gm 4 cun dy: 1-2, 2-3, 4-5 v 5-6 nh s sau:


MG1 1 2 3

STEPPER MOTOR

Mch iu khin ng c nh sau:


VCC

R1 Q1

D1 1 2 3

MG1

R2 Q2 D2

MOTOR STEPPER

R3 Q3 D3

R4 Q4 D4

Xung iu khin ng c nh sau: - iu khin mt bc: Ngc 1 1 0 0 0 1 0 1 0 0 0 2 0 0 1 0 0 3 0 0 0 1 0 4 1 0 0 0 1 1 0 0 0 1 0 2 0 0 1 0 0 Thun 3 0 1 0 0 0 4

Phm Hng Kim Khnh

Trang 57

Ti liu thc hnh Vi iu khin

1 1 1 1 0 0 0 0 0 1

iu khin na bc: Ngc 2 0 0 1 1 1 0 0 0 0 0 0 0 0 1 1 1 0 0 3 1 0 0 0 0 0 1 1 1 4 1 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 0 0 2 0 0 1 1 1 0 0 0 0 Thun 3 1 1 1 0 0 0 0 0 1 4

2. Tin trnh thc hin


Ma trn Led Thc hin mch nh hnh v sau:

Cc linh kin cho nh sau: Keywords Matrix 8951 Npn Resistor Resistor Category Optoelectronics All Transistors Resistors Resistors Sub-category All All Generic Generic Resistor Packs Results Value MATRIX-5X7-RED AT89C51 Npn RES Rx8 220

Phm Hng Kim Khnh

Trang 58

Ti liu thc hnh Vi iu khin

Chng trnh hin th s 0 trn ma trn Led: main: MOV R0,#0 lap: MOV A,R0 MOV DPTR,#cot MOVC A,@A+DPTR MOV P2,A MOV A,R0 MOV DPTR,#hang MOVC A,@A+DPTR MOV P3,A CALL delay INC R0 CJNE R0,#5,lap SJMP main ;----------delay: MOV TMOD,#01h MOV TL0,#LOW(-500) MOV TH0,#HIGH(-500) SETB TR0 JNB TF0,$ CLR TF0 CLR TR0 RET cot: DB 01h,02h,04h,08h,10h hang: DB 41h,3Eh,3Eh,3Eh,41h END main2: MOV R2,#0 main1:
Phm Hng Kim Khnh Trang 59

Vit chng trnh hin th du ? trn ma trn Led. Vit chng trnh hin th s 1 trn ma trn Led.

Chng trnh chy chui CDKTCN trn ma trn Led:

Ti liu thc hnh Vi iu khin

MOV R1,#20 main: MOV R0,#0 lap: MOV A,R0 MOV DPTR,#cot MOVC A,@A+DPTR MOV P2,A MOV A,R0 ADD A,R2 MOV DPTR,#hang MOVC A,@A+DPTR MOV P3,A CALL delay INC R0 CJNE R0,#5,lap DJNZ R1,main INC R2 CJNE R2,#37,main1 SJMP main2 ;----------delay: MOV TMOD,#01h MOV TL0,#LOW(-500) MOV TH0,#HIGH(-500) SETB TR0 JNB TF0,$ CLR TF0 CLR TR0 RET cot: DB 01h,02h,04h,08h,10h hang: DB 41h,3Eh,3Eh,3Eh,5Dh,7Fh ;C DB 00h,3Eh,3Eh,3Eh,41h,7Fh ;D DB 00h,77h,6Bh,5Dh,3Eh,7fh ;K DB 7Eh,7Eh,00h,7Eh,7Eh,7Fh ;T
Phm Hng Kim Khnh Trang 60

Ti liu thc hnh Vi iu khin

DB 41h,3Eh,3Eh,3Eh,5Dh,7Fh ;C DB 00h,7Dh,7Bh,77h,00h,7Fh ;N DB 7Fh,7Fh,7Fh,7Fh,7Fh END - Vit chng trnh chui TRUONG CAO DANG KINH TE CONG NGHE chy trn ma trn Led. iu khin Relay Thc hin mch nh hnh v sau:

Cc linh kin cho nh sau: Keywords Category Relay 8951 Button motor Source main: JB P2.1,$ CALL DELAY CPL P2.0 SJMP main
Phm Hng Kim Khnh Trang 61

Switches & Relays All Switches & Relays Electromechanical Simulator Primitives

Subcategory Relays (Generic) All All All All

Results Relay AT89C51 Button Motor Vsource

Value 5V

Voltage=5V

Chng trnh iu khin ng / ngt Relay mi ln nhn cng tc nh sau:

Ti liu thc hnh Vi iu khin

delay: MOV R7,#255 delay1: MOV R6,#255 DJNZ R6,$ DJNZ R7,delay1 RET END - Thm vo mt nt nhn ti P2.2, vit chng trnh iu khin khi nhn SW1 th ng Relay, nhn SW2 th ngt Relay. iu khin ng c Thc hin mch nh hnh v sau:

Cc linh kin cho nh sau: Keywords Category Resistor 8951 Tip122 Step Resistors All Transistors Electromechanical Subcategory Generic All All All Results Value

RES 4.7k AT89C51 Tip122 Motor-stepper

Chng trnh iu khin ng c quay thun lin tc, mi ln mt bc nh sau: main: MOV R2,#4 MOV R0,#0
Phm Hng Kim Khnh Trang 62

Ti liu thc hnh Vi iu khin

MOV DPTR,#thuan1buoc begin: MOV A,R0 MOVC A,@A+DPTR MOV P2,A CALL Delay INC R0 DJNZ R2, begin SJMP main delay: MOV TMOD,#01h MOV TH0,#HIGH(-50000) MOV TL0,#LOW(-50000) SETB TR0 JNB TF0,$ CLR TF0 CLR TR0 RET thuan1buoc: DB 08h,04h,02h,01h END - Vit chng trnh iu khin quay ngc ng c lin tc, mi ln mt bc. - Vit chng trnh iu khin quay thun ng c lin tc, mi ln na bc. - Vit chng trnh iu khin quay ngc ng c lin tc, mi ln na bc.

Phm Hng Kim Khnh

Trang 63

You might also like