You are on page 1of 47
BO GIAO THONG VAN TAI TRUONG BAI HOC GIAO THONG VAN TAI TP. HCM BAI TAP LON MON: KY THUAT VI XU LY GIANG VIEN: NGUYEN THANH HIEU i: UNG DUNG 8051 DIEU KHIEN DEN GIAO THON Nh6m SV thye hién: Nh6m |: 1. Nguyén Vin Ca 2. Nguyén Ba Cuong 3. Lé Van Hu 4, Sa Huynh Loc 5, Dao Van Linh 6. Duong Quéc Uy Nhom | Khoa Dién-Dién tit vién thong PHY LUC Trang PHAN I - TONG QUAN VE DEN GIAO THONG. eT ee | 1.2 Céc thinh phin chinh cia he théng dén giao thang dig vi digu khién AT89CS1 1 13 Nguyén ly hogt dng oo cosssnnnnnnnnnnnnnnnnnnnn ss so soon 14 Ngon ngtr sir dung va phin mém mo phéng, 141 Neon ngte 142 Phin mém mé phéng Phan 2- KHAO SAT VI DIEU KHIEN AT89CS1 2 2 2 2 1S Téng quit 2 1.6 Céc chan 3 161 Vee. 3 162 3 4 4 5 163 164 PSEN. 1.65 ALE/PROG 166 — EAIVpp S 16.7 RESET (RST), 5 168 XTALI& XTAL2 17 Té-chite b6 nhé. 5 1.7.1 Ving RAM da mye dich 1.72 Ving RAM dinh dja chi bit. 1.73 Cac day thanh ghi 18 BO nhé ngodi 1.8.1 Truy xuft bé nho chuong tinh ngoai 1.82 Truy xudt 69 ahd di ligu ngoai 1.83 Giai ma dia chi 19 — Giao tiép ngopi vi 1.9.1 LED 7 dog (7 Segment LED) Phin 111 - UNG DYNG 8051 DIEU KHIEN DEN GIAO THONG. Chuwong | - Xay Dung Phin Cig. Nhom | Khoa Dién-Dién tit vién thong 1.1. Mach dao dng va mach Reset 13 a, Mach dao dong. 13 b. Mach Reset 13 1.2. Mach bién thi dém nguge LED 7 doan 4 1.3, Mach hién thj LED don, 15 Dia chi va mute dieu khién.... 6 1.4. So dé nguyén ly mach phin ctng. 17 19 Chiong I — Xay dung Iuu 48 thuit toan Chiong III — viét chuong trinb (Ding ng6n ngit C, Assembly , Lip trinh c ing phin mém Keil Nhom | Khoa Dién-Dién tit vién thong LOINOI DAU Trong nhitng nim gain day trén thé gidi cing voi su phét trién manh mé cia ngdnh céng nghigp ché tao linh kién ban dan va vi mach tng hop, mot huéng phat trién méi cia cdc vi xie by da hinh thank do la céc vi diéu khién, Voi nhiéu uu diém, vi diéu khién da duoc stb dung rng rai trén nhiéu link vue khée nhau. Bang céch dp dung vi déu khién trong qué trinh san xudt va xte Ij, vi diéu khién da thie sue thé hign duege wu thé ctia minh so voi cdc thiét bj diéu khién thing thedng.Vi nhieng 1 do trén, trong nhiéu trong Dai Hoc, Cao Daing, vi xit i thyc sue tro: thanh mét mén hoc hét site quan trong, vi xie lp 8051 gan mhue li m6t mén hgc sic dung dé trang bj cho ching ta nhting kién thikc co ban ve vi xit ly, tie a6 mo réng ra céc logi vi xie ly khac cb cau tric phitc tap hon nlur AVR, PIC, ...Qua Bai tap nay, da gitip ching em cé duoc hinh dung thee té vi xtc bi duoc dp dung nue thé nao trong cube séng hién dai, cu thé chinh la hé thong dén giao théng ding vi diéu khién AT89C51. Dé an gdm 3 chuong: Phdn I: Tong quan vé den giao thong, gidi thigu khai quat dé tai, cdc thanh phan chinh cua hé thong den giao thong, nguyén ly hoat déng, ngén ngir sir dung va phan mém md phéng. Phan II: Khao sat vi déu khién 8051 (AT89C51). Phan II: Ung dung 8051 diéu khién dén giao thong. Chuong I. Xay dung phan cing. Chwong I. Xay dung luu dé thudt todn. Chucong IIT. Viét chucong trinh (ding C, Assembly) Ching em xin chéin thank cam on! Tp. Hé Chi Minh , Thang 12 nam 2013 Nhém sinh vién thie hign (Nhém 1) Nhom | Khoa Dién-Dién tit vién thong PHAN I - TONG QUAN VE DEN GIAO THONG 1.1 Gidi thigu a Ngay nay cling véi sy phat trién ctia khoa hoc kj thudt, x4 hdi ngay cdng vin minh va hign dai, ede d6 thi ngiy mot di lén. Nhu cau vé giao théng ngiy cing tré nén cp thiét, nhat Ja trong cdc khu vue thanh thj. Do nhu cdu cua dai séng con ngudi, dic biét li nhu cau di lai, cc loai phuong tign giao théng da ting ich chéng mat. Riéng tai Vigt Nam s6 lugng xe may trong nhimg nim qua ting mét cdch dot bién, mat d6 xe luu théng trén dudng ngay mét nhiéu, trong khi dé hé théng duéng x4 tai Viét Nam cén qua nhiéu han ché nén thuong gay 1a cdc hign tugng nhu ket xe, ach tic giao théng, dc bigt 1a tai nan giao théng ngay cing phé bién tré thinh méi hiém hoa cho nhiéu ngudi, Vi ly do d6 cdc lugt giao théng lan lugt ra d0i va duge dua vao sir dung mét céch ling Je ri din tré nén pho bien nhw hign nay. Trong d6 hg thong dén giao thang la céng cy dieu khign giao théng cng cng thye té va higu qua c6 vai trd rat lon trong vige dam bao an toan va gidm thiéu tai nan giao thong. n | “Thiét ké mach dén giao thong ding vi didu khién 8051” nhim gidp cho moi ngudi nhit 1a ting lép sinh vién cé ¥ thife hon trong vige chdp hinh ludt Ig an toan giao théng. ‘Tir thyc té d6 nhém ching em thyc hign dé tai “ Voi you edu khi h@ thng chay, che dén xanh, vang va dé sing trong thai gian mic dinh twong teng Id 30s, 5s va 25s. Ngodi ra con cé ché dé bing tay va di chinh thai gian cho céc den. 1.2 Cac thanh phan chinh cia hé thong dén giao théng ding vi diéu khién AT89CS1 H¢ théng dén giao théng gdm 4 phan chai yéu sa Mach diéu khién trung tam dimg vi dieu khign AT89C51 — Mach dao déng, reset. — Mach hién thi thi gian, trang thai dén. Phim nhan diéu khién trang thai dén, chinh théi gian. 1.3 Nguyén ly hoat dong Mach dén giao théng hogt dng dya trén n6i dung da lap trinh cho AT89CS1, khi ¢6 tée d6ng tir céc mit diéu khién mach hoat dng theo dung théi gian yéu cau. AT89C51 dura dir gu dén cic LED xanh, dé, vang dé diéu khién cic LED nay déng, mé. Ngoai ra, né con dén céc BIT dé diéu khién cdc LED 7 dogn. LED 7 doan cén nhan dit ligu tir vi digu khién trung tim dé thyc hign vige dém lui thoi gian, Ching ta sit dung ngit ngoai 0 va ngit ngoai 1 dé diéu khién dén tin higu giao thng bing tay va cai dt thoi gian cho cdc dén (Xanh, 46, ving). Nhu vay mdi khi mach bi vang sing thi truc 16 bén kia dén d6 sing va nguge li nit nhan. Tuy theo théi gian yéu cau ma ta digu khién ju thye hign dém Idi, néu truc 16 bén nay dén xanh hodc B6 phan diéu khién AT89CS1 1a cdc tryc giao théng sing, AT89CS1 sé 1 Nhom | Khoa Dién-Dién tit vién thong xuat ra céc cong /O nhing xung 6 mite cao hoge mite thap dé diéu khién cae BJT tir dé diéu khign cdc dén hién thi. Khi AT89CS1 nhén tin hiéu digu khién tir cdc phim nhn, né sé quét va tim ra chuong trinh duge ma héa phi hgp véi tin higu diéu khién dé hoat dng. 1.4 Ng6n ngir sir dung va phan mém mé phéng 141 Ngon ngit Ngén ngit Assembly. Ngén ngtr lép trinh C. Phan mém Keil C 1.4.2. Phin mém mé phong Phan mém PROTEUS Phan 2 - KHAO SAT VI DIEU KHIEN AT89C51 1.5 Tong quat Hinh 2.1 Hinh dang AT89C51 AT89C51 1a mOt hé vi tinh 8 bit don chip CMOS cé higu suit cao, cng sudt n; thy thip vi 6 4KB b9 nhé ROM Flash xéa duge/ldp trinh duge. Chip nay duge sin xudt dya vao céng nghé b6 nhé khéng mat ndi dung cé dé tich hgp cao cia Atmel. Chip AT89CS1 cling tong thich véi t§p Iénh va cdc chan ra cia chudn cng nghiép MCS-51, Flash trén chip nay cho phép b6 nhé chong trinh duge lap trinh lai trén hé thong K&t hop mét CPU linh hoat 8 bit véi Flash trén mot chip don thé, Atmel 89C51 1 mét hé vi tinh 8 bit don chip manh cho ta m6t giai php c6 higu qua vé chi phi va rit linh hoat d6i voi cae img dung diéu khién, AT89C51 c6 cdc dc trung chudn sau: 4KN Flash, 128 byte RAM, 32 dudng xudt nhdp, 2 bé dinh théi/dém 16 bit, mét cau trac ngét hai mife wu tién va 5 nguyén nhan ngit, mot port néi tiép song céng, mach dao d6ng va tao xung clock trén chip. Ngoai ra AT89C51 duge thiét ké véi logic tinh cho hoat déng cé tan s6 giém xudng 0 va hé trg hai ché d6 tiét kigm nang lugng duge Iya chon bing phan mém. Ché 46 nghi dimg CPU trong khi van cho phép RAM, cic b6 dinh théi/dém, port ndi tiép va hé théng ngat tiép tuc hoat déng. Nhom | Khoa Dién-Dién tit vién thong Cau hinh chan cia AT89CS1 nhw sau: aged: 7 ab vee 72. Ex) Pit Ge 30 Fi Po.a (aD0) pi2ds 38 fi Pot (abt) prods 37 B Po.2 (Adz) prads 36 B Poa (ads) prs 35 fi Po4 (ada) pre d7 34 B Pos (ADs) pire 33 B Pos (ape) ast 9 32 B por (aD7) (Rx) P3.0 G 10 31 B EAiver, (7x0) P31 hn 30 B ALE/PROG (INTO) P32] 12 20 f PseN (NTH) P33 13 28 b p2.7 (ats) (To) P34 14 27 b res (11) P35 15 26 B 2s ais) (WR) P36 16 25 P24 (A12) (FD) P37 17 2a B p2acany xTaL2 ql 18 23 B p22 (ato) xTALI ] 19 22 B Pat (a9) eno cf 20 21 f p20 (as) Hinh 2.2 So do chan cia AT89CS1 AT89C51 6 tit c4 40 chin, MGi chan c6 chite nang nh céc dirang /O (xudt/nhdp), trong dé 24 chin c6 cng dung kép: méi dudmg cé thé hoat ding nh m6t dung I/O hode nhu mét dwéng digu khién hoc nh thanh phan ciia bus dia chi va bus dit ligu. 1.6 Cae chin Hinh 2.2 cho ta so dé chan cia chip 89C51. M6 ta tom tit chite nang cia timg chan nhu sau. Nhu ta thay trong hinh 2.1, 32 trong sé 40 chan cla 89C51 cé céng dung xuat/nhap, tuy nhign 24 trong 32 duéng nay 06 2 mue dich (céng dung). Mdi mét dudng c6 the hoat déng xuatinhap hoic hoat déng nhu m$t duéng diéu khién hoc hoat déng nhu mét duéng chi/dit ligu ciia bus dia chi/dit ligu da hop. 32 chan néu trén hinh thanh 4 port 8 bit. Voi cdc thiét ké yéu cau mét mute t6i thigu bo nhé ngoai hodec cdc thanh phan bén ngoai khac, ta c6 thé str dung cdc port nay lam nhiém vu xudt/nhap. 8 duong cho méi port cé thé durge xir ly nhu mét don vi giao tiép véi cdc thiét bi song song nhw may in, bd bién déi D-A, v.v... hodc méi dudng o6 thé hoat déng dc lép giao tiép v6i mét thiét bj don bit nhu chuyén mach, LED, BIT, dng co, loa, v.v 16.1 Vee Chan cung cap dién (5V). 1.6.2 GND Chan néi dat (OV), Nhom | Khoa Dién-Dién tit vién thong 1.6.3, Cac Port 1.6.3.1Port 0 _ Port 0 (cde chan tir 32 dén 39 trén 89C51) 06 hai céng dung. Trong cdc thiét ké 06 161 thigu thanh phan, port 0 duge sir dung lam nhigm vu xudt/nhap. Trong cdc thiét ké lén hon 6 b6 nhé ngoai, port 0 tré thanh bus dia chi va bus dir ligu da hop. 1.6.3.2Port 1 Port 1 chi c6 céng dung 1a xudt/nhdp (cdc chan tir 1 dén 8 trén 89CS1), Cae chan cla port 1 durgc ky higu 1a P1.0, P1.1, ... , PI.7 va duge ding dé giao tigp véi thiét bj bén ngoai khi c6 yéu edu. Khong cd chite ning nio khac nita gan cho cae chin cia port 1, nghia la chung chi duge sir dung dé giao tigp véi céc thiét bi ngoai vi. 1.6.3.3Port 2 Port 2 (cdc chan tir 21 dén 28 trén 89CS1) c6 hai céng dung, hoge Lim nhigm vu xuaU/nhap hode la byte dia chi 16 bit cho céc thiét ké c6 b6 nhé chong trinh ngoai hode cae thiét ké c6 nhiéu hon 256 byte bd nhé dir ligu ngoai. 1.6.3.4Port 3 _ Port 3 (cde chan tir 10 dén 17 trén 89C51) c6 hai céng dung. Khi khéng hoat dgng xudt/nhdp, cdc chan cia port 3 cé nhiéu chite nang riéng (mai chan cé chire nang riéng lién quan dén ic trung cy thé ciia 89C51). Bang 2.1 duéi day cho ta chtte nang cua cac chan cua port 3. Chan etia port _| Chite nan P30 RxD (_ngé vao ciia port ndi tiép) P31 TxD (ngé ra ciia port néi tiép) P32 INTO (ngé vio ngat ngoai 0) P33 INT 1 (ngé vao ngét ngoai 1) P34 TO (ngé vao bén ngoai ciia bé dinh thai 0) P3.5 T1 (ngé vao bén ngoai ctia bé dinh thdi_1) P36 WR (diéu khién ghi b6 nho dit ligu ngoai) P3.7 RD (diéu khién doc b6 nh dv ligu ngoai) 1.64 PSEN Chan cho phép b6 nhé chuong trinh PSEN (program store enable) diéu khién truy xuat b@ nhé chuong trinh ngoai. Khi AT89CS1 dang thye thi chuong trinh trong bd nhé chuong trinh ngoai, PSEN tich cwe hai lan cho mi chu ky may, ngoai tris truong hgp 2 tac dong ciia PSEN bj bé qua cho méi Jan truy xuat b6 nhé dit ligu ngoai. Nhom | Khoa Dién-Dién tit vién thong 1.6.5, ALE/PROG Xung cia ngé ra cho phép chit dia chi ALE (address latch enable) cho phép chdt byte thap cia dja chi trong thdi gian truy sudt bé nhé ngoai. Chan nay cling duge ding lim ng vao xung Ip trinh (PROG) trong théi gian lap trinh cho Flash. Khi hoat déng binh thudng, xung cla ngé ra ALE luén luén cé tan sé bang 1/6 tan sé cla mach dao dng trén chip, ¢6 thé duge sir dung cho cdc myc dich dinh thai tir bén ngoai va tao xung clock. Tuy nhién can hru ¥ 1a mét xung ALE sé bj bé qua trong méi mét chu ky truy xuat b6 nhé dir ligu ngoai chi 0000H cho dén FFFFH. Tuy nhién can luu ¥ 1a néu bit khéa 1 (lock ngoai, bat dau tir di “ ZA sé duge chét bén trong khi reset. bit 1) duge lap trinh, EA nén néi véi Vec dé thyc thi chuong trinh bén trong chip. Chan EA/Vpp cén nhan dign 4p cho phép Ip trinh Vpp trong thai gian lap trinh cho Flash, dign ap nay cdp cho cdc b6 phan cé yéu cau dién dp 12V. 1.6.7 RESET (RST) Ng vio RST (chin 9). Mate cao trén chin nay trong 2 chu ky may trong khi b6 dao dGng dang hoat dong sé reset AT89CS1. 1.6.8 XTALI & XTAL2 XTALI ngé vao dén mach khuéch dai dao ctia mach dao déng va ngé vao dén mach tao xung clock bén trong chip. XTAL2 ng6 ra tir mach khuéch dai dao ciia mach dao dong. 1.7 Té chite bé nhé AT89C51 cé khéng gian b§ nhé rigng cho chuong trinh va dit ligu. Ca hai bd nhé chwong trinh va dir ligu déu dat bén trong chip, tuy nhién ta cé thé mé rdng b6 nhé chong trinh va 6 nhé dit ligu bing cach sit dung cdc chip nhé bén ngoai véi dung lugng 16i da 1a 64KB cho b6 nhé chong trinh (hay b} nhé ma) va 64KB cho bé nhé dé ligu, B6 nhé néi trong chip bao gsm ROM va RAM. RAM trén chip bao gdm ving RAM da chite nang (nhiéu céng dung), ving RAM véi ting bit dugc dinh dja chi (goi tat 1a ving RAM dinh dja chi bit), cdc day (bank) thanh ghi va céc thanh ghi chite nang dae bigt SFR (special funtion register) Hinh 2.2 cho ta chi tiét cia b6 nhé dif ligu trén chip. Ta thay ring khéng gian nhé ndi lge chia thanh: cae day thanh ghi (00H+1FH), ving RAM dinh dia chi bit (20H+2FH), ving RAM da mye dich (30H7FH) va céc thanh ghi chire nang dic biét (80H=FFH). Nhom | Khoa Dién-Dién tit vién thong 1.7.1 Viing RAM da muc dich Mac dit hinh 2.2 trinh bay ving RAM da myc dich c6 80 byte dit 6 dia chi tir 30H dén TFH, bén dud ving nay tir dia chi OOH dén 2FH 18 ving nhé cé thé duge sir dung twong ty (mic dit cde vi tri nhé nay c6 cde muc dich khic). Pie ct ‘be 5 ew Bia tt bir Plachi Becht ie bh ie © flp[slslsle[ale|e eo [ETTEsTESTes [es JETTED) acc AN aa done po [p7|p6]ps|D4]p3]p2] - [pa|psw vo [1 [= Be aIEAlao[aS Pee pela [27 [36 | 75 [74] 73 [72 [71 [70] bo [B7]B6]85]84]B3]B2]81]B0|P3 ll [op o|oa laos [a7 66 | 68 [64] 63 [62 [61 [60] as [Ar] -[- Jaclan[aa[ao]as|ne ies so|sc]so [salsa [s7 [50] 35 [54] 53 [525150] ao [arTao[asTashs [azlai[ao|r2 ll sls] [1:0 frlislas|ias|2[al0) (Riga mara Isao [ar [36 | 30 [3c] 3B [3a [39 38] es [oe] 9E]9D [9c [9B ]9a] 99] 95 |scoN 5 3 5435139120 [ar 2620 [2c] so [o7]es]os [oa Tos To2Toi]oo|r1 m [Ebals ls ® [irielli so vag ae a ane rm > [ipjihis se | Tetenr anes a it frH0 a fe as] s | Rig ae dis iB tIrU1 20 [orl [oo] 84 | Khéng dite dia chi hda bit |TLO ba © [CRowns auc ins t—[ri00 a se [aF[sF]sp]3c[sB|sa[ a9] 38 |tcoN = — [PRs ata iba PON io ot ma © Tia aaca ana for 2 [Titties tore o> [Raakimch gn micaincto] m1 [Kast dacs ts © RO- R7 (Bank 0) so [e7[se] 55 [s4 [ss [s2[s1]s0 mAN Che THANIEGHTCHUCNANGDAC BIET Hinh 2.3 B6 nhé dit liéu trén chip 89C51 1.7.2, Ving RAM dinh dia chi bit AT89C51 chira 210 vj tri bit duge dinh dja chi trong dé 128 bit chtta trong cdc byte & dia chi tir 20H dén 2FH va phan cén Iai chita trong cde thanh ghi chite ning dc biét. 1.7.3 Cée day thanh ghi 32 vj tri thap nhat cia b6 nhé ndi chita cdc day thanh ghi 1.8 BO nhé ngoai Céc bé vi diéu khién can cé kha ning mé r6ng céc tai nguyén trén chip (b6 nhé, /O, v.v...) 48 tranh hign tuomg c6 chai trong thiét ké. Cau trite ciia MCS-S1 cho ta kha ning mé rng khéng gian b6 nhé chuong trinh dén 64K va khong gian bd nhé dit ligu dén 64K. ROM va RAM duge thém vao khi can. Nhom | Khoa Dién-Dién tit vién thong 18.1 Truy xudt b6 nhé churong trinh ngoai BG nhé chuong trinh ngoai 1a b6 nhé chi doc, duge cho phép béi tin higu PSEN. 1.8.2 Truy xudt b6 nhé dit ligu ngoai B6 nhé dir ligu ngoai 1a b6 nhé doc/ghi duge cho phép béi cc tin higu RD va WR 6 cic chan P3.7 va P3.6. 183° Gi ‘Néu cé nhiéu EPROM hodec nhiéu RAM hoa gidi ma dia chi. MOt IC giai ma dién hinh 1a 74HC138, 1.9 Giao tiép ngoai vi 1.9.1 LED 7 dogn (7 Segment LED) Dang LED mé dja chi i hai giao tiép voi 89CS1 ta in phai LED Anode chung COM Doi voi dang Led Anode chung, chan COM phai c6 mite logic 1 va muén sang Led thi tuong img cdc chan a~ f, dp sé 6 mite logic 0. Bang ma cho Led Anode chung (a la LSB, dp li MSB): Nhom 1 Khoa Dién-Dign te vién thong so [dp|g|f e[d]ec]|b|a|Mahex o 1 fifo ofololofo| ocon 1 [1 [i{iiififofoji | orn 2 [1 [o]1 ofo{1 [oo] cas 3 [1 /o}1 1folo]ofo| opon 4[1folo ififolo{i| on S[1[olo 1fololi jo] 92H 6 [1 folo ofololi jo] su 7 [1 [1]1 1] 1] oJo Jo] orsn 8 [1 folo ofololojo| son 9 [1 [ojo 1fololojo] 90H 24. Thanh ghi didu khién bj dinh thdi/bg dém TCON ( Timer/Counter Control Register): Thanh ghi nay bao gém cdc bit trang thai va cdc bit diéu khién béi Timer 0, Timer 1. Thanh ghi TCON cé bit dinh vi. Ky higu: TCON Chie nang: diéu khién b6 dinh thoi/b6 dém. Dia chi byte: 88H Dinh dia chi bit: 06 Dinh nghia bit: Kyhigu | Vitri_ | Diachi Moti Cé tran b6 dinh thai 1. Dugc Set bai phan cig TF1 | TCON.7) 8FH _ | khi b6 dinh thoi/dém bj tran, duge x6a boi phan mém hoje phan cimg khi trinh phuc vu ngat duge Bit diéu khién b6 dinh th0i 1 hoat dng. Duge TRI |TCON.6| 8EH | Set/Clear boi phan mém dé digu khién b6 dinh thoi 11 hoat déng hoe ngung hoat dong. TFO [TCONS| 8DH__| Cétrin bd dinh thai 0 TRO [TCON4| 8CH _ | Bit diéu khién b6 dinh thoi 0 hoat ding. Ca ngit ngoai 1 tac dng canh. Duge Set béi phan TEL |TCON3| &BH | cimg khi phat hién cé ngit ngoai tac dng canh, duge xéa boi phan cimg khi ngit duge xi ly. Nhom 1 Khoa Dign-Dién te vién thong Bit diéu khién chon ngat. Duge Set/Clear dé xc IT1_ |TCON.2] 8AH | dinh ngit ngoai thudc logi tac dng canh xudng hay tac d6ng mirc thap. EO |TCON.1| 89H | Céngat ngoai 0 téc déng canh. ITO |TCONO| 88H __| Bit digu khién chon loai ngat 2.1.1 Thanh ghi TMOD (Timer/Counter Mode Control Register): Thanh cao dit ghi nay gom 2 nhom 4 bit: 4 bit thap dit mode hoat déng cho Timer 0 va 4 bit (mode hoat dong cho Timer 1 Ky higu: TMOD Chite ning: diéu khién chon ché 6 dinh thai/b6 dém. Dija chi byte: 89H Dinh dia chi bit: khéng, Timer 1 GATE| C/T | M1 | Mo | GATE MO 7 6 5 4 3 0 Dinh nghia bit Ky higu Mota GA Bit diéu khién cng. Khi bit TRx trong TCON duge Set bang 1 vi GATE = 1, b6 dinh thai/dém chi hoat dong trong khi chan INTx 6 mite cao(diéu khign cig). Khi bit GATE = 0, b6 dinh thoi/dém chi hoat dng trong khi chin TRx 6 mite cao(diéu khién mém). cr M1 MO Hai bit Bit chon chite nang dém hay dinh thai cho 66 dinh thoi/dém. Khi C/T 0, b6 dinh thai/dém hoat déng dinh thai(ding xung Clock nh§n tirngd vao Tx), Bit chon ché dé. Bit chon ché dé. M1,MO ding dé chon mode Timer 0 va Timer 1: 0 13 bit (trong thich ho 8048) o [1 1 h thei/dém 16 bit. 1 | 0 | 2 _[Bodinh thoidém 8 bit tyr dng nap lai Nhom | Khoa Dién-Dién tit vién thong B6 dinh théi 0: TLO 1a b6 dinh thai/dém 8 bit dugc diéu khien bai cdc bit diéu khin b6 dinh théi 0. THO 1a bd dinh thai 8 bit duoc diéu khién béi cdc bit digu khién bé dinh thi 1. BO dinh thai 1: BO dinh thai/dém 1 ngung hoat dng. 2.1.2. Hé cae thanh ghi phuc vu dinh thai: HG thanh ghi nay gém 4 thanh ghi né cho phép lip trinh vién nap gid tri cho b6 dink thoi, Thue té chi 2 thanh ghi 16 bit nhumg né durge ct di thank 4 thanh ghi 8 bit. Trong dé 2 thanh phue vy cho Timer 0 va 2 thanh phyc vu cho Timer I. BO Timer 0 6 hai thanh ghi la THO va TLO, hai thanh ghi nay khéng dinh dia chi bit. Dia chi: 8CH Dia chi: 8AH B6 Timer 1 c6 hai thanh ghi la TH1 va TL1, hai thanh ghi nay khéng dinh dia chi bit Dia chi: 8DH Dia chi: 8BH Thanh ghi TIMER Vi Diéu Khién 89C51 c6 2 timer 16 bit, mdi timer c6 b6n cach lam 9 Nguoi ta sit dung cde timer a6: © Dinh khoang thi gian. © Dém sy kign, © Tao tée 46 baud cho port néi tiép. ©. ‘Trong cdc img dung dinh khoang thai gian, ngudi ta lép trinh timer 6 nhing khong déu din va dit co tran timer. Co duge ding dé déng b6 hoa chuong trinh dé thyc hign mét tic dong nhu kiém tra trang thai ciia cde ngd vio hode giti sy kign ra cde ngé ra, Cac img dung khac cé thé sir dung vige tao xung nhip déu dan cita timer dé do thi gian tri qua gitta hai sy kign (vi dy do 46 rong xung). © Thanh ghi ngit (INTERRUPT) o M6t ngit la su xay ra mét diéu kign, mot su kién ma no gay ra treo tam thoi thoi chuong trinh chinh trong khi diéu kién dé duge phuc vu bai mét chuong trinh khdc. © Cac ngit déng mét vai trd quan trong trong thiét ké va cai dit cdc mg dung vi diéu khién, Chang cho phép hé théng dap img bat déng b6 vai mét su kién va giai quyét sur kign dé trong khi mét chutong trinh khac dang thyc thi. 0 - Té chite ngdt ctia 89CS1 © C65 nguén ngit & 89C51: 2 ngit ngoai, 2 ngit tir timer va 1 ngit port 10 Nhom | Khoa Dién-Dién tit vién thong © néi tigp. Tat c cdc ngét theo mac nhién déu bi cdm sau khi reset hé théng va duge cho phép timg cdi mt bing phin mém, Mirc 46 wu tién ciia cdc ngét duge hru trong thanh ghi IP (Interrupt Priority) hay néi cach khdc thanh ghi IP cho phép chon mite uu tién cho cdc ngit (gia trj thanh ghi IP khi reset 1a 00h). o Bang 2.4 Tom tit thanh ghi IP Bit | Ky-higu | Dia chi bit Mota 1P.7 _ - Khéng duge mé ta 1P6 Khéng duge mé ta Ps ET2 BDH | Chon mie wu tién cao (-1) hay thép (-0) tai timer 2 IP4 ES BCH Chon mite wu tign cao (=1) hay thip (-0) tai cong ndi tiép. 1P3 ETI BBH Chon mite uu tién cao (=1) hay thap (=0) tai timer 1 1P2 EXI BAH Chon mite uu tign cao (=1) hay thip (-0) tai ngit ngoai 1 Pl ETO BOH Chon mite wu tién cao (=1) hay thap (=0) tai timer 0 1P.0 EXO B8H Chon mite wu tign cao (=1) hay thap (=0) tai ngit ngoai 0 Tom tat thanh ghi IP o A Néu2 ngit xay ra déng théi thi ngat nao cé nao 6 mite uu tién cao hon sé duge phue vu trade. o A Néu 2 ngit xay ra déng thdi c6 cing mite wu tién thi thir ty uu tién duge thyc hién tir cao dén thap nhu sau: ngat ngoai 0 — timer 0 — ngat ngoai 1 — timer 1 — cong ni tiép — timer 2. cee Nhom | Khoa Dién-Dién tit vién thong o A Néuchuong trinh cia mét ngit cé mite wu tién thap dang chay ma cé mét ngit xdy ra v6i mic wu tién cao hon thi chuong trinh nay tam dimg dé chay mét chuong © M6éi nguén ngit duge cho phép hodc cdm ngit qua mot thanh ghi chite nang dat biét cé dinh dia chi bit [E (Interrupt Enable: cho phép ngat) 6 dia chi A8H. o Bang 2.5 Tom tit thanh ghi IE Bit Bia chi bit Mota IE7 EA AFH Cho phép / Cim toan b> IE6 AEH | Khong duge mé ta IES ET2 ADH Cho phép ngit tir Timer 2 (8052) TE4 ES ACH Cho phép ngit port néi tiép IE3 ETI ABH Cho phép ngit tir Timer 1 IE.2 EX1 AAH Cho phép ngét ngoai 1 IE.1 ETO AQH Cho phép ngét tir Timer 0 Phan II - ‘NG DUNG 8051 DIEU KHIEN DEN GIAO THO! Chuong I~ XAY DUNG PH: Ur 12 Nhom | Khoa Dién-Dién tit vién thong 1.1. Mach dao dng va mach Reset Hinh 3.1 Mach dao déng va mach Reset a. Mach dao ding Tinh thé thach anh (Quartz Crytal) 1a logi da trong mé trong thién nhién, chinh 1a dioxyt silicium (SiOz). Tinh thé thach anh ding trong mach dao dng 14 mOt lat méng duge cit ra tir tinh thé Tuy theo mt cét ma lat thach anh 6 dic tinh khae nhau, Lat thach anh c6 dign tich tir nh hon lem? dén vai em? duge mai rét méng, phing (vai vai mm) vi 2 mat thit song song véi nhau, Hai mat nay duge ma kim logi vi ndi chan ra ngoai dé dé sir dung. 7 oO Kyhigu rT TI Hinh 3.2 Hinh dang thach anh Dic tinh cia tinh thé thach anh la tinh ap dign (Piezoelectric Effect) theo dé khi ta ap lye vao 2 mat cua Lit thach anh (nén hoc kéo din) thi sé xudt hign mot dign thé xoay chigu gitta 2 mit. Nguge lai dwéi tic dung ctia mét dign thé xoay chiéu, lét thach anh sé rung 6 mét tin s6 khéng déi va nhw vay tao ra m6t dién thé xoay chiéu cé tin s6 khéng déi, Tan s6 rung dng cia lat thch anh tiy thuge vao kich thude ciia m6 dic bigt Ia d6 dy mi Khi nhiét 46 thay di, tan s6 rung dng iia thach anh cing thay d6i theo nhumn; én dinh tét hon rat nhiéu so véi cdc mach dao dong khéng diing thach anh (tin s6 dao déng gan nhu chi tly thudc vio thach anh ma khéng Ig thugc mach ngodi). Dang b. Mach Reset Chan Reset (chan 9) c6 tae dung reset chip AT89CS1, mite tich cye eiia chén nay 1a mite 1, dé reset ta phai dua mite 1 (5V) dén chan nay véi thdi gian t6i thiéu 2 chu ky may (twong duong 2 S — d6i véi thach anh 12MHz). 13 Nhom | Khoa Dién-Dién tit vién thong Tan sé lam viée AT89C51 12 Chu ky may = thai gian si¢ly 1 1@nh: | T= Khi reset thi trang thdi cia RAM n6i khéng thay déi, bang trang thdi clia cdc thanh ghi khi reset Thanh gi N6i dung ‘BO dém chuong trinh PC 0000H Thanh ghi tich lug A OOH Thanh ghi B 00H ‘Tit trang thai chong trinh PSW 00H Con tr st SP 07H Con tr dit ligu DPTR 0000H_ Port 0-3 FFH Thanh ghi wu tién ngat IP xxx00000B (8031/8051) xx000000B (8032/8052) Thanh ghi cho phép ngit IE ‘0xx00000B (8031/8051) 0x000000B (8032/8052) Cac thanh ghi dinh thoi 00H Thanh ghi dieu khién néi tiép SCON OOH B6 dém dit liéu noi tiep SBUF 00H Thanh ghi dieu khién nguon PCON (HMOS) OxxxxxxxB_ (CMOS) Oxxx0000B 1.2. Mach hién thi dém nguge LED 7 doan _ Khdi hién thj dém nguge led 7 doan: hién thi thai gian cla céc ché d6 thoi hign thi trén led 7 doan, cdc chan cia led duge ndi thong qua mét dign tré thanh IC vi diéu khién, Hinh 3.3 Hinh dang dién tro thanh Viée giai ma nhj phan sang led 7 doan diéu duge thyc hién trén vi digu khié doan duge néi theo kiéu anode chung, trong mach nay :chdn A nét chung cla cdc led duge diéu khién gin tiép tir chin P2.0 dén P2.3 théng qua cdc Trasistor H1061 (loai NPN). Led hoat dng voi dong tir 10mA. dén 20mA. Sir dung port (PO): PO.0, PO.1, PO.2, P0.3, PO.4, PO.5, PO.6, PO.7 , dé diéu khién cac chan K tot . Voi cdc chan A nét chung duge diéu khién théng qua cdc transistor H1061, digu khién hoat dong & ché d6 bio ha cung cdp dng cho n. Led 7 14 Nhom | Khoa Dién-Dién tit vién thong LED sang. Transistor H1061 duge néi voi port (P2): P2.0, P2.1, P2.2, P2.3 cita vi diéu khién 6 chire ning khuyéch dgi ding cho led 7 dogn hoat dng binh thudng. Cac chan tir P1.0 dén P15 ding dé diéu khién théi gian sang téi cia cdc dén bao xanh dé vang cita hai lan duing, Cu thé bang dia chi nhw sau va muc diéu khién céc Led 7 doqn nhw sau. a. Bia chi diéu khién céc chan K chung cia Led 7 dogn: -P2.0: Thanh A cita cdc led 7 doan. -P2.1; Thanh B ctia céc led 7 doan. -P2.2: Thanh C cita cdc led 7 doan. -P2.3: Thanh D ciia cde led 7 doan -P2.4: Thanh E cia cae led 7 doan -P2.5: Thanh F cia cde led 7 doan -P2.6: Thanh G cuia cdc led 7 doan 6. Mite didu khién : Céc thanh cia led 7 doan A ndt chung tong tmg tir A toi G sé sing khi cdc chan K tét mic thép va chan A nét chung & mite cao, Vi vay cdc led 7 thanh sé sang khi chan tuong img tir P2.0 dén P2.6 6 mite thdp, va cdc chan A nét chung 6 mite cao, hay cic chan digu khién cyte B céc Transistor NPN tuong img (QI dén Q4, loai NPN) phai 6 mite cao. Cac thanh led tuong img sé tit khi thiéu m6t trong hai diéu kién, hodc ca hai diéu kién trén, ©. Dja chi diéu khién céc chan A nét chung cita led 7 dog -P1.0: chan A nét chung (LED hang don vj) cia lan dudng 1 -P1.1: chin A nét chung (LED hang chyc) iia lin duémg 1 -P1,2: chin A nét chung (LED hang don vi) ciia lan duéng 2. -P1,3: chin A nét chung (LED hang chyc) cia lan dung 2. 1.3, Mach hién thj LED don uk a. Dia chi va mite * Dia chi: -P0.0: Néi véi dén do during 1. -PO.1: Néi v6i dén ving duémg 1. -PO.2: Noi véi dén xanh dudng 1. -PO.3: Néi vai dén dé duéng 2. -P0.4: Noi voi dén vang duong 2. 15 Nhém 1 Khoa Dign-Dién ti thong -PO.5: Néi voi dén xanh dung 2 Sir dung céc led don néi cathode chung. Con cée chin anode thi dirge néi vao dign tré R. Vané duge digu khién béi céc chan PO.0 dén PO.5. Vi LED don c6 dong hoat dng khoang 10mA tré Ién nén ta cé thé chon dign tre R sao cho phi hop. Nguén duge cp: Vee = +5V. Dign p phn eye thudn cia cée LED: -Led xanh 2 Vx =2V -2.8V. -Led vang Vy =2V-25V. -Led do Va = 14V - 1.8V. * Mite diéu khién cdc dén béo vang xanh dé. - Mite 1: Dén sang. ~ Mite 0: Dén tit. 1.4. So dd nguyén ly mach phan cig. 16 Nhém I Khoa Dién-Dién tie vién thong Chong II - XAY DUNG LUU DO THUAT TOAN. START LUU DO THUAT TOAN + CHUONG SoGiayLan1=25. SoGiayLan2=30, a at Dén :Xanh1, Do2 Chay chuong trinh quét led 7 doan Tré 1s SoGiayLan1 = SoGiayLanl — 1 SoGiayLan2 = SoGiayLan2 — 1. SoGiayLan! = 5 | | 17 Nhém I Khoa Dién-Dién tie vién thong ‘Tat Bén: Bat Dén:Vang] Chay chwong trinh quét led 7 doan oGiayLan SoGiayLan2 = SoGiayLan2 — 1 SoGiayLanl = 0 Ding 30, SoGiayLs Tt Den : Vang], Dé2 Bat Dén: Dol, Xanh2. 18 Nhém I Khoa Dién-Dién tie vién thong le + Chay chuong trinh quét led 7 doan. (en ’ SoGiayLan1 = SoGiayLan] — 1 SoGiayLan2 = SoGiayLan2~ 1 SoGiayLan2= 0 SoGiayLan2 = 5. ¥ ‘Tt Dén : Xanh2 B§t Dén : Vang? Chay chong trinh quét led 7 doan. Tré Is Nhém 1 Khoa Dién-Dién tie vién thong SoGiayLan1 = SoGiayLan] — 1. SoGiayLan2 = SoGiayLan2- 1 Tat Dén : Dol, Vang2 20 A Nhom | Khoa Dién-Dién tit vién thong LUU DO THUAT TOAN NGAT NGOAI 0 (CHE DO BANG TAY): START TAT LED 7 DOAN BAT XANH 1 DO 2 THOAT CHE DO TAY D ¥ TAT XANH 1 BAT VANG 1 EXIT THOAT CHE DO TAY ” D TAT VANG 1 BAT DO 1 Cex >) TAT DO 2 BAT XANH2 ! | #include #define bat 1 define tat 0 sbit. dl =PO*0; sbit. vl =PO*1; sbit, x1 = P02; sit d2 = POS; sbit. v2 = P04; sbit, x2 =PO*S; sbitdk_dvl = P10; 34, Nhém 1 Khoa Dién-Dién tie vién thong sbitdk_chl =PI*1; sbitdk_dv2 = P12; sbitdkch2 =PI3; sbit a =P290; sbit b =P21; sbit © =P242; sbit_ d = P23; sbit. e =P244; sbit f =P2S; sbit g = P26; sbit chinhledxanh = = sbit chinhledvang = P1*6; sbit chinhleddo = = PI*7; sbit ok = P345 ; sbit len = P36; sbit xuong = P37; sbit chinhtay = P34; unsigned char 1S 5 thoigian1 ,thoigian?,timerxanh=25,timerdo=30,timervang=5,solanquet=25; unsigned char maled7{] = {Oxc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; void delay(unsigned int ms); void hienthi(thoigian] ,thoigian2); void main() { EA=I; EX0=1; EXI=1; ITO=1; ITI=1; PO=0x00; while (1) 35 Nhom | Khoa Dién-Dién tit vién thong thoigian1=timerxanh; thoigian2=timerdo; xl=l; asl; do hienthi(thoigian| ,thoigian2); thoigianl—; thoigian2--; } while(thoigian1!=0); x1=0; thoigian1=timervang; thoigian2=timervang; vl=l; do hienthi(thoigian| ,thoigian2); thoigianl—-; thoigian2--; } while(thoigian1!=0); d2=0; v1=0; thoigian1=timerdo; thoigian2=timerxanh; di=1; x21; 36 Khoa Dién-Dién tie vién thong Nhom 1 do { hienthi(thoigianl ,thoigian2); thoigianl—-; thoigian2--; } while(thoigian2!=0); x2=0; thoigian1=timervang; thoigian2=timervang; v2=1; do hienthi(thoigianl ,thoigian2); thoigianl—; thoigian2--; } while(thoigian1 !=0); di=0; y2=0; void delay( unsigned int ms) { unsigned i,j; for(i=0;i

You might also like