ĐỒ Án mÔn hỌc 2

61
ÑOÀ AÙN MOÂN HOÏC 2 TRÖÔØNG ÑAÏI HOÏC SÖ PHAM KYÕ THUAÄT TPHCM KHOA ÑIEÄN_ÑIEÄN TÖÛ BOÄ MOÂN ÑIEÄN TÖÛ COÂNG NGHIEÄP ÑOÀ AÙN MOÂN HOÏC 2 ÑEÀ TAØI: MAÏCH ÑIEÀU KHIEÅN GIAO THOÂNG DUØNG AT89C51 SVTH:LEÂ VAÊN CAÛNH MSSV:08401095 GVHD:NGUYEÃN TRÖÔØNG DUY TP.Ñaø Naüng,thaùng 12 naêm 2011 SVTH: Leâ vaên Caûnh_Lôùp 08401DA Trang1

Upload: kieu-phan

Post on 27-Sep-2015

231 views

Category:

Documents


4 download

DESCRIPTION

MẠCH ĐIỀU KHIỂN GIAO THÔNG 89C51

TRANSCRIPT

LI NOI AU

O AN MON HOC 2

TRNG AI HOC S PHAM KY THUAT TPHCM

KHOA IEN_IEN T

BO MON IEN T CONG NGHIEP

O AN MON HOC 2

E TAI: MACH IEU KHIEN GIAO THONG DUNG AT89C51

SVTH:LE VAN CANH

MSSV:08401095

GVHD:NGUYEN TRNG DUY

TP.a Nang,thang 12 nam 2011

NHIEM VU O AN MON HOC

Ho va ten:Le van Canh

MSSV:08401095

LP:08401DA

E TAI:

MACH IEU KHIEN EN GIAO THONG DUNG AT89C51

Noi dung thc hien:

ng dung vi ieu khien thiet ke mach ieu khien en giao thong dung AT89C51.

Viet chng trnh ieu khien bang ngon ng assembly.

Vi thi gian sang cac en la:en xanh 32s,en o 35s,va en vang 3s.

Hng dan thc hien:

a Nang,thang 12 nam 2011

Sinh vien thc hien:

Le van Canh

LI NOI AU

Vi s phat trien manh me cua khoa hoc ky thuat, con ngi a va ang tiep can vi nhng thiet b ng dung khoa hoc ky thuat tien tien. Chnh nhng thiet b co tnh cong nghe cao nay a em lai nhng li ch het sc to ln trong suoc song nh: tang nang suat lao ong, giam ganh nang phai lao ong chan tay cho con ngi Cac thiet b ien t co tnh thong minh cao a lam tang o chnh xac, tang nang suat, gon nhe.

S ra i cua ho vi ieu khien giup chung ta thiet ke cac mach ieu khien n gian hn nhng van co kha nang x ly nhieu hoat ong phc tap ,de dang thao tac va s dung. e tm hieu bo vi ieu khien mot cach khoa hoc va mang lai hieu qua cao lam nen tang cho viec xam nhap vao he thong toi tan hn em a quyet nh nghien cu bo Vi ieu Khien At89c51 Va ng Dung No Vao ieu Khien en Giao Thong Cong Cong .

Bai thi cuoi khoa nay c trnh bay gom:

Gii thieu ve ho vi ieu khien 89C51

ng dung vi ieu khien AT89C51 vao ieu khien en giao thong .

Mac du a co gang hoan thanh e tai tot nghiep c giao, nhng v nang lc va thi gian co han nen e tai chac chan co nhieu han che . Em rat mong s thong cam va s giup them cua quy thay co e e tai nay c hoan thien hn.

a Nang 02/12/2011

Sinh vien thc hien

Le van Canh

LI CAM N

S thanh cong cua e nay nay ngoai s no lc cua chnh ban than con co s giup cua cac thay co Khoa ien - ien T a truyen at nhng kien thc c ban cho em, giup cho em co mot nen tang ve ien t e sau nay bc vao i mot cach vng vang hn.

Qua ay, em gi ti cac thay co cua Khoa ien - ien T li cam n sau sac nhat. ac biet la thay NGUYEN TRNG DUY , trong thi gian va qua a tan tnh hng dan em hoan thanh e tai nay va a cho em nhieu li khuyen bo ch.

a Nang, Ngay 02 thang 12 nam 2011

Sinh vien thc hien

Le van Canh

MUC LUC NHIEM VU O AN MON HOC........................................................2

LI NOI AU3

LI CAM N4

MUC LUC............................................................................................... 5

PHAN 1:GII THIEU E TAI6

1.AT VAN E6

2.MUC TIEU6

3.GII THIEU NHNG SAM PHAM LIEN QUAN6

4.CAC PHNG AN THC HIEN.........................................6

5.LA CHON PHNG AN.....................................................7

6.GII HAN E TAI..................................................................7

PHAN 2. NOI DUNG.............................................................................8

CHNG 1.

11.TONG QUAN VE VI IEU KHIEN 89C518

1.2.CAU TRUC PHAN CNG CUA 89C51............................11

1.3.HOAT ONG RESET21

1.4.HOAT ONG CUA TIMER22

1.5.HOAT ONG CUA PORT NOI TIEP31

1.6.HOAT ONG NGAT32

1.7.BO NH NGOAI34

CHNG2 : THIET KE37

2:TONG QUAN VE HE THONG

EN GIAO THONG37

2.1.S O KHOI37

2.2.S O NGUYEN LY38

2.3.TINH PHAN NGUON38

2.4.CHON MACH DAO ONG39

2.5.MACH RESET40

2.6:MACH HIEN TH EM LUI..............................................41

3:MUC LUC43

3.1.Y TNG THIET KE PHAN MEM43

3.2.CHNG TRNH IEU KHIEN HE THONG MACH

EN GIAO THONG VA ONG HO EM LUI44

3.3.CHNG TRNH ASSEMBLY IEU KHIEN MACH

EN GIAO THONG45

PHAN 3: KET LUAN VA HNG PHAT TRIEN E TAI...........49

TAI LIEU THAM KHAO50

PHAN 1.GII THIEU E TAI

1. at van e;

Ngay nay cong nghe che tao cac loai may moc phuc vu cho i song con ngi ngay cang phat trien. ac biet cong nghe che tao xe may phat trien vt bac vi nhieu kieu dang vo cung a dang va phong phu c moi ngi rat a chuong va a vao s dung. Chnh v the mat o xe may lu thong tren ng rat ong va ty le tai nan giao thong do xe may gay ra chiem ty le rat ln. V ly do o cac luat giao thong c ra i va a vao s dung mot cach lang le roi dan dan pho bien. Trong o en giao thong la mo hnh thc te nhat ro rang va co vai tro rat ln trong viec giam tai nan khi i qua cac ng giao nhau. T thc te o em quyet nh thiet ke mach en giao thong dung vi ieu khien 89C51 lam e tai cho bai thi cuoi khoa cua mnh nham giup cho sinh vien co y thc trong viec chap hanh luat le an toan giao thong.

2.Muc tieu.

Thc hien bai thi cuoi khoa la s tong hp kien tc cua cac mon hoc. Do o giup chung ta on lai kien thc a hoc va ong thi hoc hoi nhng kien thc mi hn nham nang cao s hieu biet cua mnh ve van e can nghien cu. Co le oi vi hau het sinh vien muc tieu nghien cu la e

bao ve qua bai thi cua mnh nhng o ch la muc tieu tc thi ma thoi con

muc tieu ln hn la t bai thi nay chung ta rut ra c bai hoc g? Va kiem tra lai sc hoc cua mnh qua t au nam en nay.

3.Nhng san pham lien quan.

Thc ra en giao thong co the thiet ke bang IC so. Tuy nhien qua trnh thiet ke phc tap ton nhieu IC va o chnh xac khong cao. Ngc lai dung vi ieu khien rat gon gang o chnh xac cao dung t IC. The nhng dung IC x ly co nhng kho khan hn la oi hoi phai viet chng trnh nap cho IC ieu khien thong qua mach nap.

4.Cac phng an thc hien.

4.1.Phng an 1.

1.1.Khoi nguon:Khoi nay dung 1 bien the va cau chnh lu e co nguon 5vDC , 12vDC dong khoang 1A e cung cap cho toan bo mach.

1.2.Khoi vi ieu khien :S dung vi ieu khien khoi nay co nhien vu suat d lieu ra cac en giao thong va cac led 7 oan c viet bang ngon ng assembly.

1.3.Khoi hien th em lui;.s dung 4 led 7 oan e thc hien viec em lui thi gian hoat ong cua cac en.

1.4.Khoi cong suat cach ly: Tn hieu lay t vi ieu khien trc khi qua en phai qua mach cong suat cach ly ay ta s dung ien tr va transiistor (loai B562).

1.5.Khoi hien th cac en: Khoi nay thc hien lenh cua khoi cong suat cung cap,khoi nay dung cac led thc hien.

4.2.Phng an 2.

2.1.khoi nguon: Khoi nay dung 1 bien the va cau chnh lu e co nguon 5vDC , 12vDC dong khoang 1A e cho cac IC,vi ieu khien,rle lam viec.

2.2.Khoi vi ieu khien:

S dung Vi ieu Khien AT89C51.Khoi nay co nhiem vu xuat d lieu ra cac en giao thong va cac Led 7 oan.

2. 3 Khoi hien th em lui

S dung 1IC LS7447 va 4 Led 7 oan e thc hien viec em xuong thi gian hoat ong cua cac en .

2. 4. Khoi cong suat cach ly.

Viec ieu khien he thong en giao thong la ieu khien theo kieu ON/OFF. Tn hieu lay t Vi ieu Khien phai qua mach cach ly vi phan mach co ien the cao e tranh ien ap cao anh hng en phan mach ieu khien. ay khoi cong suat s dung Rle e ieu khien en theo phng phap ON/OFF

2.5.Khoi hien th: Khoi nay thc hien lenh cua khoi cong suat cung cap,khoi nay dung cac led thc hien.

5.La cho phng an.

Thay v chon phng an 2 th ta chon phng an 1.

phng an 1 ta tiet kiem c 1 so linh kien,vi en giao thong viec s dung lien tuc ma dung rle rat de b hong,neu co thi cong thi mat nhieu thi gian.

6.Gii han e tai.

a thiet ke c mach ieu khien n gian hoat ong tot,tin cay va de s dung.

Do kien thc va kinh ngiem con non nt nen y tng thiet ke va viet chng trnh con s xai do o mach ch mang tinh chat nghien cu va hoc tap va thc hanh tai trng.

PHAN 2. NOI DUNG

CHNG 1.Tong quan ve k thuat vi ieu khien (89C51)

1.1.Khai quat chung.

Vao nam 1971 tap oan intel a gii thieu 8080, bo vi x ly thanh cong au tien. Sau o Motorola,RCA, Mostechnology va zilog lan lt gii thieu cac bo vi x ly tng t: 6800,1801,6502 va Z80

Bo vi ieu khien MC (Microcontroller) la chp co the lap trnh c e ieu khien hoat ong cua he thong, no c ng dung rat nhieu trong cac san pham cong nghiep va tieu dung. Bo vi ieu khien hoat ong nh chng trnh ieu khien, khi nhan c tn hieu t thiet b ieu khien ben ngoai vao, bo vi ieu khien x ly va thc hien chc nang cua no tuy thuoc vao chng trnh.

Vi ieu khien la thiet b tng t nh bo vi x ly, c ra i t yeu cau giam sat ieu hanh he thong. Nam 1976, Intel gii thieu chp vi ieu khien au tien tren the gii la 8748. Mach tch hp cha hn 17000 BJT, no bao gom mot CPU, 1 KB EPROM, 64 Byte RAM ..., 27 chan I/O va mot bo nh thi 8 Bit. Cac cong ty khac cung lan lt cho ra i cac bo vi ieu khien co chc nang tng t hnh thanh hoMSC-48.

Nam 1980 ,Intel a tiep tuc cho ra i the he th hai cua bo vi ieu khien n chp (Single Chip-MC) la 8051 vi hn 60000 BJT, bao gom 1 CPU, 4KB ROM ,128 Byte RAM, 32 chan I/O , 1 cong noi tiep, 2 bo nh thi 16 bit. t lau sau hamg loat cac IC co chc nang tng t 8051 ra i hnh thanh ho MSC-51.

Tap oan Siemens cung cap bo vi ieu khien th hai thuoc ho MCS-51 cung cap chip SAB80515 mot cai tien cua 8051 cha trong mot vo 68 chan ,co 6 port xuat/nhap 8 bit ,13 nguon tao ra ngat va mot bo bien oi A/D 8 bit vi 8 kenh ngo vao

en nay ho MSC-51 a co tren 250 thanh vien va c hau het cac cong ty hang au tren the gii che tao : ASM, Siemens, Philip , Dallas, OKI.

2.1. S o khoi chung cua bo vi ieu khien.

RESET

5V

R2

10k

K

+

C

10uF

R1

100

Hnh1.1 S o khoi cua bo vi ieu khien

a. n v x ly trung tam CPU(Central Processing unit).

La thanh phan chnh cua bo vi ieu khien, no quan ly tat ca hoat ong cua bo vi ieu khien, thc hien cac phep toan tren so lieu. Hau het cac CPU ch bao gom mot tap cac mach logic nham thc hien lien tuc hai hoat ong chnh la :tm nap lenh va thi hanh lenh.CPU co kha nang hieu va thc thi cac lenh da tren mot tap cac ma nh phan ,moi mot ma nh phan bieu th mot thao tac n gian.

b. Bo nh ban dan RAM va ROM(EPROM).

Bo nh dung e lu tr chng trnh va d lieu, co hai bo nh Ram va Rom. chung ta co the phan biet s khac nhau gia Ram va Rom da tren hai tnh nang.

Th nhat: Ram (Random Access memory) la bo nh cho phep oc va ghi d lieu con Rom (Read only memory) la bo nh ch oc, trong mot so chip Vi ieu khien con s dung Eprom (Erasable programmable rom) la Rom lap trnh co the xoa c e thay the cho Rom.

Th hai:D lieu trong Ram se b mat i khi khong cung cap ien con d lieu trong Rom khong b mat i khi khong cung cap nguon cho no.

c. Bus a ch, Bus d lieu va Bus ieu khien.

Bus la tap hp cac ng day mang thong tin vi cung muc ch. Trong chip Vi ieu khien co 3 loai Bus la bus a ch ,bus d lieu va bus ieu khien. Trong hoat ong oc hay ghi,CPU xac nh v tr cua d lieu bang cach at mot a ch vao bus a ch, roi kch hoat mot tn hieu ieu khien e ch nh hoat ong o la oc hay ghi.

Hoat ong oc se lay mot byte d lieu t bo nh tai mot v tr xac nh roi at len bus d lieu. CPU oc d lieu va at d lieu vao mot trong cac thanh ghi noi tru cua CPU. Hoat ong ghi th ngc lai, CPU lay d lieu a ra bus d lieu. Nh co tn hieu ieu khien, bo nh nhan biet c ay la mot hoat ong ghi va no se lu d lieu tren vao vung nh a xac nh nh a ch ma CPU a gi ti no t trc.

Bus d lieu mang thong tin trao oi gia CPU va bo nh, gia CPU va thiet b I/O. o rong cua bus d lieu ong vai tro quan trong trong van e tang toc cho mot bo Vi ieu khien, 89C51 co o rong bus d lieu la 8 bit, hien nay bo vi ieu khien s dung bus a ch va d lieu don kenh, ngha la s dung cung mot ng truyen cho cac bus d lieu va mot so a ch. trong trng hp nay bo vi ieu khien co them cac mach ngoai e phan tch cac tn hieu a ch va d lieu trong cac bus tng ng.

Cac bus d lieu hoat ong theo hai hng, con a ch th hoat ong theo mot hng. bi v thong tin a ch luon c cung cap bi CPU, nhng d lieu th co the lu thong theo ca hai chieu tuy theo hoat ong ghi vao hay oc ra.Thong tin lu tr tren bus d lieu co the la nhng lenh cua chng trnh, a ch gan vao cau lenh, d lieu c s dung bi chng trnh. bus ieu khien la mot to hp cac bao hieu , mot bao hieu co mot vai tro xac nh e ieu khien hoat ong cua he thong hoat ong mot cach hieu qua. nhng tn hieu ieu khien la nhng tn hieu nh thi c cung cap bi CPU nham ong bo viec van chuyen thong tin tren bus a ch va bus d lieu.

1.2. Cau truc phan cng cua 89C51.

Cac ac iem cua 89C51 c tom tat nh sau :

4KB ROM ben trong.

128 Ram noi.

4 Port xuat nhap ( I/O) 8 bit.

Giao tiep noi tiep.

64 KB vung nh ngoai.

64 KB vung nh d lieu ngoai.

Bo x ly bt (Thao tac tren cac bit rieng re).

210 v tr nh c nh a ch, moi v tr mot bit.

Nhan/chia trong 4 (s

15

A

1.2.1. S o khoi cua 89C51 c trnh bay hnh 1-1.

.

Hnh 1.2: S o khoi cua 89C51

1.2.3. S o chan 89C51, chc nang tng chan.

a .S o chan 89C51.

AT89C51

9

18

19

29

30

31

1

2

3

4

5

6

7

8

21

22

23

24

25

26

27

28

10

11

12

13

14

15

16

17

39

38

37

36

35

34

33

32

20

40

RST

XTAL2

XTAL1

PSEN

ALE/PROG

EA/VPP

P1.0

P1.1

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

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

P0.0/AD0

P0.1/AD1

P0.2/AD2

P0.3/AD3

P0.4/AD4

P0.5/AD5

P0.6/AD6

P0.7/AD7

GND

VCC

Hnh1.3:S o chan va chc nang cua 89C51

b . Chc nang tng chan.

-AT89C51 co tat ca 40 chan, trong o 32 chan co chc nang xuat nhap (trong thiet ke nho) c chia thanh 4 cong 8 bit va 8 chan co chc nang khac.

Port 0.

Port 0 la port co 2 chc nang cac chan 31

39 cua AT89C51.Trong cac thiet ke c nho khong dung bo nh m rong no co chc nang nh cac ng I/O. oi vi cac thiet ke c ln co bo nh m rong, no c ket hp gia Bus a ch va Bus d lieu.

Port 1.

Port 1 la port ch co mot cong dung la xuat nhap,cac chan t 1- 8 .c dung e giao tiep vi thiet b ben ngoai khi co yeu cau ,khong co chc nang nao khac na gan cho cac chan cua port 1,ngha la chung ch c s dung e giao tiep vi cac thiet b ngoai vi.

Port 2.

-Port 2 la port co tac dung kep tren cac chan 21

28 ,hoac lam nhiem vu xuat nhap hoac la Byte a ch cao cua Bus a ch oi vi cac thiet b dung bo nh chng trnh ngoai.

Port 3.

-Port 3 la port co tac dung kep tren cac chan 10

17.Cac chan cua port nay co nhieu chc nang, cac cong dung chuyen oi co lien he vi cac ac tnh ac biet cua 89C51 c liet ke nh sau: Bit Ten a ch Bit Chc nang

-P3.0RXD B0HChan nhan d lieu t port noi tiep

-P3.1TXD B1HChan phat d lieu t port noi tiep

-P3.2INTO B2HNgo vao ngat ngoai 0

-P3.3INT1 B3HNgo vao ngat ngoai 1

-P3.4T0 B4H Ngo vao cua bo nh thi/em 0

-P3.5T1 B5HNgo vao cua bo nh thi/em 1

-P3.6WR B6Hieu khien ghi bo nh d lieu ngoai

-P3.7RD B7H ieu khien oc bo nh d lieu ngoai

* Chan 9 (RST)

La ngo vao xoa chnh cua 89C51 dung e thiet lap lai trang thai ban au cho he thong hay goi tat la reset he thong.Bnh thng cac chan nay mc thap.Khi ta a chan nay len cao mc logic1 (Toi thieu 2 chu ky may).Th nhng thanh ghi noi 89C51 c nap nhng gia tr thch hp cho viec khi ong lai he thong.

*Cac chan 18,19(XTAL1 & XTAL2)

c noi vi bo dao ong thach anh 11.0592MHz e tao dao ong tren chp. Hai tu 30pF c them vao e on nh dao ong.

*Chan 29 (

PSEN

)

89C51 cung cap 4 tn hieu ieu khien Bus .Tn hieu cho phep bo nh chng trnh

PSEN

(program store enable) la tn hieu xuat tren chan 29. ay la tn hieu ieu khien cho phep ta truy xuat bo nh chng trnh ngoai. Chan nay thng noi vi chan cho phep xuat

OE

(output enable) cua EPROM (hoac ROM) e cho phep oc cac byte lenh.

Tn hieu

PSEN

mc logic 0 trong suot thi gian tm nap lenh . Cac ma nh phan cua chng trnh hay opcode (ma thao tac) c oc t EPROM qua bus d lieu va c chot vao thanh ghi lenh IR cua 89C51 e c giai ma.Khi thc thi mot chng trnh cha ROM noi,

PSEN

c duy tr mc logic khong tch cc (logic 1).

*Chan 30 (ALE : Address Latch Enable)

AT89C51 s dung chan 30, chan xuat tn hieu cho phep chot a ch ALE e giai a hp bus d lieu va bus a ch .Khi Port0 c s dung lam bus a ch/d lieu a hp , chan ALE xuat tn hieu e chot a ch (byte thap cua a ch 16 bit) vao mot thanh ghi ngoai trong suot na chu ky au cua bo nh. Luc nay cac chan cua Port0 se xuat nhap d lieu trong suot na th hai cua chu ky bo nh

Tn hieu ALE co tan so bang 1/6 tan so cua mach dao ong ben trong chp vi ieu khien va co the c dung lam xung clock cho phan con lai cua he thong .

*Chan truy xuat ngoai

EA

(chan 31)

Neu chan nay noi len 5V (logic 1) AT89C51 se thc thi chng trnh trong ROM noi ,(chng trnh nho hn 4K/8K) . Neu chan nay noi vi GND (va chan

PSEN

cung logic 0) , chng trnh can thc thi cha bo nh ngoai.oi vi 8031/8032 chan

EA

phai logic 0 v chung khong co bo nh chng trnh tren chip .Neu chan

EA

mc logic 0 oi vi 8051/8052 th ROM noi ben trong chip se b cam va chng trnh can thc thi cha EPROM ben ngoai.Ngi ta con dung chan

EA

lam chan nhan ien ap cap ien 21V (Vpp) cho viec lap trnh EPROM noi.

*Chan 40 ( Vcc ). cung cap ien ( 5VDC )

*Chan 20 ( GND ). chan noi at (0V)

1.2.4 .To chc bo nh .

Hau het cac bo vi x ly ieu co khong gian nh chung cho d lieu va chng trnh. ieu nay cung hp ly v cac chng trnh thng c lu tren a va c nap vao RAM e thc thi vay th ca hai, d lieu va chng trnh eu c lu tr trong RAM. oi vi cac bo ieu khien th khac.

Ban o bo nh Data tren chip 89C51 cho ta thay rang khong gian bo nh noi c chia thanh: Cac day thanh ghi (00H

1FH), vung RAM nh a ch bit (20H

2FH), vung RAM a dung (30H

7FH), va cac thanh ghi chc nang ac biet (80H

FFH).

Ban o Data tren chip nh sau:

a ch a ch Bit a ch a ch Bit

Byte Byte

7F

FF

F0

F7

F6

F5

F4

F3

F2

F1

F0

B

RAM a dung

E0

E7

E6

E5

E4

E3

E2

E1

E0

ACC

D0

D7

D6

D5

D4

D3

D2

D1

D0

PSW

30

B8

-

-

-

BC

BB

BA

B9

B8

IP

2F

7F

7E

7D

7C

7B

7A

79

78

2E

77

76

75

74

73

72

71

70

B0

B7

B6

B5

B4

B3

B2

B1

B0

P3

2D

6F

6E

6D

6C

6B

6A

69

68

2C

67

66

65

64

63

62

61

60

A8

AF

-

-

AC

AB

AA

A9

A8

IE

2B

5F

5E

5D

5C

5B

5A

59

58

2A

57

56

55

54

53

52

51

50

A0

A7

A6

A5

A4

A3

A2

A1

A0

P2

29

4F

4E

4D

4C

4B

4A

49

48

28

47

46

45

44

43

42

41

40

99

khong c a ch hoa bit

SBUF

27

3F

3E

3D

3C

3B

3A

39

38

98

9F

9E

9D

9C

9B

9A

99

98

SCON

26

37

36

35

34

33

32

31

30

25

2F

2E

2D

2C

2B

2A

29

28

90

97

96

95

94

93

92

91

90

P1

24

27

26

25

24

23

22

21

20

23

1F

1E

1D

1C

1B

1A

19

18

8D

khong c a ch hoa bit

TH1

22

17

16

15

14

13

12

11

10

8C

khong c a ch hoa bit

TH0

21

0F

0E

0D

0C

0B

0A

09

08

8B

khong c a ch hoa bit

TL1

20

07

06

05

04

03

02

01

00

8A

khong c a ch hoa bit

TL0

1F

Bank 3

89

khong c a ch hoa bit

TMOD

18

88

8F

8E

8D

8C

8B

8A

89

88

TCON

17

Bank 2

87

khong c a ch hoa bit

PCON

10

0F

Bank 1

83

khong c a ch hoa bit

DPH

08

82

khong c a ch hoa bit

DPL

07

Bank thanh ghi 0

81

khong c a ch hoa bit

SP

00

(mac nh cho R0 -R7)

88

87

86

85

84

83

82

81

80

P0

RAM CAC THANH GHI CHC NANG AC BIET

Hnh 1.4 Bo nh d lieu tren chip 89C51

*RAM a dung.

Trong ban o bo nh tren chip, 80 Byte a ch 30H

7FH la RAM a dung.Ben di vung nay t a ch 00H

2FH la vung nh co the s dung tng t ,tuy nhien 32 byte con lai con co muc ch khac.

Bat ky v tr nh nao trong vung RAM a muc ch eu co the c truy xuat t do bang cach s dung cac kieu nh a ch trc tiep hoac gian tiep.V du e oc noi dung tai a ch 5FH cua RAM noi vao thanh cha A , ta dung lenh sau

MOV A, #5FH

Lenh tren di chuyen 1 byte d lieu bang cach dung kieu nh a ch trc tiep e xac nh v tr nguon (ngha la a ch 5FH).ch cua d lieu c xac nh ro rang trong opcode cua lenh la thanh cha A.

Vung RAM a muc ch con co the c truy xuat bang cach dung kieu nh a ch gian tiep qua cac thanh ghi R0 , R1. Th du 2 lenh sau thc hien cung cong viec nh th du tren.

MOV R0,#5FH

MOV A,@R0

Lenh th nhat s dung kieu nh a ch tc thi di chuyen gia tr 5FH vao thanh ghi R0, lenh th hai s dung kieu nh a ch gian tiep di chuyen d lieu tro bi R0 vao thanh cha A.

* RAM nh a ch bt .

89C51 cha 210 v tr bit c nh a ch trong o co 128 bit cha trong cac byte a ch t 20H

2FH (16 byte x 8 bt = 128 bt ) va phan con lai cha trong cac thanh ghi chc nang ac biet.

Y tng truy xuat cac bit rieng re thong qua phan mem la mot ac trng manh cua hau het cac bo vi ieu khien .Cac bit c set, xoa, AND, OR......bang mot lenh.Hau het cac bo vi x ly yeu cau mot chuoi lenh oc sa ghi e nhan c cung mot ket qua. Ngoai ra 89C51 con co cac port xuat/nhap co the nh a ch tng bit,ieu nay lam n gian viec giao tiep bang phan mem vi cac thiet b xuat/nhap n bit.

*Cac day thanh ghi .

32 v tr thap nhat cua bo nh noi cha cac day thanh ghi. Cac lenh cua 89C51 cung cap 8 thanh ghi t R0

R7 thuoc day 0 (bank0).ay la day mac nh sau khi reset he thong.Cac thanh ghi nay cac a ch 00H

07H. Lenh sau ay oc noi dung tai a ch 05H vao thanh cha

MOV A,R5

Lenh nay la lenh 1 byte dung kieu nh a ch thanh ghi.D nhien thao tac tng t co the c thc hien vi mot lenh 2 byte bang cach dung kieu nh a ch trc tiep:

MOV A, 05H

Cac lenh s dung thanh ghi t R0 en R7 la cac lenh ngan va thc hien nhanh hn so vi cac lenh tng ng s dung kieu nh a ch trc tiep.Cac gia tr d lieu thng c s dung nen cha mot trong cac thanh ghi nay.Day thanh ghi ang c s dung goi la thanh ghi tch cc.Day thanh ghi tch cc co the c thay oi bang cach thay oi cac bit chon day trong t trang thai chng trnh PSW .Gia s rang day thanh ghi 3 tch cc ,lenh sau ay ghi noi dung cua thanh cha A vao v tr 18H :

MOV R0,A

1.2.5. Cac thanh ghi chc nang ac biet (SFR) .

Cac thanh ghi noi cua 89C51 c cau hnh thanh mot phan cua RAM tren chip,do vay moi mot thanh ghi cung co mot a ch.ieu nay hp ly vi 89C51 v chip nay co rat nhieu thanh ghi.Cung nh cac thanh ghi t R0 en R7 ta co 21 thanh ghi chc nang ac biet SFR chiem phan tren cua RAM noi t a ch 80H en FFH.

Mac du thanh ghi A co the truy xuat trc tiep, nhng hau het cac thanh ghi chc nang ac biet c truy xuat bang cach s dung s nh a ch trc tiep. Trong Hnh 1.4 can chu y la mot so thanh ghi chc nang ac biet c nh a ch tng bit va nh a ch tng byte.Th du

SET 0E0H

Se set bit 0 cua thanh cha A len 1,cac bit khac cua thanh cha khong thay oi.Ta nhan thay rang tai a ch E0H co the la : a ch byte cho ca thanh cha va a ch bit cua bit co y ngha thap nhat trong thanh cha.V lenh SETB thao tac tren cac bit va khong thao tac tren cac byte,ch co bit c nh a ch b anh hng .Lu y la cac bit c nh a ch trong mot thanh ghi chc nang ac biet co 5 bit cao cua nh a ch giong nhau cho tat ca cac bit cua thanh ghi nay.Lay th du port1 co a ch byte la 90H (hay 10010000B) va cac bit trong port nay co cac a ch t 90H en 97H hay 10010xxxB.

a.T trang thai chng trnh PSW.

T trang thai chng trnh a ch D0H c tom tat nh sau:

BIT

KY HIEU

A CH

MO TA BIT

PSW.7

CY

D7H

C nh

PSW.6

AC

D6H

C nh phu

PSW.5

F0

D5H

C 0

PSW4

RS1

D4H

Chon day thanh ghi (bit 1)

PSW.3

RS0

D3H

Chon day thanh ghi (bit 0)

00=Bank 0; a ch t 00H(07H

01=Bank 1; a ch t 08H(0FH

10=Bank 2; a ch t 10H(17H

11=Bank 3; a ch t 18H(1FH

PSW.2

OV

D2H

C tran

PSW.1

-

D1H

D tr

PSW.0

P

DOH

C kiem tra chan le

Bang1.2: T trang thai chng trnh PSW

C nh: co 2 cong dung, trong cac phep toan so hoc la c set bang 1 neu co nh t phep cong bit 7 hoac co so mn mang en bit 7.

C nh phu: khi cong cac gia tr BCD , c nh phu AC set bang 1 neu co mot so nh c tao ra t bit 3 chuyen sang bit 4 hoac neu ket qua trong ecat thap nhat nam trong tam t 0AH en 0FH.Neu gia tr c cong la gia tr BCD lenh cong phai c tiep theo bi lenh DA A (hieu chnh thap phan thanh cha A) e a ket qua ln hn 9 ve gia tr ung.

C 0: la c co nhieu muc ch danh cho cac ng dung cho ngi lap trnh.

Cac bit chon day thanh ghi:la cac bit RS0,RS1 dung e xac nh day thanh ghi tch cc .Cac bit nay c xoa sau khi reset he thong va oi mc logic bi phan mem khi can.

C tran: c tran OV c set bang 1 sau phep toan cong hoac tr neu co xuat hien mot tran so hoc.Khi so co dau c cong hoac c tr phan mem co the kiem tra bit tran OV e xem ket qua co nam trong tam hay khong,vi so khong dau th c tran OV c bo qua

C chan le: bit chan le P t ong c set bang 1 hay xoa bang 0 moi chu ky may e thiet lap kiem tra chan cho thanh cha A.So cac bit 1 trong thanh cha cong vi bit P luon luon la so chan

b.Thanh ghi B: Thanh ghi B a ch bit F0H c dung i oi vi thanh ghi A cho cac hoat ong nhan chia

Thanh ghi B co the c dung nh mot thanh ghi em trung gian a muc ch. No la nhng bit nh v thong qua nhng a ch F0H

7FH

c. Thanh ghi port: Cac port0, port1, port2, port3 co a ch tng ng la 80H,90H,A0H,B0H.Cac port0, port2, port3 khong c dung e xuat nhap neu s dung them bo nh ngoai hoac mot vai ac tnh ac biet cua 89C51 c dung (nh interrupt,port noi tiep)do vay ch con co port 1 co tac dung xuat nhap.Tat ca cac port eu c nh a ch tng bit nham cung cap cac kha nang giao tiep manh .

d.Con tro d lieu DPTR:c dung e truy xuat chng trnh ngoai hoac bo nh d lieu ngoai .DPTR la mot thanh ghi 16 bit co a ch la 82H (DPL byte thap) va 83H(DPH byte cao).

e.Thanh ghi nh thi: 89C51 co hai bo em/nh thi (timer/counter) 16 bit e nh cac khoang thi gian hoac e em cac s kien. Bo nh thi 0 co a ch 8AH ( TL0, byte thap) va 8CH (TH0, byte cao). Bo nh thi 1 co a ch 8BH (TL1, byte thap) va 8DH (TH1, byte cao)

Hoat ong cua bo nh thi c thiet lap bi thanh ghi che o nh thi TMOD (timer mode register) a ch 89H va thanh ghi ieu khien nh thi TCON (timer control register) a ch 88H. Ch co TCON c nh a ch tng bit.

f.Thanh ghi ngat: 89C51 co mot cau truc ngat vi 2 mc u tien va 5 nguyen nhan ngat. Cac ngat b vo hieu hoa sau khi Reset he thong va sau o c cho phep bang cach ghi vao thanh ghi cho phep ngat IE a ch A8H. Mc u tien ngat c thiet lap qua thanh ghi a tien ngat IP a ch B8H. Ca hai thanh ghi nay eu c nh da ch tng bit.

g.Thanh ghi cua port noi tiep: 89C51cha 1 port noi tiep tren chip cho viec truyen thong tin vi nhng thiet b noi tiep nh la nhng thiet b au cuoi,mode, hoac e giao tiep IC khac vi nhng bo bien oi A/D, ngng thanh ghi di chuyen, RAM Mot thanh ghi c goi la bo em d lieu noi tiep SBUF a ch 99H lu gi d lieu truyen i va d lieu nhan ve.Viec ghi len SBUF se nap lai d lieu e truyen va viec oc SBUF se lay d lieu a nhan c .Cac che o hoat ong khac nhau c lap trnh thong qua thanh ghi ieu khien port noi tiep SCON a ch 98H,thanh ghi nay c nh a ch tng bit .

h.Con tro stack(SP):la mot thnah ghi 8 bit a ch 81H,con tro stack cha a ch cua d lieu hien ang nh cua stack .Cac lenh lien quan en stack bao gom lenh cat d lieu vao stack va lenh lay d lieu ra khoi stack.Viec cat vao stack lam tang SP trc khi ghi d lieu va viec lay d lieu ra khoi stack se giam SP.Vung stack cua 89C51 c gi trong RAM noi va c gii han en cac a ch truy xuat c bi kieu nh a ch gian tiep.

i.Thanh ghi ieu khien nguon(PCON):co a ch 87H cha cac bit ieu khien mo ta trong bang 1.3

Bit SMOD tang gap oi toc o baud cua port noi tiep khi port nay hoat ong cac che o 1,2 hoac 3. Cac bit 4,5 va 6 cua PCON khong c nh ngha. Cac bit 2 va 3 la cac bit c a muc ch danh cho cac ng dung cua ngi s dung.

Che o giam nguon: La che o ma ay

- Mach dao ong tren chip ngng hoat ong .

- Moi chc nang ngng hoat ong .

- Noi dung cua RAM tren chip c duy tr.

- Cac chan port duy tr mc logic cua chung .

- ALE va

PSEN

c gi mc thap .Ch ra khoi che o nay bang cach reset he thong.

Bt

Ky hieu

Mo ta

7

SMOD

Bit tang gap oi toc o baud, bit nay khi set lam cho toc o baud tang gap oi cac che o 1,2 va 3 cua cong noi tiep.

6

--

Khong nh ngha

5

--

Khong nh ngha

4

--

Khong nh ngha

3

GF1

Bit c a muc ch 1

2

GF0

Bit c a muc ch 2

1

PD

Nguon giam ; thiet lap e kch hoat che o nguon giam , ch ra khoi che bang Reset

0

IDL

Che o ngh ; thiet lap e kch hoat che o ngh , ch ra khoi che o bang mot ngat hoac Reset he thong

Bang 1.3: Thanh ghi PCON

Che o ngh: Lenh thiet lap bit IDL bang 1 se la lenh sau cung c thc thi trc khi vao che o ngh. che o ngh tn hieu clock noi c khoa khong cho en CPU nhng khong khoa vi chc nang ngat, nh thi va port noi tiep. Trang thai cua CPU c duy tr va noi dung cua tat ca cac thanh ghi cung c gi khong oi.

Cac chan port cung c duy tr mc logic cua chung .ALE va

PSEN

c gi mc cao.Che o ngh ket thuc bang cach cho phep ngat hoac bang cach reset he thong, ca 2 cach va neu eu xoa bit IDL.

1.3. Hoat ong Reset.

e Reset AT89C51 , ta phai gi chan RST mc cao trong toi thieu hai chu ky may roi mi tr lai mc thap.RST co the c tac ong bang tay hoac c tac ong khi cap nguon bang cach dung mot mach RC nh hnh 1.4.Trang thai cua tat ca cac thanh ghi sau khi reset he thong c tom tat trong bang 1.4.Quan trong nhat trong cac thanh ghi nay co le la thanh ghi PC(bo em chng trnh) se nap vao gia tr 0000H, bi v khi RST xuong mc thap , viec thc thi chng trnh luon luon bat au v tr au tien trong bo nh chng trnh : a ch 0000H. Noi dung cua RAM ben trong chip khong b anh hng bi hoat ong Reset.

Thanh ghi

Noi dung

Thanh ghi

Noi dung

BoemChng trnh

0000H

IP

Xxx00000B

Thanh ghi A

00H

IE

0xx00000B

Thanh ghi B

00H

Thanh ghi Timer

00H

PSW

00H

SCON

00H

SP

07H

SBUF

00H

DPTR

0000H

PCON(Hmos)

0xxxxxxxB

Cong P(1,2,3)

FFH

PCON(Cmos)

0xxx0000B

15

A

Bang1.4: Gia tr cac thanh ghi sau khi Reset he thong.

Hnh 1.4 :S o mach thc hien hoat ong reset

1.4. Hoat ong cua timer 89C51 :

1.4.1 Gii thieu :

Bo nh thi cua timer la mot chuoi cac Flip Flop vi moi Flip Flop la mot mach chia 2,chuoi nay nhan mot tn hieu ngo vao lam nguon xung clock .Xung clock a vao Flip Flop th nhat, Flip Flop nay chia oi tan so xung clock .Ngo ra cua Flip Flop th nhat tr thanh nguon xung clock cho Flip Flop th hai ,nguon xung clock nay cung c chia cho 2 ..... v moi tan ke tiep nhau eu chia cho 2 nen mot bo nh thi co n tang se chia tan so xung clock ngo vao cua bo nay cho 2

n

.

Ngo ra cua tang cuoi cung lam xung clock cho mot Flip Flop bao tran bo nh thi hay con goi la c tran (overflow flag),c tran nay c kiem tra bi phan mem hoac tao ra mot ngat Gia tr nh phan trong cac Flip Flop cua bo nh thi la so em cua cac xung clock t khi bo nh thi bat au em.

Hoat ong cua mot bo nh thi n gian c minh hoa trong hnh 1.5 .Moi tang la mot la mot DFF kch khi canh am hoat ong nh mot mach chia cho 2 do ta noi ngo ra

Q

vi ngo vao.

LSB MSB FLAG

D Q

Q

0

D Q

Q

1

D Q

Q

2

D Q

Q

3

Flag FF

0 1 2 3 4 5 6 7 0

clock

Q

0

(LSB)

Q

1

Q

2

(MSB)

count

Flag

Hnh 1.5 mot bo nh thi 3-bit

Flip Flop c n gian la mot mach chot D c set bang 1 bi tang cuoi cua bo nh thi.Gian o cho thay tang th 1 (Q

0

) chia 2 tan so clock,tang th 2 chia 4 tan so clock ........ So em c ghi dang thap phan va c kiem tra de dang bang cach khao sat trang thai cua 3 Flip Flop .Th du so em la 4 xuat hien khi Q

2

=1, Q

1

=0 va Q

0

=0 (4

10

=100

2

) .Khi so em tran t 111

2

xuong 000

2

ngo ra Q

2

co canh am (1 xuong 0)lam cho trang thai c oi t 0 len 1( ngo vao D cua Flip Flop luon mc logic cao).

Bo nh thi c s dung trong hau het cac ng dung hng ieu khien .8051 co hai bo nh thi 16 bit moi bo co 4 che o hoat ong .Cac timer dung e em gi ,em cac s kien can thiet va s sinh ra toc o cua toc o Baud bi s gan lien port noi tiep.Moi s nh thi la mot timer 16 bit do o tang cuoi cung la tang th 16 se chia tan so clock ngo vao cua bo nh thi cho 2

16

= 65536.

Trong cac ng dung nh thi ,bo timer c lap trnh sao cho se tran sau 1 khoang thi gian qui nh va se set c tran cua timer bang 1.C tran c s dung e ong bo chng trnh nham thc hien mot cong viec nh la kiem tra trang thai cua cac ngo nhap hoac gi d lieu en ngo xuat.Viec em s kien c dung e xac nh so lan xuat hien cua mot s kien hn la o thi gian gia cac s kien.

Cac timer cua 8051 c truy xuat bi viec dung 6 thanh ghi chc nang ac biet sau

Timer SFR Purpose Address Bit-Addressable

TCON Control 88H YES

TMOD Mode 89H NO

TL0 Timer 0 low-byte 8AH NO

TL1 Timer 1 low-byte 8BH NO

TH0 Timer 0 high-byte 8CH NO

TH1 Timer 1 high-byte 8DH NO

Bang 1.5 Cac thanh ghi chc nang ac biet cua bo nh thi

1.4.2 Thanh ghi che o nh thi (TMOD):

Thanh ghi TMOD cha hai nhom 4 bit dung e thiet lap che o hoat ong cho bo nh thi 0 va bo nh thi 1.TMOD khong c nh a ch tng bit va ieu nay cung khong can thiet 4 bit thap at mode hoat ong cho timer 0 va 4 bit cao at mode hoat ong cho timer 1.Mot cach tong quat TMOD c nap mot lan bang phan mem thi iem bat au cua chng trnh e khi ong che o hoat ong cua bo nh thi sau o bo nh thi co the dng, bat au .......bang cach truy xuat cac thanh ghi chc nang ac biet cua bo nh thi 8 bit cua thanh ghi TMOD c tom tat nh sau

Bit Name Timer Description

7 GATE 1Khi GATE = 1, Timer ch lam vic khi INT1=1

6 C/T 1Bit cho m s kin hay ghi gi

- C/T = 1 : m s kin

- C/T = 0 : Ghi gi u n

5 M1 1bit chon mode cua timer 1

4 M0 1bit chon mode cua timer 1

3 GATE 0bit cng cua timer 0

2 C/T 0Bit chon Counter/Timer cua Timer 0

1 M1 0Bit chon mode cua timer 0

0 M0 0Bit chon mode cua timer 0

Bang 1.6 Thanh ghi chon che o nh thi

M1 M0 Ch M ta

0 0 0 Ch nh thi 13 bit

0 1 1 Ch nh thi 16 bit

1 0 2 Ch t ng nap lai 8 bit

1 1 3 Ch nh thi chia xe

B nh thi 0: TL0 la 1 b nh

thi 8 bit c iu khin bi cac

bt chon ch cua b nh thi 0.

TH0 tng t TL0

ch khac la c iu khin bi cac

bit chon ch cua b nh thi 1

B nh thi 1: dng, khng hoat

ng

Bang 1.7 Cac che o nh thi

1.4. 3.Thanh ghi ieu khien nh thi (TCON):

Thanh ghi ieu khien TCON cha cac bit ieu khien va trang thai cua bo nh thi 0 va bo nh thi 1 . Bon bit cao trong TCON (TCON.4-TCON.7) c dung e ieu khien cac bo nh thi hoat ong hoac ngng (TR0,TR1) hoac e bao cac bo nh thi tran (TF0,TF1).Bon bit thap cua TCON (TCON.0 TCON.3) khong dung e ieu khien cac bo nh thi ma chung c dung e phat hien va khi ong cac ngat ngoai .

Bit Symbol Bit Address Description

TCON6 TR1 8EH Bit iu khin timer 1 chay. t /xoa bng phn

mm cho timer chay /ngng

TCON5 TF0 8DH C bao tran timer 0

TCON4 TR0 8CH Bit iu khin timer 0 chay

TCON3 IE1 8BH C ngt bn ngoai 1 (kch khi canh). C nay

c set bi phn cng khi co canh xung xut

hin trn chn INT1, c xoa bi phn mm

hoc phn cng khi CPU tro n trnh phuc vu ngt.

TCON2 IT1 8AH C ngt bn ngoai 1 (kch khi canh hoc mc )

c nay c set hoc xoa bi phn mm khi xay ra

canh xung hoc mc thp tai chn ngt ngoai.

TCON1 IE0 89H C ngt bn ngoai 0 (kch khi canh)

TCON0 IT0 88H C ngt bn ngoai 0 (kch khi canh hoc mc)

TCON7 TF1 8FH C bao tran timer1 c t bi phn cng khi tran,

hoc xoa bi phn mm hoc phn cng khi b x ly

ch n chng trnh phuc vu ngt

Bang 1.8 Thanh ghi ieu khien nh thi TCON

1.4.4 Cac che o nh thi va c tran: 89C51 co 2 bo nh thi do o ta ky hieu TLx va THx e ch 2 thanh ghi byte cao va byte thap cua Timer 0 hoac Timer 1

a.Che o nh thi 13 bit (che o 0):

TLx (5 bit) THx (8 bit) TFx

Timer Clock

Overflow

Hnh 1.6 Mode 0

Che o 0 la che o nh thi 13 bit cung cap kha nang tng thch vi vi ieu khien tien nhiem 8048.Che o nay khong c dung cho cac thiet b mi .Byte cao cua bo nh thi THx c ghep cascade vi 5 bit thap cua byte thap cua bo nh thi TLx e tao thanh mot bo nh thi 13 bit .Ba bit cao cua TLx khong s dung.

b.Che o nh thi 16 bit (che o 1):

TLx (8 bit) THx (8 bit) TFx

Timer Clock

Overflow

Hnh 1.7 Mode 1

Che o 1 la che o nh thi 16 bit va co cau hnh giong che o nh thi 13 bit ,ch khac nhau cho bay gi la bo nh thi 16 bit .Xung clock at vao cac thanh ghi nh thi cao va thap ket hp (TLx/THx).Khi co xung clock en bo nh thi em 0000H,0001H,0002H...Mot tran se xuat hien khi co s chuyen so em t FFFFH xuong 0000H s kien nay se set c tran bang 1 va bo nh thi tiep tuc em.C tran la bit TFx trong thanh ghi ieu khien nh thi TCON, bit nay c oc hoac ghi bi phan mem.

Bit co trong so ln nhat MSB cua gia tr trong cac thanh ghi nh thi la bit 7 cua THx va bit co y ngha thap nhat LSB la bit 0 cua TLx .Bit LSB thay oi trang thai va chia 2 tan so xung clock nh thi ngo vao trong khi bit MSB thay oi trang thai va chia cho 65536(tc la 2

16

) tan so xung clock nh thi ngo vao.Cac thanh ghi nh thi (TLx/THx) co the c oc hoac ghi mot thi iem bat k bang phan mem.

c.Che o t nap lai 8 bit (che o 2):

TL x (8 bit)

TFx

TH x (8 bit)

Overflow

Reload

Hnh 1.8 Mode 2

Che o 2 la che o nap lai 8 bit .Byte thap cua bo nh thi (TLx) hoat ong nh thi 8 bit trong byte cao cua bo nh thi lu tr gia tr nap lai .Khi so em tran t FFH xuong 00H khong ch c tran cua bo nh thi c set len 1 ma gia tr trong THx con c nap vao TLx ; viec em se tiep tuc t gia tr nay cho en khi xay ra 1 tran (FFH

00H) ke tiep v.v........Che o nay kha tien li do bi viec tran bo nh thi xay ra nhng khoang thi gian xac nh va tuan hoan mot khi cac thanh ghi TMOD va THx a c khi ong .

d.Che o nh thi chia xe(che o 3):

TL1 (8 bit) TH1 (8 bit)

TL1 (8 bit)

TH0 (8 bit)

TF0

TF1

Timer Clock

Timer Clock

Timer Clock

Overflow

Overflow

Hnh 1.9 Mode 3

Che o 3 la che o nh thi chia xe va co hoat ong khac nhau cho tng bo nh thi .Bo nh thi 0 che o 3 c chia thanh 2 bo nh thi 8 bit hoat ong rieng re TL0 va TH0,moi bo nh thi se set cac c tran tng ng TF0 va TF1 khi xay ra tran .

Bo nh thi 1 khong hoat ong che o 3 nhng co the khi ong bang cach chuyen bo nh thi nay vao mot trong cac che o khac .Gii han duy nhat la c tran TF1 khong b anh hng bi bo timer 1 khi bo nay xay ra tran v TF1 a c noi vi bo nh thi 8-bit TH0.

Che o 3 chu yeu cung cap them 1 bo nh thi 8 bit na ngha la 8051 co them bo nh thi th 3.Khi bo nh thi 0 che o 3 bo nh thi 1 co the hoat ong hoac ngng bang cach chuyen bo nay ra khoi che o 3 hoac vao che o 3.Bo nh thi 1 co the c s dung bi port noi tiep (luc nay bo nh thi 1 lam nhiem vu cua bo tao xung clock toc o baud) hoac c s dung theo mot cach nao o nhng khong yeu cau ngat.

1.4.5.Nguon xung clock nh thi:

Co 2 nguon tao xung nhp co the co c chon bang cach ghi vao bit C/T(counter/timer) trong TMOD khi khi ong timer.Mot nguon tao xung nhp dung cho nh khoang thi gian ,cai khac cho em s kien.

On Chip

Osillator

12

C/T

T0 or T1

pin

Timer

Clock

0 = Up (internal Timing)

1 = Down (Event Counting)

Hnh 2.1 Nguon xung clock

a.nh thi mot khoang thi gian:

Neu C/T=0 hoat ong nh thi c chon va nguon xung clock cua bo nh thi do mach dao ong ben trong chip tao ra.Mot mach chia 12 tang c them vao e giam tan so xung clock en mot gia tr thch hp vi hau het cac gia tr.Luc nay bo nh c dung e nh thi trong mot khoang thi gian .Cac thanh ghi nh thi (TLx/THx)em len vi tan so xung clock bang 1/12 tan so cua mach dao ong tren chip .Bo nh thi se tran sau mot so xung clock co nh phu thuoc vao gia tr ban au nap cho cac thanh ghi nh thi (TLx/THx)

b.em s kien:

Neu C/T=1 bo nh thi c cung cap xung clock t mot nguon tao xung ben ngoai .Trong a so cac ng dung nguon xung clock nay cung cap cho bo nh thi mot xung da tren viec xay ra mot s kien bo nh thi bay gi em s kien .So cac s kien c xac nh trong phan mem bang cach oc cac thanh ghi nh thi (TLx/THx), gia tr 16 bit trong cac thanh ghi nay tang theo moi s kien ,hai chan cua port 3 (P3.4 va P3.5) bay gi tr thanh ngo vao xung clock cho cac bo nh thi.Chan P3.4 la ngo vao xung clock cho bo nh thi 0 ,chan P3.5 la ngo vao xung clock cho bo nh th 1.

Trong cac ng dung em s kien cac thanh ghi nh thi tang moi khi xay ra chuyen trang thai t 1 xuong 0 ngo vao Tx(T1 hoac T0).Ngo vao Tx c lay mau trong suot thi gian S5P2 cua moi chu k may :do o khi ngo vao mc cao trong mot chu k va mc thap trong chu k ke so em c tang .Gia tr mi xuat hien trong cac thanh ghi nh thi trong suot thi gian S3P1 cua chu k tiep theo chu k phat hien s chuyen trang thai .Nh vay phai mat 2 chu k may (2

s

m

) e nhan biet s chuyen trang thai t 1 xuong 0.

1.4.6. Khi ong, Dng va ieu khien cac bo nh thi:

Cach n gian nhat e khi ong va dng cac bo nh thi la s dung bit ieu khien hoat ong TRx trong thanh ghi TCON. TRx c xoa khi thiet lap lai he thong,ngha la cac bo nh thi ngng hoat ong.

Hnh 2.2 Bat au va dng cac bo nh thi

Mot phng phap khac e ieu khien cac bo nh thi la s dung bit GATE trong thanh ghi TMOD va ngo vao

INTx

. Bang cach set bit GATE len 1 ta cho phep bo nh thi c ieu khien bi

INTx

.phng phap nay dung e o o rong xung

Gia s

0

INT

mc thap roi chuyen len mc cao trong mot khoang thi gian.Ta khi ong bo nh thi 0 che o 2 ,che o nh thi 16 bit vi TL0/TH0 =0000H, GATE =1 va TR0 =1 . Khi

0

INT

chuyen len mc cao bo nh thi c m cong nhann xung clock co tan so 1MHz .Khi

0

INT

chuyen xuong mc thap bo nh thi b xoa cong khong nhan xung clock na va o rong xung tnh bang

s

m

la so em trong TL0/TH0 .

INTO (P3.2)

16 Bit

0=Up 0=Up

1=Down 1=Down

On Chip

Osillator

12

TL0

TH TF0

C/T

TR0

GATE

12 MHz

T0 (P3.4)

1

Hnh 2.3 Hoat ong che 1 cua bo nh thi 1

1.4.7. Khi ong va truy xuat cac thanh ghi nh thi :

Cac bo nh thi thng c khi ong mot lan thi iem bat au chng trnh e thiet lap che o hoat ong theo yeu cau. Trong than cua chng trnh cac bo nh thi c ieu khien hoat ong, dng, kiem tra cac bit c va xoa ,cac thanh ghi nh thi c oc hoac cap nhat v.v....tuy theo yeu cau ng dung.

TMOD la thanh ghi khi ong trc tien v ay la thanh ghi thiet lap che o hoat ong .Lay v du lenh sau ay khi ong bo nh thi 1 hoat ong che o 16 bit (che o 1) xung clock c cap t mach dao ong tren chip

MOV TMOD,#00010000

Ket qua cua lenh nay la thiet lap M1 = 0 va M0 = 0 e an nh che o 1,C/T =0 va GATE =0 e s dung xung clock tren chip, xoa cac bit chon che o cua bo nh thi 0(bang 1.6).Tren thc te bo nh thi khong bat au cong viec nh thi cho en khi bit ieu khien hoat ong TR1 c set bang 1

Trong trng hp can en so em ban au cac thanh ghi nh thi TL1/TH1 cung phai c khi ong .Can nh la cac bo nh thi em len va thiet lap c tran bang 1 khi xay ra tran so em t FFFFH xuong 0000H.

oc bo nh thi ang hoat ong: Do phai oc 2 thanh ghi nh thi bang 2 dong lenh lien tiep (do khong co lenh oc ong thi ca 2 thanh ghi nh thi mot lan) mot sai pha co the xuat hien neu co tran t byte thap chuyen sang byte cao gia 2 lan oc va do vay ta khong the oc ung c gia tr can oc. Giai phap a ra la trc tien ta phai oc byte cao ke en oc byte thap va roi oc byte cao lan na.Neu byte cao thay oi gia tr ta lap lai cac thao tac oc va neu.

1.4.8 Khoang thi gian ngan va khoang thi gian dai :khoang thi gian ngan nhat co the nh thi c b gii han khong phai bi phan tan so xung clock nh thi ma bi phan mem ngha la th gian thc thi cac lenh tao ra gii han oi vi cac khoang thi gian nh thi rat ngan.Lenh ngan nhat thc thi trong mot chu k may hay 1

s

m

.

Khoang thi gianky thuat

10 ieu chnh phan mem

256 Bo nh thi 8 bit nap lai

65536Bo nh thi 16 bit

Khong gii hanBo nh thi 16 bit + cac vong lap

Bang 1.9 Khoang thi gian nh thi cc ai

1.5. Hoat ong cua port noi tiep :

1.5.1. Gii thieu:

Ben trong chp 89C51 co mot port noi tiep hoat ong mot vai che o tren mot tam tan so rong. Chc nang c ban cua port noi tiep la thc hien viec chuyen oi d lieu song song thanh noi tiep khi phat va chuyen oi d lieu noi tiep thanh song song khi thu.

Cac mach phan cng ben ngoai truy xuat port noi tiep thong qua cac chan TXD (phat d lieu) va RxD (thu d lieu) a c gii thieu.

ac trng cua port noi tiep la hoat ong song cong (full duplex) ngha la co kha nang thu va phat ong thi. Ngoai ra port noi tiep con co mot ac trng khac, viec em d lieu khi thu cua port nay cho phep mot ky t c nhan va lu gi trong bo em thu trong khi ky t tiep theo c nhap vao.

Phan mem s dung hai thanh ghi chc nang ac biet SBUF va SCON e truy xuat port noi tiep. Bo em cua port noi tiep SBUF co a ch byte la 99H, tren thc te bao gom hai bo em. Viec ghi len SBUF se nap d lieu e phat va viec oc SBUF se truy xuat d lieu a nhan c, ieu nay co ngha la ta co hai thanh ghi rieng le va phan biet: thanh ghi phat (ch ghi) hay bo em phat va thanh ghi thu (ch oc) hay bo em thu.

Thanh ghi ieu khien port noi tiep SCON (co a ch byte la 98H) la thanh ghi c nh a ch tng bit, thanh ghi nay cha cac bit trang thai va cac bit ieu khien. Cac bit ieu khien se thiet lap che o hoat ong cho port noi tiep con cac bit trang thai ch ra s ket thu viec thu hoac phat mot ky t.

1.5.2. Thanh ghi ieu khien port noi tiep .

Che o hoat ong cua port noi tiep c thiet lap bang cach ghi t ieu khien len thanh ghi chon che o SCON cua port noi tiep a ch byte 99H.Trc khi s dung port noi tiep thanh ghi SCON phai c khi ong ung che o yeu cau. Th du lenh sau:

MOV SCON, # 01010010

Khi ong port noi tiep che o 1 (SM0/SM1= 0/1) cho phep thu (REN = 1) va set c ngat phat bang 1 (TI = 1) e ch ra rang port noi tiep san sang phat d lieu.

1.5.3. Cac che o hoat ong:

Port noi tiep cua 89C51 co 4 che o hoat ong, cac che o c chon bang cach ghi 1 hoac 0 cho cac bit SMO va SM0 trong thanh ghi SCON. Ba trong so cac che o hoat ong cho phep truyen khong ong bo. Trong o moi mot ky t c thu hoac phat se cung vi 1 bit start va 1 bit stop tao thanh mot khung.Moi che o se c e cap tom tat nh sau:

Bit

Ky hieu

a ch

Mo ta

SCON.7

SM0

9FH

Bit 0 chon che o cua port noi tiep

SCON.6

SM1

9EH

Bit 1 chon che o cua port noi tiep

SCON.5

SM2

9DH

Bit 2 chon che o cua port noi tiep

Bit nay cho phep truyen thong a x ly cac che o 2 va 3 ,bit RI se khong c tch cc neu bit th 9 nhan la 0

SCON.4

REN

9CH

Cho phep thu bit nay phai c set e nhan cac k t

SCON.3

TB8

9BH

Bit phat 8,bit th 9 c phat che o 2 va 3 ,c set va xoa bi phan mem

SCON.2

RB8

9AH

Bit thu 8. Bit th 9 nhan c

SCON.1

TI

99H

C ngat phat.C nay c set ngay khi ket thuc viec phat mot ky t,xoa phan mem

SCON.0

RI

98H

C ngat thu.C nay c set ngay khi ket thuc viec thu mot ky t.c xoa bang phan mem

Bang 2.1 Tom tac thanh ghi SCON

1.6. Hoat ong ngat cua 89C51.

1.6.1. Gii thieu:

Ngat (interrupt) la s xay ra cua mot ieu kien mot s kien - lam cho chng trnh hien hanh b tam ngng trong khi ieu kien c phuc vu bi mot chng trnh khac. Cac ngat ong vai tro quan trong trong viec thiet ke va hien thc cac ng dung cua bo vi ieu khien. Cac ngat cho phep he thong ap ng mot s kien theo cach khong ong bo va x ly s kien trong khi mot chng trnh khac ang thc thi. Mot he thong c ieu khien bi ngat cho ta ao tng ang lam nhieu cong viec ong thi.

Chng trnh x ly mot ngat c goi la trnh phuc vu ngat (interrupt service rortime) hay quan ly ngat (interrupt handler) ISR c thc thi nham ap ng mot ngat va trong trng hp tong quat thc hien viec xuat nhap oi vi mot thiet b. Khi mot ngat xuat hien, viec thc thi chng trnh tam thi b dng va CPU thc hien viec re nhanh en trnh phuc vu ngat ISR. CPU thc thi ISR e thc hien mot cong viec va ket thuc viec thc thi nay khi gap lenh quay ve t mot trnh phuc vu ngat Chng trnh chnh c tiep tuc tai ni b tam dng. Ta co the noi chng trnh chnh c thc thi mc nen (Base level) con ISR c thc thi mc ngat (intrrupt level).

1.6.2. To chc ngat cua 89C51

Co 5 nguyen nhan tao ta ngat (goi tat la nguyen nhan ngat) oi vi 89C51 : hai ngat do ben ngoai, hai ngat do bo nh thi va mot ngat do port noi tiep. 8052 co them nguyen nhan ngat th 6 la do bo nh thi c them vao bo nh thi th ba. Khi ta thiet lap trang thai ban au cho he thong(goi tat la reset he thong) tat ca cac ngat eu b vo hieu hoa (cam) va sau o chung c cho phep rieng re bang phan mem

Khi xay ra hai hay nhieu ngat ong thi hoac xay ra mot ngat trong khi mot ngat khac ang c phuc vu ta co 2 s o x ly cac ngat s o chuoi vong va s o hai mc u tien. S o chuoi vong la s o co nh con s o u tien ngat c lap trnh bi ngi s dung.

X ly ngat:

Khi co mot ngat xuat hien va c CPU chap nhan, chng trnh chnh b ngat. Cac thao tac sau ay xay ra.

+ Hoan tat viec thc thi lenh hien hanh

+ Bo em chng trnh PC c cat vao stack

+ Trang thai cua ngat hien hamh c lu gi lai.

+ Cac ngat c cham lai mc ngat

+ Bo em chng trnh PC c nap a ch vect cua trnh phuc vu ngat IRS.

+ ISR c thc thi.

ISR c thc thi e ap ng cong viec ngat. Viec thc thi ISR ket thuc khi gap lenh RETI (tr ve t mot trnh phuc vu ngat) Lenh nay lay lai gia tr cu cua bo em chng trnh PC t Stack va phuc hoi trang thai cua ngat cu. Viec thc thi chng trnh chnh c tiep tuc ni b tam ngng.

1.6. Bo nh ngoai (EXTERNAL MEMORY) : 89C51 co kha nang m rong bo nh len en 64K byte bo nh chng trnh va 64k byte bo nh d lieu ngoai. Do o co the dung them RAM va ROM neu can.Khi dung bo nh ngoai, Port0 khong con chc nang I/O na. No c ket hp gia bus a ch (A0-A7) va bus d lieu (D0-D7) vi tn hieu ALE e chot byte cua bus a ch ch khi bat au moi chu ky bo nh. Port c cho la byte cao cua bus a ch.

1.6.1 Truy xuat bo nh ma ngoai (Acessing External Code Memory)Bo nh chng trnh ben ngoai la bo nh ROM c cho phep cua tn hieu

PSEN

. S ket noi phan cng cua bo nh EPROM nh sau:

OE

Hnh 2.4 :Accessing External Code Memory(Truy xuat bo nh ma ngoai)

Trong mot chu ky may tieu bieu, tn hieu ALE tch cc 2 lan. Lan th nhat cho phep 74HC573 m cong chot a ch byte thap, khi ALE xuong 0 th byte thap va byte cao cua bo em chng trnh eu co nhng EPROM cha xuat v

PSEN

cha tch cc, khi tn hieu len mot tr lai th Port 0 a co d lieu la Opcode. ALE tch cc lan th hai c giai thch tng t va byte 2 c oc t bo nh chng trnh. Neu lenh ang hien hanh la lenh 1 byte th CPU ch oc Opcode, con byte th hai bo i.

1.6.2 Truy xuat bo nh d lieu ngoai (Accessing External Data Memory):Bo nh d lieu ngoai la mot bo nh RAM c oc hoac ghi khi c cho phep cua tn hieu

RD

va

WR

. Hai tn hieu nay nam chan P3.7 (

RD

) va P3.6 (

WR

). Lenh MOVX c dung e truy xuat bo nh d lieu ngoai va dung mot bo em d lieu 16 bit (DPTR), R0 hoac R1 nh la mot thanh ghi a ch.

Cac RAM co the giao tiep vi 8051 tng t cach thc nh EPROM ngoai tr chan

RD

cua 89C51 noi vi chan

OE

(Output Enable) cua RAM va chan

WR

cua 8051 noi vi chan WE cua RAM. S noi cac bus a ch va d lieu tng t nh cach noi cua EPROM.

WR

Hnh 2.5 Giao tiep gia 89C51 va RAM

1.6.3 S giai ma a ch (Address Decoding):

S giai ma a ch la mot yeu cau tat yeu e chon EPROM, RAM, 8255, S giai ma a ch oi vi 8051 e chon cac vung nh ngoai nh cac vi ieu khien. Neu cac EPROM hoac RAM 8K c dung th cac bus a ch phai c giai ma e chon cac IC nh nam trong pham vi gii han 8K: 0000H(1FFFH, 2000H(3FFFH, Mot cach cu the, IC giai ma 74HC138 c dung vi nhng ngo ra cua no c noi vi nhng ngo vao chon Chip CS (Chip Select) tren nhng IC nh EPROM, RAM, Hnh sau ay cho phep ket noi nhieu EPROM va RAM.

RD

Hnh 2.6 : Address Decoding (Giai ma a ch)

Mot cach cu the, IC giai ma 74HC138 c dung vi nhng ngo ra cua no c noi vi nhng ngo vao chon Chip CS (Chip Select) tren nhng IC nh EPROM, RAM, Hnh sau ay cho phep ket noi nhieu EPROM va RAM

S e len nhau cua cac vung nh d lieu ngoai:

V bo nh chng trnh la ROM, nen nay sinh mot van e bat tien khi phat trien phan mem cho vi ieu khien. Mot nhc iem chung cua 8051 la cac vung nh d lieu ngoai nam e len nhau, v tn hieu

PSEN

c dung e oc bo nh chng trnh va tn hieu

RD

c dung e oc bo nh d lieu, nen mot bo nh RAM co the cha ca chng trnh va d lieu bang cach noi ng

OE

cua RAM en ngo ra mot cong AND co cac ngo vao

PSEN

va

RD

. S o mach nh hnh sau cho phep cho phep bo nh RAM co hai chc nang va la bo nh chng trnh va la bo nh d lieu

WR

WR\

PSEN\

RD

Hnh 2.7 : Overlapping the External code and data space

Vay mot chng trnh co the c tai vao RAM bang cach xem no nh bo nh d lieu va thi hanh chng trnh bang cach xem no nh bo nh chng trnh.

CS

CS

1.6.4 en LED 7 on :la linh kien dung e hien th ra ben ngoai ,en gom 7 oan mang ten a,b,c,d,e,f,g c sap xep theo hnh so 8,ben di mat 7 oan la mot so en LED va he thong phan chieu len mat.Tuy to hp cac oan sang ma ta co cac so va cac ch so khac nhau.

Ve phng dien LED 7 oan co hai loai la Anot chung va Catod chung .Cac ien tr gii han dong 220

W

EMBED Equation.3

470

W

neu Vcc=5V e gii han dong va bieu th cua mach giai ma,tuy to hp cac bac ong ma to hp tng ng cac LED (bieu th cho cac oan) sang e tao ra cac so hay cac ch.

CHNG 2.THIET KE

TONG QUAN VE HE THONG

IEU KHIEN EN GIAO THONG

2.1. S O KHOI CUA HE THONG EN GIAO THONG S DUNG VI IEU KHIEN AT89C51.

CS

CS

CS

CS

CS

CS

CS

CS

CS

CS

XTAL1

XTAL2

89C51

C1

C2

RST

R1

R2

+

C

S

+V

5V

Hnh 2-8S o khoi mach ieu khien en giao thong

CHC NANG CUA TNG KHOI

2.1.1.Khoi nguon.Khoi nay dung 1 bien the va cau chnh lu e co nguon 5vDC , 12vDC dong khoang 1A e cung cap cho toan bo mach.

2.1.2. Khoi vi ieu khien.

S dung Vi ieu Khien AT89C51.Khoi nay co nhiem vu xuat d lieu ra cac en giao thong va cac Led 7 oan.

2. 1.3. Khoi hien th .

S dung 4 Led 7 oan e thc hien viec em xuong thi gian hoat ong cua cac en .

2. 1.4. Khoi cong suat cach ly.Tn hieu lay t vi ieu khien trc khi qua en phai qua mach cong suat cach ly ay ta s dung ien tr va transiistor (loai B562).

2.1.5.Khoi hien th:Khoi nay thc hien lenh cua khoi cong suat cung cap,khoi nay dung cac led thc hien.

2.2.S o nguyen ly mach ieu khien en giao thong ng dung vi ieu khien AT89C51.

R1

100

CHINH

1

2

GND

Xanh Phai

5V

S3

SW3

1

2

B562

Vang Phai

6.8K

Do Phai

B562

AT89C51

9

18

19

29

30

31

1

2

3

4

5

6

7

8

21

22

23

24

25

26

27

28

10

11

12

13

14

15

16

17

39

38

37

36

35

34

33

32

20

40

RST

XTAL2

XTAL1

PSEN

ALE/PROG

EA/VPP

P1.0

P1.1

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

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

P0.0/AD0

P0.1/AD1

P0.2/AD2

P0.3/AD3

P0.4/AD4

P0.5/AD5

P0.6/AD6

P0.7/AD7

GND

VCC

5V

C1

33pF

a,b,c,d,e,f,g

6.8K

C3

10uF

RN2

180

1

14

2

13

3

12

4

11

5

10

6

9

7

8

Do Trai

5V

6.8K

GND

C2

33pF

11.0569MHz

10K

NHAY

1

2

Vang Trai

B562

B562

6.8K

Xanh Trai

R1

100

CHINH

12

GND

Xanh Phai

5V

S3

SW3

12

B562

Vang Phai

6.8K

Do Phai

B562

AT89C51

9

1819

29

30

31

1

2

3

4

5

6

7

8

21

22

23

24

25

26

27

28

10

11

12

13

14

15

16

17

39

38

37

36

35

34

33

32

2040

RST

XTAL2XTAL1

PSEN

ALE/PROG

EA/VPP

P1.0

P1.1

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

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

P0.0/AD0

P0.1/AD1

P0.2/AD2

P0.3/AD3

P0.4/AD4

P0.5/AD5

P0.6/AD6

P0.7/AD7

GNDVCC

5V

C1

33pF

a,b,c,d,e,f,g

6.8K

C3

10uF

RN2

180

114

213

312

411

510

69

78

Do Trai

5V

6.8K

GND

C2

33pF

11.0569MHz

10K

NHAY

12

Vang Trai

B562

B562

6.8K

Xanh Trai

Hnh 2.9 S o nguyen ly en giao thong dung Vi ieu Khien AT89C51

2.3.Tnh toan thiet ke phan nguon.

* Yeu cau thiet ke.

Cung cap nguon DC cho vi ieu khien

Nguon phai on nh trong trng hp co ot bien ien ap.

+S dung IC on ap 7805 cung cap cho toan mach.

+Tu chong nhieu.

Chon cau chnh lu la loai diode 1N4007

C

1

= 2200

F

m

, C

2

= 104 lam nhiem vu loc nguon

C

3

= 470

F

m

, C

4

= 104 la cac tu loc nham tao ra ien ap DC tng oi phang

* IC 7805 la loai on ap co ac tnh nh sau:

ien ap ngo vao 8 35V

ien ap ngo ra on ap 5V

Dong ien danh nh 1A

Ta co s o mach nh sau:

220

AC

C4

104

C2

104

R1

1k

D1

LED1

+

C1

2200uF

IN

COM

OUT

U1

78L05

+

C3

470uF

D

4007

T1

BIEN THE

220

AC

C4

104

C2

104

R1

1k

D1

LED1

+

C1

2200uF

IN

COM

OUT

U1

78L05

+

C3

470uF

D

4007

T1

BIEN THE

Hnh 3.0 Mach nguon

2.4. Mach dao ong.

Trong he thong so noi chung va he thong Vi ieu Khien noi rieng xung Clock ong vai tro rat quan trong trong toan bo he thong, mot phan do tnh chat lam viec cua cac mach Logic nh : Counter, Timenhng chc nang quan trong nhat cua xung clock la ong bo cac hoat ong cua cac linh kien khac nhau trong mach do o mach tao xung thiet ke phai thoa man ieu kien sau:

Bao am o on nh cua tan so lam viec, giam toi thieu sai so ngau nhien.

Thch ng vi cac linh kien lam viec lien quan en ky thuat so . Mach tao xung c che tao trong IC AT89C51 do vay ieu kien th hai coi nh thoa man. oi vi mach dao ong dung RL o on nh khong cao do kho xac nh chnh xac c gia tr RL do o khong thoa man yeu cau at ra.

Do vay ta s dung Thach Anh la co tnh thuyet phuc nhat bi Thach Anh co tnh on nh cao va co gia tr xac nh sai so rat nho trong he thong bit, co the noi hau het cac linh kien eu trc tiep hoac gian tiep lien quan en tan so clock. Chnh v vay viec la chon tan so lam viec thch hp la mot trong nhng buc quan trong nhat. Nh chung ta a biet ieu kien ly tng tan so lam viec cua CPU phai hoan toan tng thch vi toc o truy xuat d lieu cua bo nh. ieu nay kho co the thc hien c v kho co the kiem tren th trng hien nay do vay ta phai chon giai phap khac linh hoat hn ma van ap ng c tan so lam viec cho he thong. Qua cac tai lieu cho thay toc o truy xuat d lieu trung bnh khoang 120ms en 450ms tung ng vi 2,2MHz en 8,3 MHz vi 89C51 tan so lam viec thng t 0Hz en 24MHz do o ta chon tan so trong khoang nay la c, ay tan so lam viec c chon la 11,0592MHz do thach anh 11,0592MHz rat pho bien hien nay va gia thanh ha so vi cac loai khac, mach c mac nh sau: C1, C2 on nh cho thach anh.Hnh 3.1 Mach dao ong2.5. Mach reset. Thc ra mach reset ch la mot mach nho vi chc nang tao ra mot xung tac ong vao chan reset cua CPU tai thi iem cap nguon cho he thong. oi vi AT89C51 chan reset c k hieu RST(9) chu tac ong tng ng vi trang thai [H], co ngha la khi chung ta a tn hieu vao mc [1] th se lam CPU quay tr lai trang thai ban au. Tac ong nay goi la reset CPU. Lu y la chan mang k hieu reset luon thng trc e trang thai thap [L] ch luc nao can reset CPU, ta mi tam thi a len trang thai cao [H].Mach ien sau ay ap ng c tat ca cac yeu cau at ra: Hnh 3.2 Mach reset Giai thch: oi vi mach nay khi chung ta cho ien ap vao mach th mach reset se t ong tac ong nen c goi la mach t ong reset hay mach reset khi ong nguon cung cap (power on reset). Ngoai ra bat k luc nao can thiet chung ta van co the nhan cong tat reset xuong e khi ong lai he thong.Thi gian reset cua AT89C51 tac ong mc cao trong khoang hai chu k may tc la khoang 2(s (trng hp mach dao ong s dung thach anh 11,0592MHz) sau o xuong thap e 89C51 bat au lam viec.Da vao thi hang RC e tnh toan ta chon c cac gia tr nh sau:R1=8,2 k(R2=100 (C=10 (F

2.6. Mach hien th va em lui.

2.6.1. S o mach.

Hnh 3.3 S o mach hien th em lui

2.6.2. Tnh toan va chon linh kien.

Dong qua moi thanh cua thanh 7 oan la 10mA.v ay la loai anot chung nen dong qua cc collector ic= 8 x 10 = 80mA(do ay la thanh 8 oan co them dau cham).Vay: chon dong qua cc E bang cc C: i

E

= i

C

= 80mA; V

CES

= 0.2V Chon Q

1

, Q2 la cac transistor cung loai thoa man cac ieu kien sau:Ic > Ics = 80mAVce > 2Vcc = 2 x 5 = 10VPtt > 3 x Ics x Vce = 3 x 80 x 0.2 = 48mWChon Q

1

, Q

2

la cac transistor loai B562 LoaiVcesIcPmaxf(PNP50V1A1W200120 Vay :chon dong qua cc E bang cc C: i

E

= i

C

= 80mAV

3

R

+ V

R

=V

CC

- V

CE

- V

LED

= 5 - 0.2 - 1.6 = 3.2VChon ap ri tren R

3

kha nho so vi R: VR3 = 0.8V;VR=2.4VSuy ra :R

3

=

mA

80

8

.

0

= 10

W

Chon R

3

=10

W

R =

LED

R

I

V

=

mA

10

4

.

2

= 240

W

Chon R = 220

W

Dong IBQ1=

min

1

b

CQ

I

=

120

80

mA

= 0.66mAChon dong qua R1 la: I

1

R

=10 x IBQ1=10 x 0.66 = 6.6mASuy ra dong qua R2 la: I

2

R

= I

1

R

- IBQ1 = 6.6 - 1.6 = 5mA R2=

2

1

3

R

BEQ

R

I

V

V

+

=

mA

5

8

.

0

8

.

0

+

=320(

Chon R2= 320(R

4

la ien tr lay dong phan cc cho cc nen cua Q

2

,chon mc Vlogic0=2,5v.Dong qua cc nen: I

2

BQ

=

min

2

b

CQ

I

=

120

80

mA

= 0.66mAR

4

=

2

0

2

BQ

Logic

BEQ

CC

I

V

V

V

-

-

=

mA

5

5

.

2

8

.

0

5

-

-

=340(Chon R

4

= 370(Do ta chon cac Transistor va Led 7 oan nh nhau nen cac ien tr han dong cho cc nen cua cac Transistor la nh nhau:Chon R

1

=R

4

=R

7

=R

10

=370(Chon R=220( Chon R

2

=R

5

=R

8

=R

11

=320( Chon R

3

=R

6

=R

9

=R

12

=10(

3.MUC LUC

CHNG TRNH IEU KHIEN EN GIAO THONG VIET

CHO VI IEU KHIEN AT89C51

3.1.Y tng thiet ke phan mem :

3.1.1.Phan ieu khien en giao thong:Tien trnh ieu khien theo ung muc ch:neu truc lo ben nay Xanh hoac Vang th truc lo ben kia phai o va ngc lai.

3.1.2. Phan hien th thi gian cua cac en giao thong S dung phng phap quet Led e cho cac Led sang ong thi trong khi ch co mot ng truyen d lieu ngo ra cung cap cho cac Led nao c cung cap ma va cho phep se sang.

Khi he thong hoat ong th Led 0 va Led 1 thc hien viec em xuong theo ung thi gian sang cua cac en.Hai Led nay se giam sau khi u mot giay.

3.1.3. chng trnh ieu khien he thong mach en giao thong va ong ho em lui.

a. Bang trang thai mo ta hoat ong cua cac en.

en

Port Noi

TT1

TT2

TT3

TT4

1

P1.0

0

0

1

1

V1

P1.1

1

1

1

0

X1

P1.2

1

1

0

1

2

P1.3

1

1

0

0

V2

P1.4

1

0

1

1

X2

P1.5

0

1

1

1

b. Ban Trang Thai cua Led 7 oan.

ong ho em lui c noi ra t port 3 cua Vi ieu Khien AT89C51.Cac thanh a,b,cf c noi lan lt vi cac chan t P3.0 P3.6 cua port 3

So TP a/P3.0 b/P3.1 c/P3.2 d/P3.3 e/P3.4 f/P3.5 g/P3.6Cham/P3.7Hex0000000110C0H1001111110F9H2001001010A4H3000011010B0H41001100199H50100100192H60100000182H7000111110F8H80000000180H90000100190H

PHAN HIEN TH

3.1.4.Chng trnh assembly ieu khien mach en giao thong:

;CHUONG TRINH DEN GIAO THONG

;P3 : A,B,C...

;P2.0 : CHUCPHAI

;P2.1 : DVPHAI

;P2.2 : CHUCTRAI

;P2.3 : DVTRAI

;P1.0 : DO TRAI

;P1.1 : VANG TRAI

;P1.2 :XANH TRAI

;P1.3 : DO PHAI

;P1.4 : VANG PHAI

;P1.5 : XANH PHAI

;40H : DON VI PHAI

;41H : HANG CHUC PHAI

;42H : DON VI TRAI

;43H :HANG CHUC TRAI

;-------------------------------------------

ORG 0000H

MOVP3,#0FFH

MOVDPTR,#LED7SEG

MOV TMOD,#06H

MOV TH0,#0

LJMPMAIN

MAIN:

JNBP1.7,VNHAY

JNBP1.6,CHINH

LJMPMAIN

VNHAY:

CLRP1.1

CLRP1.4

ACALLDELAY_1S

SETBP1.1

SETBP1.4

ACALLDELAY_1S

LJMPVNHAY

CHINH:

SETBP2.0;TAT TAT CA

SETBP2.1

SETBP2.2

SETBP2.3

SETB TR0

;---------------------------------------------------

PHAIXANHTRAIDO:

CLRP1.5;SANG PHAI XANH

CLRP1.0;SANG TRAI DO

MOVR0,#32;32S DEN XANH PHAI

MOVR1,#35;35S DEN DO TRAI

PXTD: ACALLPHAIXANHTRAIDOTOBCD

DECR0

DECR1

CJNER0,#00,PXTD

SETBP1.5;TAT XANH PHAI

CLRP1.4;SANG VANG PHAI

PVTD:ACALLPHAIXANHTRAIDOTOBCD

DECR1

CJNER1,#00,PVTD

ACALLPHAIXANHTRAIDOTOBCD

CLRP1.3;SANG DO PHAI

SETBP1.4;TAT VANG PHAI

CLRP1.2;SANG XANH TRAI

SETBP1.0;TAT DO TRAI

MOVR0,#35;35S DEN DO PHAI

MOVR1,#32;32S DEN XANH PHAI

PDTX:ACALLPHAIXANHTRAIDOTOBCD

DEC R0

DEC R1

CJNER1,#00,PDTX

SETBP1.2;TAT XANH TRAI

CLRP1.1;SANG VANG TRAI

PDTV:ACALLPHAIXANHTRAIDOTOBCD

DECR0

CJNER0,#00,PDTV

ACALLPHAIXANHTRAIDOTOBCD

SETBP1.3;TAT DO PHAI

SETBP1.1;TAT VANG TRAI

LJMPPHAIXANHTRAIDO

;----------------------------------------------------

PHAIXANHTRAIDOTOBCD:

MOVA,R0

ACALLBINTOBCD1

MOVA,40H

MOVCA,@A+DPTR

MOV40H,A

MOVA,41H

MOVCA,@A+DPTR

MOV41H,A

MOVA,R1

LCALLBINTOBCD2

MOVA,42H

MOVCA,@A+DPTR

MOV42H,A

MOVA,43H

MOVCA,@A+DPTR

MOV43H,A

ACALLHIENTHI

RET

;----------------------------------------------------

BINTOBCD1:

MOVB,#10;B=10

DIVAB

MOV40H,B

MOV41H,A

RET

BINTOBCD2:

MOVB,#10;B=10

DIVAB

MOV42H,B

MOV43H,A

RET

HIENTHI:

MOVR4,#150

HIENTHITT:

CLRP2.1;DON VI PHAI

MOVP3,40H

ACALLDELAY1MS

SETBP2.1

CLRP2.0;CHUC PHAI

MOVP2,41H

ACALLDELAY1MS

SETBP2.0

CLRP2.3;DON VI TRAI

MOVP3,42H

ACALLDELAY1MS

SETBP2.3

CLRP2.2;CHUC TRAI

MOVP3,43H

ACALLDELAY1MS

SETBP2.2

DJNZR4,HIENTHITT

RET

DELAY1MS:

MOVR2,#40

LOOP2:MOVR3,#20

LOOP1:DJNZR3,LOOP1

DJNZR2,LOOP2

RET

LED7SEG:

DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H

DELAY_1S:

MOV R1,#25

LOOP3:

MOV R2,#25

LOOP4:

MOV R3,#25

LOOP5:

DJNZR3,LOOP5

DJNZ R2,LOOP4

DJNZ R1,LOOP3

RET

END

PHAN 3 .KET LUAN VA HNG PHAT TRIEN E TAI

1. KET LUAN.

Qua mot thi gian nghien cu ve c ban a hoan tat e tai. o an mon hoc la c hoi e em van dung nhng kien thc a hoc vao thc te va bc au tiep can vi khoa hoc ky thuat mot cach trc tiep.

Sau khi hoan thanh e tai nay a phan nao em en cho em nhng kinh nghiem quy bau trong thiet ke phan cng cung nh trong van e lap trnh cho he thong ieu khien. Viec thiet ke phan cng cho phu hp nham am bao cho cac chc nang can thiet cua he thong. ong thi giup em rut ra nhng thieu sot e kp thi khac phuc

2. U IEM CUA HE THONG IEU KHIEN TRONG E TAI.

He thong c thiet n gian nhng van am bao c chc nang, muc ch at ra. Neu oi tng c ieu khien n le th viec s dung he thong nay em lai hieu qua cao. Do tnh n gian cua mach , va so lng linh kien t nen gia thanh re

3. NHNG VAN E CON TON TAI VA HNG PHAT TRIEN CUA E TAI.

He thong ieu khien cha thc hien giao tiep vi may tnh.Chnh s giao tiep vi may tnh mi co the lu lai cac thong so cua he thong, can c vao o co the thc hien ieu khien he thong phu hp hn, em lai hieu qua cao hn. Neu co nhieu he thong lam viec va at nhieu ni khac nhau ma khong giao tiep vi may tnh th rat kho khan trong qua trnh ieu khien.

He thong ieu khien en giao thong cha c m rong nhieu truc giao thong. Neu muon ieu khien mot mang en giao thong ta can nang cap phan cng va co the giao tiep vi may tnh e tien cho viec ieu khien he thong en giao thong.

TAI LIEU THAM KHAO

1. Ky thuat Vi ieu Khien

Tac gia: Le Van Doanh

Pham Khac Chung

Nha xuat ban Khoa hoc va Ky Thuat nam 1998

2.Bai giang vi x ly 1

Tac gia:Nguyen nh Phu

Bien soan nam 2010

3.Vi x ly

Tac gia:

Chng 4:He vi ieu khien 8bit 80c51

Th vien H SPKT TP_HCM

WWW.THUVIENSPKT.EDU.VN

Nguon ong ho ngoai

Thiet b noi tiep

Ngat ngoai

Thiet b song song

ieu khien ngat

Timer

Giao tiep noi tiep

Giao tiep song song

ong ho noi

CPU

Bus d lieu , a ch , ieu khien

RAM

ROM

128 Byte RAM

4 KB ROM

TEMER1

TEMER1

TXD RXD

P0 P1 P2 P3

Address\Data

ALE\ PSEN\

EA\ RST

SERIAL PORT

I/O PORT

BUS CONTROL

OSCILATOR

CPU

SERIAL PORT TEMER0

TEMER1

TEMER2 8032\8052

INT1\ INT0\

INTERRUPT CONTROL

OTHER REGISTER

TRx

Timer

clock

Timer

registes

0 = Up (timerstopped)

1 = Down (timer started)

EPROM

74HC373

D Q

G

D0 ( D7

A0 ( A7

A8 EMBED Equation.3

OE

89C51

Port 0

EA

ALE

Port2

PSEN

Selectother

EPROM/RAM

Data Bus (D0 ( D7)

Address Bus (A0 ( A15)

WR\

RD\

RAM

74HC373

D Q

G

D0 ( D7

A0 ( A7

A8 EMBED Equation.3

EMBED Equation.3

EMBED Equation.3

89C51

Port 0

EA\

ALE

P2.0

P2.1

EMBED Equation.3 EMBED Equation.3

PSEN\

OE D0 -D7

W

RAM

A0 ( A12

8K Bytes

0

1

2

3

4

5

6

7

C

B

A

E

E0

E 1

D0 - D7

OE

EPROM

A0 ( A12

8KBytes

RAM

WR\

OE\

EMBED PBrush

g

d

e

f

c

b

a

KHOI HIEN TH EM LUI

EN O

EN VANG

EN XANH

KHOI CONG SUAT CACH LY

KHOI VI IEU KHIEN

100(

10(F

8,2K

R1 = 0 ?

R0 = 3 ?

RET

S

Giam R1,R0 mot n v

NGUON

HIEN TH

LED

R1 = 32

R0 = 35

BEGIN

RET

S

R1 = 3 ?

R0 = 0 ?

Giam R1,R0 mot n v

HIEN TH

LED

R1 = 35

R0 = 32

BEGIN

SVTH: Le van Canh_Lp 08401DA Trang46

_1208843602.unknown
_1209109700.unknown
_1209144749.unknown
_1212511788.unknown
_1212514816.unknown
_1212514891.unknown
_1212514946.unknown
_1212515017.unknown
_1212514917.unknown
_1212514840.unknown
_1212511877.unknown
_1212512210.unknown
_1212511831.unknown
_1209365132.unknown
_1209365176.unknown
_1209365198.unknown
_1209145081.unknown
_1209145269.unknown
_1209145429.unknown
_1209144819.unknown
_1209121980.unknown
_1209123685.unknown
_1209124242.unknown
_1209144708.unknown
_1209144729.unknown
_1209124292.unknown
_1209124320.unknown
_1209124364.unknown
_1209124308.unknown
_1209124253.unknown
_1209124219.unknown
_1209124230.unknown
_1209123700.unknown
_1209122721.unknown
_1209123659.unknown
_1209123671.unknown
_1209123633.unknown
_1209122202.unknown
_1209122295.unknown
_1209122446.unknown
_1209122170.unknown
_1209120021.unknown
_1209120571.unknown
_1209120855.unknown
_1209121572.unknown
_1209121838.unknown
_1209120915.unknown
_1209120624.unknown
_1209120447.unknown
_1209120530.unknown
_1209120408.unknown
_1209120288.unknown
_1209120374.unknown
_1209109816.unknown
_1209118920.unknown
_1209119996.unknown
_1209118886.unknown
_1209118547.unknown
_1209109717.unknown
_1208889017.unknown
_1209107746.unknown
_1209109606.unknown
_1209109664.unknown
_1209109574.unknown
_1209107709.unknown
_1209107724.unknown
_1209104871.unknown
_1209105242.unknown
_1209105123.unknown
_1208982599.unknown
_1208982928.unknown
_1208982973.unknown
_1208982773.unknown
_1208982381.unknown
_1208982406.unknown
_1208889140.unknown
_1208880589.unknown
_1208885410.unknown
_1208885834.unknown
_1208885108.unknown
_1208852443.unknown
_1208869869.unknown
_1208844794.unknown
_1208842902.unknown
_1208843333.unknown
_1208843551.unknown
_1208843585.unknown
_1208843383.unknown
_1208843275.unknown
_1208843304.unknown
_1208843208.unknown
_1180182663.vsd

0 1 2 3 4 5 6 7 0

clock

Q0 (LSB)

Q1

Q2 (MSB)

count

Flag

_1180264959.vsd

Overflow

_1208785447.unknown
_1208786536.unknown
_1180265032.vsd

Overflow

_1180264194.vsd

Overflow

Reload

_1180264838.vsd
_1180263656.vsd
_1180264086.vsd

Overflow

Overflow

_1180263564.vsd

1

_1180170160.vsd

Timer SFR Purpose Address Bit-Addressable

TCON Control 88H YES

TMOD Mode 89H NO

TL0 Timer 0 low-byte 8AH NO

TL1 Timer 1 low-byte 8BH NO

TH0 Timer 0 high-byte 8CH NO

TH1 Timer 1 high-byte 8DH NO

_1180179157.vsd

M1 M0 Ch M ta

0 0 0 Ch nh thi 13 bit

0 1 1 Ch nh thi 16 bit

1 0 2 Ch t ng nap lai 8 bit

1 1 3 Ch nh thi chia xe

B nh thi 0: TL0 la 1 b nh thi 8 bit c iu khin bi cac bt chon ch cua b nh thi 0. TH0 tng t TL0 ch khac la c iu khin bi cac bit chon ch cua b nh thi 1B nh thi 1: dng, khng hoat ng

_1180181913.vsd

Bit Symbol Bit Address Description

TCON7 TF1 8FH C bao tran timer1 c t bi phn cng khi tran, hoc xoa bi phn mm hoc phn cng khi b x ly ch n chng trnh phuc vu ngt

TCON6 TR1 8EH Bit iu khin timer 1 chay. t /xoa bng phn mm cho timer chay /ngng

TCON5 TF0 8DH C bao tran timer 0

TCON4 TR0 8CH Bit iu khin timer 0 chay

TCON3 IE1 8BH C ngt bn ngoai 1 (kch khi canh). C nay c set bi phn cng khi co canh xung xut hin trn chn INT1, c xoa bi phn mm hoc phn cng khi CPU tro n trnh phuc vu ngt.

TCON2 IT1 8AH C ngt bn ngoai 1 (kch khi canh hoc mc ) c nay c set hoc xoa bi phn mm khi xay ra canh xung hoc mc thp tai chn ngt ngoai.

TCON1 IE0 89H C ngt bn ngoai 0 (kch khi canh)

TCON0 IT0 88H C ngt bn ngoai 0 (kch khi canh hoc mc)

_1180178340.vsd

Bit Name Timer Description

7 GATE 1 Khi GATE = 1, Timer ch lam vic khi INT1=1

6 C/T 1 Bit cho m s kin hay ghi gi

- C/T = 1 : m s kin- C/T = 0 : Ghi gi u n

5 M1 1 bit chon mode cua timer 1

4 M0 1 bit chon mode cua timer 1

3 GATE 0 bit cng cua timer 0

2 C/T 0 Bit chon Counter/Timer cua Timer 0

1 M1 0 Bit chon mode cua timer 0

0 M0 0 Bit chon mode cua timer 0

_1146933223.unknown