Tài liệu Hướng dẫn lắp ráp các mạch vi xử lý

pdf 88 trang cucquyet12 3700
Bạn đang xem 20 trang mẫu của tài liệu "Tài liệu Hướng dẫn lắp ráp các mạch vi xử lý", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdftai_lieu_huong_dan_lap_rap_cac_mach_vi_xu_ly.pdf

Nội dung text: Tài liệu Hướng dẫn lắp ráp các mạch vi xử lý

  1. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 MUÏC LUÏC Lôøi Noùi Ñaàu Vaán ñeà 1: KHAÙI LÖÔÏC VEÀ HOÏ ATMEL AT80C51 PHAÀN 1: HÖÔÙNG DAÃN LAÉP RAÙP CAÙC LOAÏI MAÏCH NAÏP VI XÖÛ LYÙ Vaán ñeà 2: MAÏCH NAÏP : AT89C51 - QUA COÅNG COM Vaán ñeà 3: MAÏCH NAÏP : AT89C2051 - QUA COÅNG COM Vaán ñeà 4: MAÏCH NAÏP: AT89C2051 QUA COÅNG MAÙY IN PHAÀN 2: HÖÔÙNG DAÃN LAØM BO MAÏCH IN CHAÁT LÖÔÏNG CAO Vaán ñeà 6: HÖÔÙNG DAÃN THIEÁT KEÁ MAÏCH IN TREÂN MAÙY TÍNH BAÈNG PHAÀN MEÀM : Eagle 4.01 Vaán ñeà 7: PHÖÔNG PHAÙP IN BAÛN VEÕ LEÂN BO ÑOÀNG PHAÀN 3: HÖÔÙNG DAÃN SÖÛ DUÏNG CAÙC PHAÀN MEÀM VI XÖÛ LYÙ Vaán ñeà 8: MOÄT SOÁ PHAÀN MEÀM LAÄP TRÌNH / SOAÏN THAÛO ASSEMBLY Vaán ñeà 9: PHAÀN MEÀM BIEÂN DÒCH RA FILE HEX : ASM / TASM Vaán ñeà 10 : CAÙC PHAÀN MEÀM MOÂ PHOÛNG VI XÖÛ LYÙ Vaán ñeà 11 : HÖÔÙNG DAÃN SÖÛ DUÏNG Ezdl4.0 CHO CAÙC MAÏCH NAÏP PHAÀN 4: CAÙC MAÏCH ÑIEÄN VI XÖÛ LYÙ - LYÙ THUÙ- ÑÔN GIAÛN CHO NGÖÔØI MÔÙI BAÉT ÑAÀU HOÏC LAÄP TRÌNH CUØNG VI XÖÛ LYÙ Vaán ñeà 12: HAÕY LAØM MAÏCH ÑEØN CHÔÙP VÔÙI 89C51 Vaán ñeà 13: HAÕY LAØM BOÄ ÑIEÀU KHIEÅN NHUÙNG ÑÔN GIAÛN Vaán ñeà 14: LAØM COØI HUÏ VÔÙI HAI MÖÙC AÂM ÑIEÄU KHAÙC NHAU Vaán ñeà 15 : LAØM ÑOÀNG HOÀ BAÙO GIÔØI ÑIEÄN TÖ- Laäp trình C Vaán ñeà 16 : LAØM ÑOÀNG HOÀ BAÙO GIÔØI ÑIEÄN TÖÛ- Laäp trình baèng ASM - 1 -
  2. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Vaán ñeà 17 : GIAO TIEÁP 89C51 VÔÙI MA TRAÄN PHÍM 4X4 VAØ HIEÅN THÒ TREÂN LED 7 SEG VAÁN ÑEÀ 18: GIAO TIEÁP ADC0809 LAØM BOÄ ÑO ÑIEÄN AÙP: 0 à 5V LÔØI KEÁT. - 2 -
  3. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Lôøi noùi ñaàu cho laàn taùi baûn 2 Beân caïnh vieäc hoïc lyù thuyeát ôû tröôøng , ñeå caùc baïn coù theå hieåu saâu hôn nöõa veà vi xöû lyù vaø khaùm phaù caùc öùng duïng , caùc tính naêng cuûa noù baèng thöïc teá , toâi xin haân haïnh giôùi thieäu vôùi caùc baïn quyeån saùch naøy “Höôùng daãn laép raùp caùc maïch naïp Vi Xöû Lyù ” ngoõ haàu seõ giuùp caùc baïn töï laøm cho rieâng mình moät maïch naïp , ñeå naïp chöông trình maø baïn ñaõ vieát vaøo cho con vi xöû lyù ñeå baïn coù theå bieát ñöôïc chöông trình maø baïn ñaõ vieát aáy - thöïc teá noù seõ hoaït ñoäng nhö theá naøo- ñoù chính laø muïc ñích maø toâi ñaõ vieát quyeån saùch naøy cho caùc baïn. Ñaây laø laàn taùi baûn thöù 2 coù nhieàu söûa chöõa vaø boå sung theâm nhieàu öùng duïng 89c51 khaù lyù thuù vaø höõu ích cho anh em trong caùc kyø laøm ñoà aùn vaø Luaän vaên . Caùc baïn coù theå tìm thaáy ôû ñaây caùc loaïi maïch naïp cho vi xöû lyù ( ñuùng ra phaûi goïi laø vi ñieàu khieån ) raát ñôn giaûn , deã laùp raùp , linh kieän deã tìm kieám , cho neân xaùc suaát thaønh coâng raát cao neân ai ai cuõng coù theå töï laøm laáy cho rieâng mình moät maïch naïp ñeå phuïc vuï cho vieäc hoïc , nghieân cöùu vaø nhaát laø ñeå laøm caùc ñoà aùn , luaän vaên lieân quan ñeán vi xöû lyù ! Ngoaøi ra toâi coøn boå sung theâm phaàn höôùng daãn laøm bo maïch in chaát löôïng raát cao ñeå caùc baïn töï laøm ôû nhaø , tieát kieäm raát nhieàu chi phí raát thích hôïp cho sinh vieân nhöng chaát löôïng nhö ñaõ noùi laø raát cao . Ñoàng thôøi toâi cuõng coù höôùng daãn cho baïn caùh söû duïng caùc phaàn meàm veà vi xöû lyù phuïc vuï cho vieäc laäp trình ñeå baïn khoâng phaûi maát nhieàu thôøi gian tìm kieám-vaø söû duïng caùc phaàn meàm naøy ! Sau cuøng laø caùc ví duï cuï theå seõ giuùp baïn böôùc ñaàu laøm quen cuøng vi xöû lyù , caùc öùng duïng naøy daønh rieâng cho ngöôøi môùi baét ñaàu hoïc laäp trinh vi xöû lyù vaø caùc ví duï naâng cao ñöôïc boå sung cho caùc baïn ñaõ töøng laøm vieäc vôùi 8051 ! Neáu caùc baïn naøo ñaõ thaønh thaïo roài thì xin haõy ñoïc quyeån 2 “ Höôùng daãn giao tieáp vi xöû lyù vôùi maùy tính” ôû ñaáy baïn seõ bieát caùch giao tieáp qua laïi giöõa chuùng . ñoàng thôøi toâi cuõng coù nhieàu ví duï thieát thöïc nhö “ Maùy ño nhieät ñoä baèng Led , maùy ño nhieät ñoä giao tieáp maùy tính , baûng ñeøn chöõ chaïy ñôn giaûn , baûng ñeøn chöõ chaïy giao tieáp maùy tính , ño ñieän aùp qua maùy tính “ vaø moät soá maïch ñieän öùng duïng vi xöû lyù khaùc seõ laøm cho baïn caõm thaáy thích thuù hôn khi hoïc veà vi xöû lyù Cuoái cuøng toâi xin chaân thaønh caûm ôn caùc baïn ñang hoïc cuøng toâi ñaõ ñoäng vieân kích leä tinh thaàn , cuøng coù lôøi tri ôn saâu saéc ñeán caùc thaày trong tröôøng ñaõ giuùp ñôû cho toâi raát nhieàu ñeå quyeån saùch naøy hoaøn thaønh . Duø ñaõ coù nhieàu coá gaéng thöùc ñeâm, daäy sôùm song vieäc thieáu xoùt seõ laø ñieàu khoâng theå traùnh khoûi , cho neân söï goùp yù töø phía caùc baïn ñoäc giaû cuõng nhö nhöõng lôøi goùp yù cuûa quyù thaày coâ seõ laø nieàm vinh haïnh cho toâi , toâi xin laéng nghe , söûa chöõa ñeå laàn sau coù dòp thì quyeån saùch naøy seõ hoaûn thieän hôn , ngoõ haàu seõ giuùp ích cho caùc baïn trong vieäc hoïc taäp cuøng vieäc nghieân cöùu ñaït ñöôïc nhieàu lôïi laïc ! Nhaân ñaây toâi xin haân haïnh môøi baïn ñoùn ñoïc taäp 2:” Höôùng daãn giao tieáp vi xöû lyù vôùi maùy tính ” baèng Visual Basic maø toâi saép vieát xong ! Moät laàn nöõa toâi xin caûm ôn caùc baïn ñaõ ñoïc quyeån saùch naøy ! Leâ Duy Phi - 3 -
  4. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Vaán ñeà 1: KHAÙI LÖÔÏC VEÀ AT89C51 & AT89C2051 Töôùc khi ñi vaøo laép raùp bo maïch , toâi xin caùc baïn daønh ít thôøi gian xem qua sô ñoà chaân vaø moät soá caùc ñaëc ñieåm cuõng nhö moät soá c aùc ñaët tính cuûa ñoái töôïng maø ta seõ laøm vieäc raát nhieàu vôùi noù ñoù laø con vi ñieàu khieån AT89C51 vaø AT89C2051. I . MOÂ TAÛ CAÁU TRUÙC PHAÀN CÖÙNG CUÛA VI ÑIEÀU KHIEÅN 8951. 1/ Giôùi thieäu hoï MCS51: MCS51 laø moät hoï IC vi ñieàu khieån (Microcontroller ) do haõng Intel saûn xuaát. Caùc IC tieâu bieåu cho hoï MCS51 laø 8051 vaø 8031. Ñaëc bieät, vi ñieàu khieån 8951 ñöôïc saûn xuaát gaàn ñaây mang caùc ñaëc ñieåm sau: § 4 Kbytes EEPROM. § 128 bytes RAM. § 4 ports I/O (Input/Output). § 2 boä ñònh thôøi (timer) 16 bits. § Giao tieáp noái tieáp. § 64 Kbytes khoâng gian boä nhôù chöông trình môû roäng. § 64 Kbytes khoâng gian boä nhôù döõ lieäu môû roäng. § Moät boä xöû lí luaän lí (thao taùc treân caùc bit ñôn). § 210 bits ñöôïc ñòa chæ hoùa. § Boä nhaân chia 4 ms. - 4 -
  5. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 2. HEÄ THOÁNG GIAO TIEÁP PORT: a/ Port 0:Port 0 laø moät port hai chöùc naêng treân caùc chaân 32 – 39. Haõy nhôù raèng : Treân caùc chaân naøy chöa coù ñieän trôû keùo döông , do ñoù khi caàn chuùng ta phaûi nhôù ñeán ñaëc ñieåm naøy. b/ Port 1: Port 1 laø moät port I/O treân caùc chaân 1 – 8. c/ Port 2: Port 2 laø moät port coâng duïng keùp treân caùc chaân 21 – 28 . d/ Port 3: Port 3 laø moät port coâng duïng keùp treân caùc chaân 10 – 17. Caùc chaân cuûa port naøy coù nhieàu chöùc naêng, caùc coâng duïng chuyeån ñoåi coù lieân heä vôùi caùc ñaëc tính ñaëc bieät cuûa 8951 nhö ôû baûng sau: Bit Teân Chöùc naêng chuyeån ñoåi P3.0 RXD Döõ lieäu nhaän cho port noái tieáp P3.1 TXD Döõ lieäu phaùt cho port noái tieáp P3.2 INT0\ Ngaét 0 beân ngoaøi P3.3 INT1\ Ngaét 1 beân ngoaøi P3.4 T0 Ngoõ vaøo cuûa Timer/counter 0 P3.5 T1 Ngoõ vaøo cuûa Timer/counter 1 P3.6 WR\ Xung ghi boä nhôù döõ lieäu ngoaøi P3.7 RD\ Xung ñoïc boä nhôù döõ lieäu ngoaøi 3 - CAÙC TÍN HIEÄU ÑIEÀU KHIEÅN: Chip AT8951 coù caùc tín hieäu ñieàu khieån caàn phaûi löu yù sau: A- Chaân EA\ (External Access): Tín hieäu vaøo EA\ treân chaân 31 thöôøng ñöôïc maéc leân möùc cao (+5v) hoaëc möùc thaáp (GND). Neáu ôû möùc cao, 8951 thi haønh chöông trình töø ROM noäi trong khoaûng ñòa chæ thaáp (4K hoaëc toái ña 8k ñoái vôùi AT89C52). Neáu ôû möùc thaáp, chöông trình ñöôïc thi haønh töø boä nhôù ngoaøi môû roäng (Toái ña ñeán 64K ). Ngoaøi ra Ngöôøi ta coøn duøng EA\ laøm chaân caáp ñieän aùp 12V khi laäp trình cho EEPROM trong 8051. B- CHAÂN PSEN\ (PROGRAM STORE ENABLE): PSEN\ laø tín hieäu ra treân chaân 29. Noù laø tín hieäu ñieàu khieån cho pheùp boä nhôù chöông trình môû roäng, PSEN\ thöôøng ñöôïc noái ñeán chaân OE (Output Enable) cuûa moät EPROM hoaëc ROM ñeå cho pheùp ñoïc caùc byte maõ leänh. Haõy nhôù raèng :Bình thöôøng chaân PSEN\ seõ ñöôïc thaõ troáng (No Connect). Chæ khi naøo chaân EA\ ôû möùc thaáp thì luùc ñoù: PSEN\ seõ ôû möùc thaáp trong thôøi gian laáy leänh. Caùc maõ nhò phaân cuûa chöông trình ñöôïc ñoïc töø EPROM qua bus döõ lieäu vaø ñöôïc choát vaøo thanh ghi leänh cuûa 8951 ñeå giaûi maõ leänh. PSEN\ seõ ôû möùc thuï ñoäng (möùc cao) neáu thi haønh chöông trình trong ROM noäi (8951) C- CAÙC CHAÂN NGUOÀN: AT8951 hoaït ñoäng vôùi nguoàn ñôn +5V. Vcc ñöôïc noái vaøo chaân 40 vaø Vss (GND) ñöôïc noái vaøo chaân 20. - 5 -
  6. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 II. MOÂ TAÛ CAÁU TRUÙC PHAÀN CÖÙNG CUÛA VI ÑIEÀU KHIEÅN AT89C2051. AT89C2051 laø moät vi ñieàu khieån thu goïn chæ coù 20 chaân , vôùi ñaày ñuû caùc tính naêng cnhö AT89C51 .Duy chæ khaùc moät ñieåm caàn löu yù ñoù laø Flash ROM cuûa noù chæ coù 2K maø thoâi vaø moät vaøi Port khoâng ñöôïc hoã trôï ñuû , do ñoù tuyø theo muïc ñích maøta seõ caàn ñeán noù. Hình : Sô ñoà chaân AT89C2051 MOÄT SOÁ CAÙC ÑAËC TÍNH CUÛA AT89C2051 LAØ: ~ 2 Kbytes of Flash ( Coù naïp vaøo hoaêc xoaù ñi 1000 laàn) ~ 128 bytes of RAM ~ 15 I/O lines ( 15 ñöôøng xuaát/ nhaäp) ~ two16-bit timer/counters ( hai boä ñònh thì/ ñeám 16 bít) ~ five vector, two-level interrupt architecture (coù 5 vectô ngaét-2 möùc ) ~ full duplex serial port ( coù coång noái tieáp) ~ precision analog comparator ~ on chip oscillator and clock circuitry ( coù maïch dao ñoäng vaø taïo xung beân trong chip) Haõy nhôù raèng: Möùc ñieän aùp hoaït ñoäng thaáp (2,7Và 6V , chuùng ta thöôøng duøng noù ôû 5V) Taàn soá dao ñoâng thaïch anh toái ña 24Mhz ( thöôøng ta duøng 11.0592Mhz ñeå haïn cheá loãi ñeán möùc nhoû nhaát trong quaù trình noù laøm vieäc) - 6 -
  7. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Vaán ñeà 2: MAÏCH NAÏP : AT89C51 - QUA COÅNG COM Haõy laøm rieâng cho baïn moät naïp chöông trình- ñeå naïp file HEX cho caùc vi ñieàu khieån 89C51 , 89C52 , 89C53 vaø 89C55 .ÔÛ ñaây coù saün bo maïch in , sô ñoà vaø caû phaàn meàm cuøng höôùng daãn heát söùc deã daøng ñeå laøm vaø söû duïng noù. I- ÑOÂI LÔØI GIÔÙI THIEÄU : Neáu baïn muoán vöøa hoïc Vi Xöû Lyù ñoàng thôøi cuõng muoán khaùm phaù noù qua caùc öùng duïng cuï theå, qua caùc döï aùn thöc teá ñeå phaùt trieån 89C51, 89c52 vôùi ngoân ngöõ laäp trình Asemmbly thì “ Maïch Naïp AT89C51 ‘ chính laø caâu traû lôøi . Noù raát reû vaø moïi ngöôøi ñeàu coù theå töï laøm ñöôïc cho rieâng mình moät naïp . Maïch naïp naøy khoâng nhöõng chæ naïp ñöôïc cho AT89c51(4k) maø coøn naïp ñöôïc cho caû 89c52(8k) vaø 89c55( 20k )ø . Sau khi baïn laäp trình vôùi Asemmbly hoaëc C xong ,roài baïn haõy dòch noù ra file HEX ( neáu baïn chöa bieát caùch dòch thì baïn haõy xem muïc höôùng daãn caùc phaàn meàm Vi Xöû Lyù ôû ñaèng sau) sau ñoù baïn haõy naïp noù vaøo cho con Chip baèng caùch duøng “Maïch Naïp AT89C51”. II- PHAÀN CÖÙNG : SÔ ÑOÀ VAØ BO MAÏCH IN 1 ). HÌNH AÛNH MAÏCH NAÏP HOAØN CHÆNH : Hình 1 - 7 -
  8. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 2) SÔ ÑOÀ MAÏCH NAÏP AT89C51 : Hình 2: Ñaây chính laø sô ñoà cuûa Maïch Naïp AT89C51 . TREÂN SÔ ÑOÀ BAÏN HAÕY LÖU YÙ HAI ÑIEÅM SAU : · Kí hieäu IC ghi 89C51 EZ52.HEX goïi laø con Chip chính ( ChipMaster) · Kí hieäu IC ghi 40 -PIN ZIF 89c51/ 89c52/ 89c55 ñaây laø Socket hay laø chaân ñeå caém IC ( coøn goïi laø ñeá caém IC 40 Chaân) , hay goïi laø con chip phuï ( Chip Slave) Ñaây laø hình daùng thaät cuûa Socket ( ñeá ñeå gaén IC vaøo) tuy nhieân ñaây laø caùi Soket 20 chaân thoâi ,coøn loaïi 40 cuõng gioáng y heät nhö vaäy nhöng noù daøi vaø to hôn thoâi. Haõy nhôù raèng : Ñaàu tieân baïn caàn phaûi naïp file EZ52.HEX vaøo cho con ChipMaster . Nhöng khoå noåi laø laáy ñaâu ra maïch naïp ñeå naïp file EZ52.Hex naøy cho con Chip Master ?? Baïn ñöøng lo , baïn coù theå mua con Chip Master –ñaõ naïp saün naøy taïi quaøy photo B1 taïi tröôøng ñaïi hoïc Baùch Khoa , hoaëc baïn cuõng coù theå mua ñæa meàm 1,4Mb toâi coù cheùp saün file EZ52.HEX - 8 -
  9. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 trong ñoù luoân roài , baïn coù theå ñem ra caùc tieäm ñieän ôû chôï Ñieän Töû Nhaät Taûo , ôû ñoù hoï coù saün maùy naïp hoï seõ naïp cho baïn .vôùi giaù cho moãi laàn naïp laø 2.000ñ Vaø toâi cuõng xin noùi theâm laø con Chip Master cuõng laø moät con AT89C51. Coøn caùi Socket laø nôi ñeå baïn ñaët con Chip 89C51 Slave - maø baïn caàn naïp baát kyø file .HEX naøo ñoù vaøo cho no .ù 3) NGUOÀN ÑIEÄN CAÁP CHO MAÏCH NAÏP: Haõy löu yù :Taïi chaân Vpp cuûa Maïch naïp coù hai möùc ñieän aùp khaùc nhau laø 5V vaø 12V ñöôïc ñieàu khieån bôûi chaân P3.3 (chính laø ñaàu ra cuûa LM317).Bình thöôøng thì ñaàu ra cuûa LM317 chæ coù 5V thoâi, nhöng khi baét ñaàu naïp chöông trình thì ñaàu ra cuûa noù leân tôùi 12V. Toâi ñaõ laép raùp , kieåm tra vaø söû duïng –maïch naøy raát nhieàu nhöng chöa heà thaáy söï coá naøo quaù nghieâmtroïng caû. 4) BO MAÏCH IN Hieän nay treân chôï Ñieän Töû Nhaät Taïo baùn raát nhieàu loaïi Bo maïch naïp naøy , vaø hieän ñaõ trôû neân quaù quen thuoäc , quen thuoäc ñeán noãi baïn chæ caàn noùi baùn cho baïn “Maïch in –cuûa maïch naïp Vi Xöû Lyù” thì ngöôøi seõ ñöa cho baïn ngay moät baûn maïch nhö sau vôùi giaù chæ coù 10.000 ñ maø thoâi : Hình 3 Ñaây laø moät loaïi maïch naïp ñang phoå bieán , raát ñöôïc nhieàu ngöôøi söû duïng vaø ñang thònh haønh treân Chôï Nhaät Taûo . Hình naøy laø “Maïch In Höôùng Daãn Laép Raùp Linh Kieän “ leân baûn maïch ñoàng. Vaø toâi cuõng ñaõ cheùp luoân file chöùa caùc maïch in ôû hình2 trong ñæa meàm vôùi dung löôïng 36,4kb ñeå baïn coù theå xem qua ñeå coù theå töï laøm laáy bo maïch cho mình. - 9 -
  10. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Vaø sau ñaây laø bo maïch ñoàng cuûa noù , baïn coù theå caét hình sau ñeå töï laøm cho mình moät maïch ñoàng raát ñeïp , gioáng y nhö theá theo söï höôùng daãn ôû phaàn 2 cuûa quyeån saùch naøy. Ñaây laø Maïch ñoàng cuûa maïch naïp vi xöû lyù ñang thònh haønh treân chôï Nhaät Taûo hieän nay .Giaù moät maïch chæ coù 10.000 ñ (Baïn coù theå caét hình naøy ra ñeå laøm maïch ñoàng hoaëc mua rieâng ôû quaøy Photo B1 / dh.BK) Vaø ñaây laø nhöõng gì maø baïn coù theå thaáy sau khi baïn ñaõ laép raùp hoaøn chænh - 10 -
  11. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Haõy nhôù raèng : MAX 232 coù theå ñöôïc thay theá baèng 2 con transistor heát söùc ñôn giiaûn . Khi ñoù bo maïch cuûa baïn seõ nhoû goïn hôn, ñoàng thôøi baïn cuõng coù theå tieát kieäm moät khoaûng tieàn raát ñaùng keå . Sô ñoà thay theá nhö sau: Moät kieåu khaùc: Asghar Charmin ôû Aán Ñoä ñaû caûi tieán laïi chæ duøng moät Transistor –nhöng toâi chöa thöû , neáu ñöôïc caùc baïn haõy raùp thöû roài cho toâi xin lôøi ñaùp nheù! - 11 -
  12. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Haõy nhôù raèng : MAX 232 –16 chaân coøn coù theå ñöôïc thay theá baèng con chip DS257 heát söùc ñôn giiaûn chæ coù 8 chaân thoâi . Khi ñoù bo maïch in cuûa baïn seõ nhoû goïn hôn . Sô ñoà thay theá nhö sau: IV- PHAÀN MEÀM –CHO MAÏCH NAÏP AT89C51 Maïch naïp AT89C51 naøy giao tieáp vôùi maùy tính thoâng qua phaàn meàm EZ4.0. Hieän thôøi ñaây laø phaàn meàm môùi nhaát vaø hoaøn toaøn mieãn phí chaïy treân neàn Windows raát ñeïp vaø raát deã daøng söû duïng . Giao dieän cuûanoù nhö sau: Neáu baïn chöa roõ caùch duøng noù thì xin baïn haõy xem phaàn 3 “ Höôùng daãn söû duïng moät soá phaàn meàm Vi Xöû Lyù thì seõ roõ . - 12 -
  13. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 V- MOÄT SOÁ LÖU YÙ VEÀ CAÙC LINH KIEÄN CAÀN DUØNG: 1- CAÙCH XAÙC ÑÒNH CAÙC CHAÂN ÑIEÄN AÙP VAØO RA CUÛA 7805 Output (O):= Chaân ñieän aùp ra 5V Command(C):= Chaân naøy haøn xuoáng Mass ( GND) Input (I):= Ñieän aùp vaøo 9Và12V Haõy nhôù raèng: Chaân Command raát quan troïng , chuùng ta caàn haøn noù xuoáng mass(GND) moät caùch heát söùc chaéc chaén neáu nhö chaân naøy haøn khoâng kheùo coù laøm cho ñieän aùp ôû ngoõ ra taêng voït leân raát cao gaàn baèng ñieän aùp ngoõ vaøo (9-12V) seõ laøm hoûng caùc chip . 2- CAÙCH XAÙC ÑÒNH CHAÂN B-C-E CUÛA TRANSISTOR Löu yù : Caùc Transistor BC239-ñöôïc thay baêng C1815 Vaø Transistor BC328 ñöôïc thay baèng A1015 Sau ñaây laø caùh xaùc ñònh chaân B_C_E cho transistor A1015 vaø C1815 Hình daùng thöïc teá Kí hieäu cuûa C 1815/ A 1015 3- CAÙH XAÙC ÑÒNH CHAÂN CUÛA IC Haõy nhôù raèng : Haàu heát treân caùc IC ñeàu coù moät daáu chaám ôû moät goùc IC hay moät vaït baùn nguyeät ô treân moät caïnh cuûa ICû , vaø quy taéc ñeám soá thöù töï chaân cuûa IC luoân theo chieàu ngöôïc vôùi kim ñoàng hoà . Chaân soá 1 cuûa IC chính laø chaân ñaàu tieân naèm treân caïnh beân traùi cuûa daáu Chaám hay Vaït baùn nguyeät.Vôùi quy öôùc laø vaït baùn nguyeät hay daáu chaám phaûi ñöôïc ñaët beân tay traùi!. SÔ ÑOÀ CHAÂN CUÛA MAX232 - 13 -
  14. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 4- CAÙCH ÑOÏC GIAÙ TRÒ ÑIEÄN TRÔÛ CAÙCH TÌM GIAÙ TRÒ ÑIEÄN TRÔÛ THOÂNG QUA CAÙC VAÏCH MAØU Ñeå tính toaùn giaù trò cuûa ñieän trôû thoâng qua caùc maõ vaïch maøu (color coded stripes) treân ñieän trôû , thöôøng theo caùc böôùc sau: Böôùc 1 : Ñaët con ñieän trôû sao cho Vaïch maøu Vaøng kim hay nhuõ baïc cuûa ñieän trôû -phaûi ôû goùc beân phía tay phaûi cuûa baïn. Böôùc 2 : Baïn haõy nhìn kyõ 2 vaïch maøu ñaàu tieân ôû phía beân traùi (the first two stripes on the left end). Tieáp theo baïn haõy chuyeån ñoåi caùc maøu maø baïn ñoïc ñöôïc ra thaønh soá theo baûng chuyeån ñoåi cho saün ôû döôùi ñaây. Böôùc 3 : Xong , baïn haõy nhìn tieáp vaïch thöù 3 . Vaïch naøy chính laø heä soá nhaân . Baïn haõy chuyeãn ñoåi vaïch maøu thöù 3 naøy ra gia trò theo baûng cho saün phía sau. Böôùc 4 : Ñeán ñaây baïn chæ vieäc laáy 2 con soá ôû böôùc 2 nhaân vôùi con soá ôû böôùc 3 laø baïn ñaõ tìm ñöôïc giaù trò cuûa ñieän trôû . Giaù trò cuûa ñieän trôû maø baïn vöøa tìm seõ mang ñôn vò laø ohms Vaïch maøu nhuõ kim hay nhuõ baïc ( töùc laø vaïch thöù 4 tính töø traùi sang ) seõ cho chuùng ta bieát sai soá cuûa noùso vôùi gia trò ghi treân ñieän trôû ñoù.Theo toâi thì chuùng ta khoâng neân phaûi baïn taâm ñoái vôùi ñeàu naøy, coù nghóa laø chuùng ta khoâng caàn bieát noù trong khi thöïc haønh. Haõy nhôù raèng: Ñoái vôùi ñieän trôûø chuùng ta caàn heát söùc löu yù ñeán moät thoâng soá voâ cuøng quan troïng ñoù laø coâng suaát chòu ñöïng cuûa noù. Thoâng thöôøng coâng suaát ñieän trôû baùn ôû thò tröôøng seõ coù caùc möùc sau :1/4 Watt , 0.5 Watt , 1W , 5W , 10W Nhöng thoâng duïng nhaátvaãn laø ñieän trôû 1/4 Watt- cho neân khi baïn ra tieäm mua phaûi noùi roõ ñieän trôõ caàn mua laø bao nhieâu Watt- theá môùi laø daân ñieän chuyeân nghieäp !.Giaù hieän thôøi 100 con khoaûng 2.500 ÑVN BAÛNG MAÕ MAØU ÑIEÄN TRÔû . (Vôùi vaïch nhuõ kim hay baïc naèm beân phaûi) Maøu Vaïch 1 Vaïch 2 Vaïch 3 Vaïch 4 Ñen 0 0 x1 Naâu 1 1 x10 Ñoû 2 2 x100 Cam 3 3 x1,000 Vaøng 4 4 x10,000 Luïc (Green) 5 5 x100,000 Lam (Blue) 6 6 x1,000,000 Tím 7 7 Xaùm 8 8 Traéng 9 9 Nhuõ Kim 5% Baïc 10% - 14 -
  15. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Ví duï: Cho moät ñieän trôû coù caùc vaïch maøu tính töø traùi qua nhö sau : Xanh da trôøi( lam-blue) ,Xaùm , Ñoû, Nhuõ vaøng .Haõy tìmgiaù trò ñieän trôû cuûa noù. Böôùc 1.: Vaïch maøu nhuõ vaøng –phaûi ñöôïc ñaët beân phaûi , roài ñeán Böôùc2 Böôùc 2: Vaïch ñaàu tieân laø maøu xanh da trôøi( blue) –tra baûng thì thaáy noù töông öùng vôùi soá 6. Vaïch thöù 2 laø maøu xaùm vaø cuõng laøm töôïng töï ta coù ñöôïc soá 8. Nhö vaäy 2 con soá ñaàu tieân cuûa ñieän trôû coù giaù trò laø 68. Böôùc3: Vaïch thöù 3 laø maøu ñoû -coù nghóa laø x 100. Böôùc4: Giaù trò cuûa ñieän trôû tìm ñöôïc seõ laø : 68 x 100 = 6800 ohms (6800 ohms = 6.8 kohms). Vaïch maøu nhuõ ñoàng coù nghóa laø giaù trò chính xaùc cuûa ñieän trôû seõ sai khaùc 5% so vôùi thöïc teá . Giaù trò cuûa noù coù theå seõ seõ naèm giöõa 6,460 Kohms and 7,140 Kohms. (Do sai soá 5% cuûa 6,800 = 0.05 x 6,800 = 340) 5) SÔ ÑOÀ CHAÂN CUÛA COÅNG COM DB9: (9p D-SUB male at PC (DTE)) Haõy nhôù raèng : Coång com gaén treân maùy tính laø coång “Ñöïc”( male ) Ñeå nhaän daïng coång COM ñöïc , baïn chæ caàn nhìn vaøo thì baïn seõ thaáy coù caùc “ chaáu “ôû beân trong (9p D-SUB female at cable / mouse (DCE)) Haõy nhôù raèng : Coång maø ta caàn duøng ñeå laép raùp maïch naïp laø coång COM naøy , noù laø coång “caùi “. Ñeå nhaän ra coång COM caùi , baïn chæ caàn nhìn vaøo thì seõ thaáy chæ toaøn laø” caùc “ loã”. Caàn löu yù : Raát nhieàu baïn mua loän giöõa Coång ñöïc vaø coång Caùi , cho neân khi ñi mua baïn caàn noùi roõ laø mua coång naøo , vaø cuõng nhôù laø ôû trong maùy tính cuûa chuùng ta ñaõ saün coù coång ñöïc roài . Giaù moãi coång COM -DB9 khoaûng 5.000ñ maø thoâi .Nhaéc laïi laø phaûi heát söùc löu yù kieåm tra cho kyõ tröôùc khi haøn coång COM leân maïch naïp , vaø treân maïch naïp luoân laø coång Caùi VI- MOÄT SOÁ CAÙC LÖU YÙ : · Bieán theá ñieän coù theå duøng loaïi 450mA cho ñeán 1Ampe . Vôùi ngoõ ra AC ( xoay chieàu) toái thieåu laø 12V –AC . Toát nhaát laø neân mua bieán theá 1 Ampe coù ngoõ ra 15 V giaù khoaûng 13.000ñ . · IC oån aùp 7805 baïn khoângneân mua loaïi coù chöõ maøu traéng –loaïi naøy ña soá laø cuøa Trung Hoa saûn xuaát neân khoâng khi naøo ñaït ñuùng 5V nhö con soá ñaõ ghi caû, baïn neân mua loaïi chöõ 7805 chìm , loaïi naøy chòu nhieät cao vaø raát chuaån volt . Giaù cuûa noù khoaûng 3000ñ , neáu mua haøng cuõthì moãi con chæ heát 500 ñ raát reõ(baùn raát nhieàu ôû chôï Nhaät Taûo) .! · Töông töï cho LM317 cuõng neân mua loaïi chöõ chìm vaø giaù caû cuõng nhö 7805 . · Transistor 2N2222 baïn coù theå thay baèng C1815 giaù 300ñ/c · Coøn caùc linh kieän ñeàu coù baùn ôû chôï Nhaät Taûo - 15 -
  16. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Trong quaù trình laép raùp neáu baïn coù gaëp truïc traëc hay baát kyø moät söï coá naøo sau khi chính baûn thaân baïn ñaõ coá söûa nhöng vaãn khoâng ñöôïc thì xin haõy email cho chuùng toâi qua ñòa chæ sau : duyphi@yahoo.com / duyphi@yahoo.com ,Neáu caùc baïn ôû xa thì vieát thö cho toâi qua ñòa chæ : 0909.371.471- gaëp Phi, baèng kinh nghieäm ñaõ töøng laép raùp loaïi naøy , chuùng toâi hy voïng seõ ñem ñeán cho baïn nhöõng nieàm vui baèng moät taám loøng ñaày nhieät huyeát maø baïn khoâng phaûi toán moät khoaûng chi phí naøo ! Nhaân ñaây chuùng toâi cuõng xin noùi luoân laø cuùng toâi laøm vieäc naøy treân cô sôû hoaøn toaøn töï nguyeän vì söï phaùt trieån neàn kyõ thuaät cuûa nöôùc nhaø ngaøy moãi moät hôn maø thoâi!. ___ ___ Môøi caùc baïn tieáp tuïc xem-vaø haõy töï laép raùp cho mình moät maïch naïp cho chip AT89c2051 - 20 chaân- nhoû goïn- deã laép –chaïy ngay sau khi laép: - 16 -
  17. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Vaán ñeà 3: MAÏCH NAÏP : AT89C2051 - QUA COÅNG COM Neáu baïn khoâng muoán duøng con Chip 89c51- 40 chaân vöøa to , laïi ñaét tieàn thì baïn coù theå duøng con chip 89c2051 –20 chaân vöøa nhoû goïn , vöøa tieát kieäm tieàn baïc nhöng vaãn ñaày ñuû caùc tính naêng nhö con chip 89c51.Vaø sau ñaây laø maïch naïp chöông trình con chip 89c2051 naøy ,ngoaøi ra maïch naïp AT89C2051 coøn naïp ñöôïc cho con chip 89c4051 luoân.! Raát deã laép raùp . I- ÑOÂI LÔØI GIÔÙI THIEÄU : Con chip 89c2051 raát nhoû goïn neân noù ñöôïc söû duïng raát nhieàu trong caùc öùng duïng nhoû. Neáu baïn muoán vöøa hoïc Vi Xöû Lyù ñoàng thôøi cuõng muoán khaùm phaù noù qua caùc öùng duïng cuï theå, qua caùc döï aùn thöc teá ñeå phaùt trieån 89C2051 , 89c4051 vôùi ngoân ngöõ laäp trình Asemmbly thì “ Maïch Naïp AT89C2051 ‘ chính laø caâu traû lôøi . Noù raát reû vaø moïi ngöôøi ñeàu coù theå töï laøm ñöôïc . II- PHAÀN CÖÙNG : SÔ ÑOÀ VAØ BO MAÏCH IN 1 ). SÔ ÑOÀ CUÛA MAÏCH NAÏP AT89C2051 : Hình 4 - 17 -
  18. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 TREÂN SÔ ÑOÀ BAÏN HAÕY LÖU YÙ HAI ÑIEÅM SAU : · Kí hieäu IC ghi 89C2051 Writer.hex 2021 bytes goïi laø con Chip chính ( Chip Master) · Kí hieäu IC ghi 20 -PIN ZIF Socket 89c2051/ 89c4051 ñaây laø caùi Socket hay laø chaân ñeá ñeå caém IC ( coøn goïi laø ñeá caém IC 20 Chaân) , hay goïi laø con chip phuï ( Chip Slave) Ñaây laø hình daùng thaät cuûa Socket ( ñeá ñeå gaén IC vaøo) 20 chaân . Haõy nhôù raèng : Ñaàu tieân baïn caàn phaûi naïp file Writer.HEX vaøo cho con ChipMaster . Nhöng khoå noåi laø laáy ñaâu ra maïch naïp ñeå naïp file Writer.Hex naøy cho con Chip Master ?? Baïn ñöøng lo , baïn coù theå mua con Chip Master –ñaõ naïp saün naøy taïi quaày photo B1 taïi tröôøng ñaïi hoïc Baùch Khoa hoaëc baïn cuõng coù theå mua ñæa meàm 1,4Mb toâi coù cheùp saün file Writer.hex trong ñoù luoân roài , baïn coù theå ñem ra caùc tieäm ñieän ôû chôï Ñieän Töû Nhaät Taûo , ôû ñoù hoï coù saüên maùy naïp- hoï seõ naïp cho baïn vôùiù giaù moãi laàn naïp laø 2.000ñ. 2) BO MAÏCH IN- CUÛA MAÏCH NAÏP AT89C2051 : A) Hình aûnh höôùng daãn laép raùp linh keän leânbo maïch in: - 18 -
  19. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 B) Board maïch in- cuûa maïch naïp: C) Hình aûnh cuûa maïch naïp hoaøn chænh : III- PHAÀN MEÀM –CHO MAÏCH NAÏP AT89C2051 Maïch naïp AT89C2051 naøy giao tieáp vôùi maùy tính thoâng qua phaàn meàm EZ4.0. Hieän thôøi ñaây laø phaàn meàm môùi nhaát vaø hoaøn toaøn mieãn phí chaïy treân neàn Windows raát ñeïp vaø raát deã daøng söû duïng . Giao dieän cuûanoù nhö sau: - 19 -
  20. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Haõy nhôù raèng : MAX 232 coù theå ñöôïc thay theá baèng 2 con transistor heát söùc ñôn giiaûn . Khi ñoù bo maïch cuûa baïn seõ nhoû goïn hôn, ñoàng thôøi baïn cuõng coù theå tieát kieäm moät khoaûng tieàn raát ñaùng keå . Sô ñoà thay theá nhö sau: Moät kieåu khaùc: - 20 -
  21. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Haõy nhôù raèng : MAX 232 –16 chaân coøn coù theå ñöôïc thay theá baèng con chip DS257 heát söùc ñôn giiaûn chæ coù 8 chaân thoâi . Khi ñoù bo maïch in cuûa baïn seõ nhoû goïn hôn . Sô ñoà thay theá nhö sau: VAØ SAU ÑAÂY XIN MÔØI BAÏN XEM MOÄT LOAÏI BO MAÏCH IN KHAÙC CUÕNG LAÉP RAÙP THEO Y NHÖ SÔ ÑOÀ MAÏCH NAÏP AT89C2051 ÔÛ TREÂN: A) Hình aûnh cuûa maïch naïp AT89C2051 hoaøn chænh: - 21 -
  22. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 b) Bo maïch ñoàng : c) hình höôùng daãn laép raùp linh kieân leân bo ñoàng: d) Bo maïch ñöôïc laøm baèng thuû coâng raát ñôn giaûn : Baûng maïch naøy ñöôïclaømbaèng tay heát söùc giaûn ñôn , nhöng baïn phaûi heát söùc löu yù neáu baïn muoán laøm theo maïch naøy laø: Baïn phaûi haøn caùc daây töø chaân 12à19 cuûa con chip 89c2051 Master ñeán caùc chaân 12à19 cuûa ZIF Socket nhö trong hình döôùi naøy: - 22 -
  23. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 IV- MOÄT SOÁ LÖU YÙ VEÀ CAÙC LINH KIEÄN CAÀN DUØNG: 1- CAÙCH XAÙC ÑÒNH CAÙC CHAÂN ÑIEÄN AÙP VAØO RA CUÛA 7805 Output (O):= Chaân ñieän aùp ra 5V Command(C):= Chaân naøy haøn xuoáng Mass ( GND) Input (I):= Ñieän aùp vaøo 9Và12V Haõy nhôù raèng: Chaân Command raát quan troïng , chuùng ta caàn haøn noù xuoáng mass(GND) moät caùch heát söùc chaéc chaén neáu nhö chaân naøy haøn khoâng kheùo coù laøm cho ñieän aùp ôû ngoõ ra taêng voït leân raát cao gaàn baèng ñieän aùp ngoõ vaøo (9-12V) seõ laøm hoûng caùc chip . Haõy nhôù raèng : MAX 232 coù theå ñöôïc thay theá baèng 2 con transistor heát söùc ñôn giiaûn . Khi ñoù bo maïch cuûa baïn seõ nhoû goïn hôn, ñoàng thôøi baïn cuõng coù theå tieát kieäm moät khoaûng tieàn raát ñaùng keå . Sô ñoà thay theá nhö sau: 2- CAÙCH XAÙC ÑÒNH CHAÂN B-C-E CUÛA TRANSISTOR Löu yù : Caùc Transistor 2N222- ñöôïc thay baèng C1815 Vaø Transistor 2N2907 ñöôïc thay baèng A1015 Sau ñaây laø caùh xaùc ñònh chaân B_C_E cho transistor A1015 vaø C1815 Hình daùng thöïc teá C1815 Kí hieäu cuûa C 1815/ A 1015 / A1015 3- CAÙH XAÙC ÑÒNH CHAÂN CUÛA IC Haõy nhôù raèng : Haàu heát treân caùc IC ñeàu coù moät daáu chaám ôû moät goùc IC hay moät vaït baùn nguyeät ô treân moät caïnh cuûa ICû , vaø quy taéc ñeám soá thöù töï chaân cuûa IC luoân theo chieàu ngöôïc vôùi kim ñoàng hoà . Chaân soá 1 cuûa IC chính laø chaân ñaàu tieân naèm treân caïnh beân traùi cuûa daáu Chaám hay Vaït baùn nguyeät.Vôùi quy öôùc laø vaït baùn nguyeät hay daáu chaám phaûi ñöôïc ñaët beân tay traùi!. - 23 -
  24. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 SÔ ÑOÀ CHAÂN CUÛA CHIP AT89C2051 SÔ ÑOÀ CHAÂN CUÛA MAX232 4) SÔ ÑOÀ CHAÂN CUÛA COÅNG COM DB9: (9p D-SUB male at PC (DTE)) Haõy nhôù raèng : Coång com gaén treân maùy tính laø coång “Ñöïc”( male ) Ñeå nhaän daïng coång COM ñöïc , baïn chæ caàn nhìn vaøo thì baïn seõ thaáy coù caùc “ chaáu “ôû beân trong (9p D-SUB female at cable / mouse (DCE)) Haõy nhôù raèng : Coång maø ta caàn duøng ñeå laép raùp maïch naïp laø coång COM naøy , noù laø coång “caùi “. Ñeå nhaän ra coång COM caùi , baïn chæ caàn nhìn vaøo thì seõ thaáy chæ toaøn laø” caùc “ loã”. Caàn löu yù : Raát nhieàu baïn mua loän giöõa Coång ñöïc vaø coång Caùi , cho neân khi ñi mua baïn caàn noùi roõ laø mua coång naøo , vaø cuõng nhôù laø ôû trong maùy tính cuûa chuùng ta ñaõ saün coù coång ñöïc roài . Giaù moãi coång COM -DB9 khoaûng 5.000ñ maø thoâi .Nhaéc laïi laø phaûi heát söùc löu yù kieåm tra cho kyõ tröôùc khi haøn coång COM leân maïch naïp , vaø treân maïch naïp luoân laø coång Caùi 5 ) CAÙCH ÑOÏC GIAÙ TRÒ ÑIEÄN TRÔÛ CAÙCH TÌM GIAÙ TRÒ ÑIEÄN TRÔÛ THOÂNG QUA CAÙC VAÏCH MAØU Ñeå tính toaùn giaù trò cuûa ñieän trôû thoâng qua caùc maõ vaïch maøu (color coded stripes) treân ñieän trôû , thöôøng theo caùc böôùc sau: Böôùc 1 : Ñaët con ñieän trôû sao cho Vaïch maøu Vaøng kim hay nhuõ baïc cuûa ñieän trôû -phaûi ôû goùc beân phía tay phaûi cuûa baïn. Böôùc 2 : Baïn haõy nhìn kyõ 2 vaïch maøu ñaàu tieân ôû phía beân traùi (the first two stripes on the left end). Tieáp theo baïn haõy chuyeån ñoåi caùc maøu maø baïn ñoïc ñöôïc ra thaønh soá theo baûng chuyeån ñoåi cho saün ôû döôùi ñaây. Böôùc 3 : Xong , baïn haõy nhìn tieáp vaïch thöù 3 . Vaïch naøy chính laø heä soá nhaân . Baïn haõy chuyeãn ñoåi vaïch maøu thöù 3 naøy ra gia trò theo baûng cho saün phía sau. - 24 -
  25. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Böôùc 4 : Ñeán ñaây baïn chæ vieäc laáy 2 con soá ôû böôùc 2 nhaân vôùi con soá ôû böôùc 3 laø baïn ñaõ tìm ñöôïc giaù trò cuûa ñieän trôû . Giaù trò cuûa ñieän trôû maø baïn vöøa tìm seõ mang ñôn vò laø ohms Vaïch maøu nhuõ kim hay nhuõ baïc ( töùc laø vaïch thöù 4 tính töø traùi sang ) seõ cho chuùng ta bieát sai soá cuûa noùso vôùi gia trò ghi treân ñieän trôû ñoù.Theo toâi thì chuùng ta khoâng neân phaûi baïn taâm ñoái vôùi ñeàu naøy, coù nghóa laø chuùng ta khoâng caàn bieát noù trong khi thöïc haønh. Haõy nhôù raèng: Ñoái vôùi ñieän trôûø chuùng ta caàn heát söùc löu yù ñeán moät thoâng soá voâ cuøng quan troïng ñoù laø coâng suaát chòu ñöïng cuûa noù. Thoâng thöôøng coâng suaát ñieän trôû baùn ôû thò tröôøng seõ coù caùc möùc sau :1/4 Watt , 0.5 Watt , 1W , 5W , 10W Nhöng thoâng duïng nhaátvaãn laø ñieän trôû 1/4 Watt- cho neân khi baïn ra tieäm mua phaûi noùi roõ ñieän trôõ caàn mua laø bao nhieâu Watt- theá môùi laø daân ñieän chuyeân nghieäp !.Giaù hieän thôøi 100 con khoaûng 2.500 ÑVN BAÛNG MAÕ MAØU ÑIEÄN TRÔû . (Vôùi vaïch nhuõ kim hay baïc naèm beân phaûi) Maøu Vaïch 1 Vaïch 2 Vaïch 3 Vaïch 4 Ñen 0 0 x1 Naâu 1 1 x10 Ñoû 2 2 x100 Cam 3 3 x1,000 Vaøng 4 4 x10,000 Luïc (Green) 5 5 x100,000 Lam (Blue) 6 6 x1,000,000 Tím 7 7 Xaùm 8 8 Traéng 9 9 Nhuõ Kim 5% Baïc 10% Ví duï: Cho moät ñieän trôû coù caùc vaïch maøu tính töø traùi qua nhö sau : Xanh da trôøi( lam-blue) ,Xaùm , Ñoû, Nhuõ vaøng .Haõy tìmgiaù trò ñieän trôû cuûa noù. Böôùc 1.: Vaïch maøu nhuõ vaøng –phaûi ñöôïc ñaët beân phaûi , roài ñeán Böôùc2 Böôùc 2: Vaïch ñaàu tieân laø maøu xanh da trôøi( blue) –tra baûng thì thaáy noù töông öùng vôùi soá 6. Vaïch thöù 2 laø maøu xaùm vaø cuõng laøm töôïng töï ta coù ñöôïc soá 8. Nhö vaäy 2 con soá ñaàu tieân cuûa ñieän trôû coù giaù trò laø 68. Böôùc3: Vaïch thöù 3 laø maøu ñoû -coù nghóa laø x 100. Böôùc4: Giaù trò cuûa ñieän trôû tìm ñöôïc seõ laø : 68 x 100 = 6800 ohms (6800 ohms = 6.8 kohms). Vaïch maøu nhuõ ñoàng coù nghóa laø giaù trò chính xaùc cuûa ñieän trôû seõ sai khaùc 5% so vôùi thöïc teá . Giaù trò cuûa noù coù theå seõ seõ naèm giöõa 6,460 Kohms and 7,140 Kohms. (Do sai soá 5% cuûa 6,800 = 0.05 x 6,800 = 340) - 25 -
  26. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 VI- MOÄT SOÁ CAÙC LÖU YÙ : · Bieán theá ñieän coù theå duøng loaïi 450mA cho ñeán 1Ampe . Vôùi ngoõ ra AC ( xoay chieàu) toái thieåu laø 12V –AC . Toát nhaát laø neân mua bieán theá 1 Ampe coù ngoõ ra 15 V giaù khoaûng 13.000ñ . · IC oån aùp 7805 baïn khoângneân mua loaïi coù chöõ maøu traéng –loaïi naøy ña soá laø cuøa Trung Hoa saûn xuaát neân khoâng khi naøo ñaït ñuùng 5V nhö con soá ñaõ ghi caû, baïn neân mua loaïi chöõ 7805 chìm , loaïi naøy chòu nhieät cao vaø raát chuaån volt . Giaù cuûa noù khoaûng 3000ñ , neáu mua haøng cuõthì moãi con chæ heát 500 ñ raát reõ(baùn raát nhieàu ôû chôï Nhaät Taûo) .! · Töông töï cho LM317 cuõng neân mua loaïi chöõ chìm vaø giaù caû cuõng nhö 7805 . · Transistor 2N2222 baïn coù theå thay baèng C1815 giaù 300ñ/c · Coøn caùc linh kieän ñeàu coù baùn ôû chôï Nhaät Taûo Trong quaù trình laép raùp neáu baïn coù gaëp truïc traëc hay baát kyø moät söï coá naøo sau khi chính baûn thaân baïn ñaõ coá söûa nhöng vaãn khoâng ñöôïc thì xin haõy email cho chuùng toâi qua ñòa chæ sau : duyphi@yahoo.com / duyphi@yahoo.com ,hoaëc goïi tröïc tieáp qua ñieän thoaïi 0909371471 XIN MÔØI BAÏN XEM TIEÁP MOÄT LOAÏI MAÏCH NAÏP VI XÖÛ LYÙ KHAÙC BAÈNG COÅNG MAÙY IN VÔÙI TOÁC ÑOÄ CÖÏC KYØ NHANH -LAÏI RAÁT ÑÔN GIAÛN ! Ñaây laø hình aûnh hoaøn chænh cuûa maïch naïp 89c2051 qua coång maùy in: - 26 -
  27. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Vaán ñeà 4 MAÏCH NAÏP: AT89C2051 QUA COÅNG MAÙY IN Sau ñaây laø moät loaïi “maïch naïp chöông trình” cho AT89C2051 thoâng qua coång maùy in (Parallel Printer Port) , loaïi “Maïch naïp ” naøy coøn goïi laø” maïch naïp song song”. Öu ñieåm :lôùn nhaát cuûa loaïi naøy laø thôøi gian naïp chöông töø maùy tính döôùi daïng “file Hex” sang vi ñieàu khieån cöïc kyø nhanh . Haõy nhôù raèng : Caùc baïn muoán naïp chöông trình maø baïn ñaõ vieát vaøo cho con chip vi khieån , thì tröôùc heát baïn phaûi bieân dòch noù ra file Hex tröôùc ñaû, roài töø ñoù baïn môùi duøng maïch naïp naøy ñeå naïp file Hex maø baïn vöøa bieân dòch vaøo cho con chip AT89C2051. Neáu Caùc baïn muoán bieát caùch laøm sao ñeå bieân dòch ra file Hex töø moät file ASM ( ñöôïc vieát baèng ngoân ngöõ Assembly ) thì caùc baïn haõy xem Phaàn 3 “Höôùng Daãn Söû Duïng Caùc Phaàn Meàm Vi Xöû Lyù”cuûa quyeån saùch naøy . I. SÔ ÑOÀ LAÉP RAÙP : - 27 -
  28. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 II. BOARD MAÏCH IN: Ñaây laø Board maïch in ñeå gaén linh kieän , caùc baïn coù theå lieân heä vôùi phoøng Photo B1 tröôøng ñh.Baùch Khoa (noù naèm ôû ngay döôùi caàu thang daõy B1) ñeå laáy baûn veõ naøy ñaõ ñöôïc in saün baèng maùy in Laser , sau ñoù baïn haõy duøng “baøn la”ø (hay coøn goïi: “baøn uõi” ñeå ñöa noù leân bo ñoàng). Löu yù : Neáu caùc baïn muoán bieát caùch “Thieát Keá Bo Maïch In “ vaø caùh taïo ra moät baûn maïch in chaát löông cao thì baïn haõy xem Phaàn 2 “HÖÔÙNG DAÃN LAØM BO MAÏCH IN CHAÁT LÖÔÏNG CAO” trong quyeån saùch naøy. Haõy löu yù raèng: Baïn coù theå download phaàn meàm cuøng sô ñoà vaø board maïch in vaø nhieàu vaán ñeà khaùc raát hay taïi website : www.qsl.net/dg5dbz/main_eng.html - 28 -
  29. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 III. HÖÔÙNG DAÃN LAÉP RAÙP LINH KIEÄN LEÂN BO MAÏCH IN: IV- MAÏCH HOAØN CHÆNH SAU KHI ÑAÛ LAÉP RAÙPXONG: - 29 -
  30. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 V-PHAÀN MEÀM-CHO MAÏCH NAÏP 89C2051 QUA COÅNG MAÙY IN: Maïch naïp naøy söû duïng phaàn WinATProg chaïy treân moâi tröôøng windows 98/ Me dung löôïng 273kb . Giao dieân nhö sau : Baïn coù choïn loaïi Chip ñeå naïp trong muïc menu Prozessor : * AT89C1051 * AT89C2051 * AT89C4051 Baïn cuõng coù theå choïn laïi ngoân ngöõ hieån thò treân giao dieïn laø tieáng anh : Haõy löu yù raèng: Baïn coù theå download phaàn meàm naøy cuøng sô ñoà board maïch in vaø nhieàu vaán ñeà khaùc raát hay taïi website : www.qsl.net/dg5dbz/main_eng.html - 30 -
  31. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 IV- MOÄT SOÁ LÖU YÙ VEÀ CAÙC LINH KIEÄN CAÀN DUØNG: 1- CAÙCH XAÙC ÑÒNH CAÙC CHAÂN ÑIEÄN AÙP VAØO RA CUÛA 7805 Output (O):= Chaân ñieän aùp ra 5V Command(C):= Chaân naøy haøn xuoáng Mass ( GND) Input (I):= Ñieän aùp vaøo 9Và12V Haõy nhôù raèng: Chaân Command raát quan troïng , chuùng ta caàn haøn noù xuoáng mass(GND) moät caùch heát söùc chaéc chaén neáu nhö chaân naøy haøn khoâng kheùo coù laøm cho ñieän aùp ôû ngoõ ra taêng voït leân raát cao gaàn baèng ñieän aùp ngoõ vaøo (9-12V) seõ laøm hoûng caùc chip . 2- SÔ ÑOÀ CHAÂN CUÛA COÅNG MAÙY IN 25p D-SUB female at PC Haõy nhôù raèng : Coång Maùy in gaén treân maùy tính laø coång “Caùi”( female ) Ñeå nhaän daïng coång Maùy in Caùi , baïn chæ caàn nhìn vaøo thì baïn seõ thaáy coù caùc “ Loå “ôû beân trong 25p D-SUB male at parallel-cable Haõy nhôù raèng : Coång maø ta caàn duøng ñeå laép raùp maïch naïp laø coång Maùy in naøy , noù laø coång “ Ñöïc “. Ñeå nhaän ra coång COM caùi , baïn chæ caàn nhìn vaøo thì seõ thaáy chæ toaøn laø” caùc “ Chaáu”. Caàn löu yù : Raát nhieàu baïn mua loän giöõa Coång ñöïc vaø coång Caùi , cho neân khi ñi mua baïn caàn noùi roõ laø mua coång naøo , vaø cuõng nhôù laø ôû trong maùy tính cuûa chuùng ta ñaõ saün coù coång ñöïc roài . Giaù moãi coång maùy in –DB25 khoaûng 5.000ñ maø thoâi .Nhaéc laïi laø phaûi heát söùc löu yù kieåm tra cho kyõ tröôùc khi haøn coång maùy in leân maïch naïp , vaø treân maïch naïp luoân laø coång Ñöïc - 31 -
  32. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 3- CAÙCH XAÙC ÑÒNH CHAÂN B-C-E CUÛA TRANSISTOR Löu yù : Caùc Transistor BC239-ñöôïc thay baêng C1815 Vaø Transistor BC328 ñöôïc thay baèng A1015 Sau ñaây laø caùh xaùc ñònh chaân B_C_E cho transistor A1015 vaø C1815 Hình daùng thöïc teá C1815 / A1015 Kí hieäu cuûa C 1815/ A 1015 4- CAÙH XAÙC ÑÒNH CHAÂN CUÛA IC Haõy nhôù raèng : Haàu heát treân caùc IC ñeàu coù moät daáu chaám ôû moät goùc IC hay moät vaït baùn nguyeät ô treân moät caïnh cuûa ICû , vaø quy taéc ñeám soá thöù töï chaân cuûa IC luoân theo chieàu ngöôïc vôùi kim ñoàng hoà . Chaân soá 1 cuûa IC chính laø chaân ñaàu tieân naèm treân caïnh beân traùi cuûa daáu Chaám hay Vaït baùn nguyeät. 5- CAÙCH ÑOÏC GIAÙ TRÒ ÑIEÄN TRÔÛ CAÙCH TÌM GIAÙ TRÒ ÑIEÄN TRÔÛ THOÂNG QUA CAÙC VAÏCH MAØU ÔÛ treân ñaõ höôùng daãn , xin xem laïi . - 32 -
  33. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 PHAÀN 2: HÖÔÙNG DAÃN LAØM BO MAÏCH IN CHAÁT LÖÔÏNG CAO NOÄI DUNG : Vaán ñeà 6: HÖÔÙNG DAÃN THIEÁT KEÁ MAÏCH IN TREÂN MAÙY TÍNH BAÈNG PHAÀN MEÀM : Eagle 4.01 Vaán ñeà 7: PHÖÔNG PHAÙP IN BAÛN VEÕ LEÂN BO ÑOÀNG NHANH - ÑÔN GIAÛN - HIEÄU QUAÛ VAÁN ÑEÀ 6: HÖÔÙNG DAÃN THIEÁT KEÁ MAÏCH IN TREÂN MAÙY TÍNH BAÈNG PHAÀN MEÀM : Eagle 4.01 I-GIÔÙI THIEÄU : Hieän nay vieäc öùng duïng maùy tính ñeå thieát keá maïch in ngaøy moät trôû neân khaù phoå bieán nhö Orcad, eagle, Protel . Tuy nhieân deã söû duïng hôn caû vaø hieäu quaû nhaát ñoù laø phaàn meàm Eagle , noù raát ñôn giaûn , giao dieän ñeïp , khoâng quaù phöùc taïp trong khi thieát keá maïch in . Chính vì nhöõng ñaëc ñieåm naøy maø ña soá caùc sinh vieân hieän nay nhaát laø sinh vieân tröôøng kyõ thuaät ñang söû duïng phaàn meàm naøy . II-NOÄI DUNG : Veà noäi dung höôùng daãn thieát keá maïch in baèng phaàn meàm Eagle 4.01 toâi cuõng ñaõ soaïn xong vaø laøm thaønh moät quyeån saùch rieâng khoaûng gaàn 20 trang . Neáu caùc baïn muoán xem thì coù theå lieân heä vôùi Phoøng Photo B1 tröôøng Ñh.Baùch Khoa hoaëc caùc baïn cuõng coù theå xem noäi dung cuûa quyeån saùch naøy treân maïng theo ñòa chæ sau: www.microduyphi.com - 33 -
  34. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 VAÁN ÑEÀ 7: PHÖÔNG PHAÙP IN BAÛN VEÕ LEÂN BO ÑOÀNG I-GIÔÙI THIEÄU: Thoâng thöôøng baïn caàn in 1 baûn maïch maø baïn töï thieát keá leân bo ñoàng(Cu) baïn thöôøng phaûi ra tieäm ñaët laøm duøm vôùi giaù khoâng ñöôïc reû cho laém (thöôøng laø 100.000ñ trôû leân ).Vaäy thì taïi sao baïn laïi khoâng töï mình laøm laáy vôùi giaù khoaûng laø 6.000ñ nhæ ? Sau ñaây laø 1 quaù trình ruùt kinh nghieäm cuûa chuùng toâi trong quaù trình thöïc hieän khi ñöa baûn maïch töø maùy tính leân baûn Cu II-TIEÁN TRÌNH LAØM MAÏCH IN : Böôùc 1: Ñaàu tieân baïn duøng maùy tính ñeå thieát keá baûng maïch in maø baïn muoán thöïc hieän baèng caùc phaàn meàm thoâng duïng sau :Eagle, Orcad, Protel, Traxmat v.v.v. (caùc baïn coù theå xem höôùng daãn töï thieát keá maïch in baèng phaàn meàm Eagle Version4.01 nhö höôùng daãn ôû muïc 2.6) . Giao dieän thieát keá maïch in cuûa phaàn meàm Eagle 4.01 : Sau khi baïn thieát keá , haõy löu noù laïi trong ñóa meàm vaø in ra baèng möïc laze leân giaáy photo thöôøng , moãi tôø photo giaù khoaõng 300ñ . Haõy löu yù: Phaõi in baèng möïc in Laser . - 34 -
  35. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Khoâng neân in leân giaáy scan vì giaáy scan moûng quaù khi uûi seõ bò chaùy , khoâng in leân giaáy kieáng vì möïc deã bò lem & raát toán keùm (1500ñ cho 1 tôø giaáy ). Nôi in giaù sinh vieân: Coång thöù 3 cuûa tröôøng ÑH BAÙCH KHOA –Tp HCM nhìn qua beân kia ñöôøng Böôùc 2: Ñaët tôø giaáy coù in maïch leân mieáng ñoàng. Sau ñoù uûi leân tôø giaáy(trong khoaûng töø 10à15 phuùt ) nhôù laø phaûi uûi ñeàu töø giöõa ra ñeán caùc ñöôøng vieàn (baøn uûi phaûi noùng ) +Sau khoaûng thôøi gian ñoù tôø giaáy coù veû bò naùm laïi .UÛi xong thì boû baûng ñoàng vaøo nöôùc à ñeå khoaûng 15 phuùt trôû leân cho lôùp giaáy muïc ra roài boùc nheï lôùp giaáy ra . Khi ñoù möïc laze seõ in leân baûng ñoàng toaøn boä nhö mình ñaõ thieát keá maïch Böôùc 3: Röûa maïch baèng boät FeCl3 pha vaøo nöôùc , tuyø vaøo löôïng boät baïn cho vaøo (thöôøng laø 2 bòch khi baïn muoán laøm nhanh vaø röûa nhieàu maïch cuøng luùc ). Sau khi röûa maïch thì lôùp ñoàng khoâng ñöôïc möïc laze baûo veä seõ bò tan heát ñeå laïi nhöõng ñöôøng möïc laze (ôû döôùi coù lôùp ñoàng ). Sau ñoù baïn haõy röûa saïch baûng maïch baèng nöôùc laïnh thaät kyõ löôõng nhieàu laàn , roài duøng giaáy nhaùm chaø sô sô leân maïch ñoàng ñeå laøm bay heát lôùp möïc laze , nhö vaäy baïn ñaõ laøm ñöôïc baûn maïch maø baïn ñaõ töï thieát keá . Haõy löu yù : Laøm laàn ñaàu thöôøng hay bò ø hoûng do uûi khoâng ñeàu , khi ñoù baïn haõy laáy giaáy nhaùm chaø cho bay lôùp möïc roài laøm laïi nheù! III- LÔØI KEÁT : Ñaây chæ laø nhöõng kinh nghieäm cuûa chuùng toâi trong quaù trình laøm maïch ,cho neân sai soùt cuõng laø ñieàu coù theå xaõy ra .Do ñoù kính mong cuøng baïn ñoïc goùp yù & boå sung ñeå taäp saùch naøy ngaøy moät hoaøn thieän hôn . - 35 -
  36. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 PHAÀN 3: HÖÔÙNG DAÃN SÖÛ DUÏNG CAÙC PHAÀN MEÀM VI XÖÛ LYÙ NOÄI DUNG Vaán ñeà 8: MOÄT SOÁ PHAÀN MEÀM LAÄP TRÌNH / SOAÏN THAÛO ASSEMBLY Vaán ñeà 9: CAÙC PHAÀN MEÀM BIEÂN DÒCH FILE .ASM RA FILE .HEX Vaán ñeà 10 : CAÙC PHAÀN MEÀM MOÂ PHOÛNG VI XÖÛ LYÙ Vaán ñeà 11 : HÖÔÙNG DAÃN SÖÛ DUÏNG Ezdl4.0 CHO CAÙC MAÏCH NAÏP Vaán ñeà 8: MOÄT SOÁ PHAÀN MEÀM LAÄP TRÌNH - SOAÏN THAÛO ASSEMBLER I-GIÔÙI THIEÄU: Nhaân tieän vieát taäpsaùch naøy ,toâi xin giôùi thieäu cuøng caùc baïn sô löôïc veà moät soá phaànmeàm thoâng duïng giaønh cho Vi Xöû Lyù , caùc phaàn meàm maø toâi giôùi thieäu hieän ñang coù raát nhieàu taïicaùc tieâm baùn software , caùc baïn coù theå mua ôû ñoù hoaëc leân maïng vaøo trang web “ www.microduyphi.com” ñeå download veà söû duïng hoaøn toaøn mieãn phí . Toâi cuõng xin noùi tröôùc laø taát caû nhöõng gì maø toâi höôùngô3 ñaây hoaøn toaøn laø toâi ñaõ traûi nghieäm baèng thöïc teá roài neân caùc baïn cöù yeân taâm maø söû duïng , ngoaøi ra coù moät soá phaàn meàm môùi khaùc raát hay nhöng toâi chöa beû khoaù ñöôïc hay chöa caäp nhaät kòp thì cuõng mong cacù baïn thoâng caûm boû qua cho toâi . II-CAÙC PHAÀN MEÀM LAÄP TRÌNH- SOAÏN THAÛO VI XÖÛ LYÙASSEMBLER: 1) LAÄP TRÌNH ASSENBLER BAÈNG NOTEPAD: Töø menu Star baïn haõy vaøo muïc Program ñeå môû cöûa soå NOTEPAD nhö hình sau. Sau khi baïn ñaõ laäp trình xong thì löulaïi vôùi ñuoâi laø “chaám-asm” nhö sau: .asm Löu yù raèng : Daáu laø nôi ñeå cho baïn ñaët teân chöông trình cuûa baïn . Teân maø baïn ñaët daøi toái ña laø 8 kí töï maø thoâi . Ví duï teân hôïp leä: ledtest.asm , denchop.asm , leduyphi.asm - 36 -
  37. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Hình : Môû cöûa soå NOTEPAD ñeå laäp trình ASM 2) LAÄP TRÌNH ASSENBLER BAÈNG NC-EDIT ( NORTONCOMMANDER): Ngoaøi Notepad ra , baïn coøn coù theå laäp trình Assembler baèng chöùc naêng soaïn thaûo Edit cuûa Norton Commander chaïy treân Windows hoaëc Dos cuõng ñöôïc . Ñeå môû chöùc naêng naøy cuûa NC baïn haõy nhaán hai phím: “SHIFT + F4” Sau ñoù baïn cuõng löu laïi vôùi teân laø: .ASM - 37 -
  38. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 VAÁN ÑEÀ 9: CAÙC PHAÀN MEÀM BIEÂN DÒCH FILE .ASM RA FILE .HEX I-GIÔÙI THIEÄU: Nhö cuùng ta bieát , muoán naïp ñöôïc noäi dung chöông trình maø chuùng ta ñaõ laäp trình vaøo cho con vi xöû lyù ñeå noù hoaït ñoäng thì chuùng ta phaûi naïp vaøo cho noù caùc file coù daïng laø file .HEX hoaëc laø file .BIN , nhöng ña soá ngöôøi ta thöôøng naïp cho noù caùc file coù daïng laø file .HEX . Do ñoù toâi xin giôùi thieäu cuøng vôùi caùc baïn caùc phaàn meàm thöôøng duøng ñeå chuyeån caùc file coù daïng laø file .Asm sang daïng file .Hex ñoù laø ASM51 vaø TASM . II_CAÙC PHAÀN MEÀM PHIEÂN DÒCH .ASM SANG .HEX: (A) PHAÀN MEÀM ASM51 : 1-CAÙC FILE CAÀN COÙ TRONG BOÄ ASM51: Trong boä ASM51 goàm coù caùc file sau: ASM51.EXE The Cross Assembler program itself MOD152 Source file for the $MOD152 control MOD154 Source file for the $MOD154 control MOD252 Source file for the $MOD252 control MOD44 Source file for the $MOD44 control MOD451 Source file for the $MOD451 control MOD452 Source file for the $MOD452 control MOD51 Source file for the $MOD51 control MOD512 Source file for the $MOD512 control MOD515 Source file for the $MOD515 control MOD517 Source file for the $MOD517 control MOD52 Source file for the $MOD52 control MOD521 Source file for the $MOD521 control MOD552 Source file for the $MOD552 control MOD652 Source file for the $MOD652 control MOD751 Source file for the $MOD751 control MOD752 Source file for the $MOD752 control MOD851 Source file for the $MOD851 control Toång dung löôïng : 153Kb 2) CAÙCH SÖÛ DUÏNG: - Sau khi baïn laäp trình xong ( baèng Notepad hay NC-Edit nhö ñaõ noùi ôû treân) baïn haõy löu noù laïi vôùi teân laø: .asm , toâi giaû söû raèng laø : vidu.asm vaø file naøy baïn löu treân oå ñæa C:\ chaúng haïn, ñoàng thôøi toâi cuõng giaû söû raèng baïn cuõng ñeå boä ASM51 naøy treân oå ñæa C:\ thì khi ñoù chuùng ta coù nhö sau: C:\ vidu.asm ASM51.EXE The Cross Assembler program itself MOD152 Source file for the $MOD152 control MOD154 Source file for the $MOD154 control MOD252 Source file for the $MOD252 control MOD44 Source file for the $MOD44 control MOD451 Source file for the $MOD451 control MOD452 Source file for the $MOD452 control MOD51 Source file for the $MOD51 control MOD512 Source file for the $MOD512 control MOD515 Source file for the $MOD515 control MOD517 Source file for the $MOD517 control MOD52 Source file for the $MOD52 control MOD521 Source file for the $MOD521 control MOD552 Source file for the $MOD552 control MOD652 Source file for the $MOD652 control MOD751 Source file for the $MOD751 control - 38 -
  39. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 MOD752 Source file for the $MOD752 control MOD851 Source file for the $MOD851 control Sau ñoù baïn haõy môû cöøa soå MS-DOS vaø goõ doøng leänh y nhö sau thì baïn seõ ñöôïc moät file coù teân laø: vidu.hex , doøng leânh nhö sau : C:\asm51 vidu.asm hoaëc C:\asm51 vidu Nhö vaäy laø baïn ñaõ hoaøn thaønh xong coâng vieäc bieân dòch file >ASM sang file >HEX roài , baây giôøi baïn coù rheå laáy file naøy naïp vaøo cho con chip vi xöû lyù cuûa baïn ñöôïc roài ñaáy . 3) Phaàn Meàm Naøy Kieám ÔÛ Ñaâu : Caùc baïn coù theå vaøo trang Web cuûa toâi ñeå taûi veà söû duïng mieån phí hoaøn toaøn : www.microduyphi.com hay baïn cuõng coù theå lieân heä taïi phoøng Photo B1 (döôùi caàu thang) tröôøng ÑH.Baùch Khoa Tp.HCM toâi coù cheùp saên trong ñæa meàm 1,44Mb. B) PHAÀN MEÀM TASM Tieáp theo toâi xin giôùi thieäu cuøng caùc baïn moät phaàn meàm khaùc cuõng bieân dòch file .ASM sang file.HEX raát hay khaùc ñoù laø phaàn meàm : TASM 1) Noäi Dung Caùc File Coù Trong Boä TASM Boä Tasm chöùa trong moät file coù teân laø Tasminst coù nghóa laø Tasm instal ( teäp tin ñeå caøi ñaët) baïn click chuoät leân teäp tin naøy thì töï ñoâng noù seõ töï giaûi neùn vaø caøi ñaët luoân dung löôïng cuûa teäp tin Tasminst laø 126Kb , caùc baïn coù theå vaøo trang Web cuûa toâi ñeå taûi veà söû duïng mieån phí hoaøn toaøn : www.microduyphi.com hay baïn cuõng coù theå lieân heä taïi phoøng Photo B1 (döôùi caàu thang) tröôøng ÑH.Baùch Khoa Tp.HCM 2) CAÙCH SÖÛ DUÏNG : Baïn haõy thoaùt khoûi windows –ra moâi tröông DOS baèng caùch töø moâi tröôøng Windows98 , baïn click chuoät vaøo Star menu à choïn muïc Program à roài choïn tieáp MS-DOS prompt , nhö vaäy laø baïn ñaõ ra ngoaøi moâi tröôøng DOS roài ñoù . Sau ñoù baïn haõy thay ñoåi laïi ñöôøng daãn , cuøng thö muïc ñeå ñeán nôi chuùa file TASM ñeå baét ñaàu bieân dòch baèng caùh söû duïng doøng leänh sau : tasm -51 *.asm *.hex - 39 -
  40. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Toâi giaû söû , baïn ñeå file phaàn meàmTASM vaø file ledtest.asm taïi oå ñæa C:\ chaúng haïn , thì khi ñoù baïn seõ goõ ñuùng doøng leän sau ñeå bieân dòch file ledtest.asm : C:\ tasm -51 ledtest.asm ledtest.hex Keát quaû cuûa vieäc laøm naøy baïn seõ taïo ra ñöôïc file : ledtest.hex. Xong , baây giôøi thì baïn haõy ñoùng cöûa soå: DOS prompt ñeå trôû laïi vôùi windows. Haõy löu yù raèng : Baïn cuõng coù theå taïo ra teäp tin kieåm tra loåi laäp trình tröôùc khi taïo ra teäp tin naïpcho vi xöû lyù , baèng caùch baïn taïo ra file coù ñuoâi laø .Lst , teäp tin naøy seõ kieåm tra loåi cuù phaùp leänh trong chöông trình cuûa baïn , noù seõ chæ cho baïn thaáy nhöõng loåi sai ñeå baïn kòp thôøi söûa chöõa .Khi ñoù baïn haõy goõ caâu leänh sau: tasm -51 *.asm *.obj Keát quaû ta seõ ñöôïc 2 teäp tin :*.Obj vaø *.Lst . Cuõng vôùi giaû söû nhö treân ta seõ goõ nhö sau : C:\ tasm -51 ledtest.asm ledtest.obj Sau ñoù baïn ñöôïc hai teäp tin : ledtest.obj vaø ledtest.Lst baïn haõy môû file Ledtest.Lst naøy baèng Notepad hay Word ñeå xem keát quaû kieåm tra.! Ngoaøi ra phaàn meàm Tasm naøy coøn hoã trôï cho moät soá loaïi Vi Xöû Lyù khaùc nöõa , khi ñoù tuyø theo loaïi maø baïn seõ goõ caùc doøng leänh cho phuø hôïp , toâi xin cheùp nguyeân baûn tieáng anh hhö sau : - 40 -
  41. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 TASM - Table Driven Assembler Version 2.8 assemble the code in a file called source.asm, one would enter: tasm -48 source.asm for an 8048 assembly tasm -65 source.asm for a 6502 assembly tasm -51 source.asm for an 8051 assembly. tasm -85 source.asm for an 8085 assembly. tasm -80 source.asm for a Z80 assembly. tasm -05 source.asm for a 6805 assembly. tasm -68 source.asm for a 6800/6801 assembly. tasm -70 source.asm for a TMS7000 assembly. tasm -32 source.asm for a TMS32010 assembly. The file name that the tables are read from is formed by taking the digits specified after the '-' and appending it to 'TASM' then appending the '.TAB' extension. Thus, the '-48' flag would cause the tables to be read from the file 'TASM48.TAB'. It is possible to designate tables by non numeric part numbers if the '-t' flag is used. For example, if a user built a table called TASMF8.TAB then TASM could be invoked as follows: tasm -tf8 source.asm Each option flag must be preceded by a dash. Options need not precede the file names, however. The various options are described below: C- MOÄT PHAÀN MEÀM BIEÂN DÒCH KHAÙC : Trong ñæa SoftWare cô ñieän 2003 cuûa boä moân cô ñieän töû toâi thaáy coù giôùi thieäu moät boä dòch –nhöng khoâng bieát laø teân gì , nhöng coù ñaày ñuû caùc teäp tin caàn duøng trong thö muc DichASM , caùc baïn coù theå mua vaø söû duïng noù : Caùch söû duïng : Day la mot so phan mem de bien dich asm sang hex hoac bin Cho ho ic intel. Chay tren moi truong dos Cac ban phai su dung ket hop cac phan mem voi nhau. 1/ ban lap trinh assembler bang notepad hoac nc-edit (nhan shift +f4). 2/ sau do luu lai thanh file : *.asm 3/ su dung "x8051" de kiem tra loi va bien dich thanh : *.obj 4/ su dung "link" de bien dich *.obj thanh *.hex 5/ nhu vay ban da co file *.hex de nap vao ic hay rom. Neu may nap cua ban can file *.bin thi ban dung "hexbin2" de chuyen doi. Ngoaøi ra coøn phaàn meàm Assemblers vs dung löôïng chæ 40 kb vaø nhieàu phaàn meàm bieân dòch raát hay khaùc toâi seõ giôùi thieäu cuøng caùc baïn trong taäp 2” Höôùng daãn giao tieáp vi xöû lyù vôùi maùy tính “ , xin môøi caùc baïn ñoùn ñoïc! Xin chuùc caùc baïn vaïn söï thaønh coâng ! - 41 -
  42. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 VAÁN ÑEÀ 10: CAÙC PHAÀN MEÀM MOÂ PHOÛNG VI XÖÛ LYÙ 1) Phaàn meàm moâ phoûng 8051 JSIM-51 mieån phí hoaøn toaøn bôûi Jens Altmann. Dung löôïng : 395 kb 3) PHAÀN MEÀM MOÂ PHOÛNG Emulator 8051 V1.0 Phaàn meàm Emulator 8051 V1.0 bôûi TS Controls laø moät phaàn meàm moâ phoûng cho 8051 Hieän nay noù coù nhieàu treân caùc ñæa Software ñieän töû, caùc baïn coù theå mua noù, thoâng thöông noù coù teân laø Ts_Contols 8051. Dung löôïng: 963kb Löu yù : Moät soá phaàn meàm lôùn toâi khoâng theå ñöa leân maïng , vaø moät soá phaàn meàm ñaõ coù baùn ôû caùc tieäm Software thì toâi cuõng chæ giôùi thieäu , caùc baïn haõy chòu khoù mua , hoaëc coù theå lieân heä rieâng vôùi toâi neáu ñöôïc toâi seõ gôûi cho caùc baïn ! Giao dieän cuûa phaàn meàm naøy nhö sau : - 42 -
  43. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 3) Ngoaøi ra coøn moät phaàn meàm moâ phoûng khaùc chaïy treân moâi trö6ôøng Dos nhö sau: Emily 8051/8052 V1.7 cuûa Dunfield Development Systems laø moät phaàn meàm moâ phoûng cho 8051 for DOS. Dung löôïng : 357 kb - 43 -
  44. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Vaán ñeà 11: HÖÔÙNG DAÃN SÖÛ DUÏNG PHAÀN MEÀM EZ4.0 CHO MAÏCH NAÏP VI XÖÛ LYÙ I-Giao dieän cuûa EZ4.0 nhö sau: Option 1 Option 2 Command 1 Command 2 II - CAÙCH SÖÛ DUÏNG: Optin 1: Khi baïn nuùt naøy thì con chip cuûa baïn noù seõ khoaù laïi , sau naøy baïn khoâng theå naøo naïp laïi ñöôïc nöõa do ñoù raát ít ai choïn option naøy , theo toâilaø khoâng choïn thì toát hôn ñeå coù theå naïp nhieàu laàn ! Option 2: Khi baïn nuùt naøy vieäc kieåm tra sau khi naïp xong seõ dieãn ra raát nhanh , baïn coù choïn hay khoâng tuyø yù chaúng heà haén gì caû ! Command 1: Chöùc naêng cuûa Command naøy laø naïp chöông trình file.Hex vaøo cho vi xöû Lyù .Baïn haõy nhaán vaøo command naøy ñeå chæ ñeán nôi chöùa file ,Hex caàn naïp ñeå tieán haønh quaù trình naïp . Löu yù laø : Khi baïn choïn Command naøy thì ñieàu ñaàu tieân noù seõ xoaù noäi dung cuõ treân con vi xöû lyù neáu coù , ñeå doïn ñöôøng chuaån bò naïp noäi dung môùi vaøo , coâng vieäc naøy ñöôïc noù laøm töï ñoäng hoaøn toaøn . Command 2: Chöùc naêng naøy seõ ñoïc ngöôïc noäi dung coù trong con vi xöû lyù cuûa baïn ra ngoaøi laïi döôùi daïng file .Hex . Haõy nhôù raèng : Phaàn meàm naøy duøng chung cho caû hai maïch naïp AT89C51 vaø At89C2051 , vieäc nhaän daïng seõ ñöôïc noù laøm töï ñoäng hoaøn toaøn . - 44 -
  45. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 PHAÀN 4: CAÙC MAÏCH ÑIEÄN VI XÖÛ LYÙ - LYÙ THUÙ- ÑÔN GIAÛN CHO NGÖÔØI MÔÙI BAÉT ÑAÀU HOÏC LAÄP TRÌNH CUØNG VI XÖÛ LYÙ Vaán ñeà 12 – MAÏCH 1: Haõy Laøm Moät Ñeøn Led Chôùp Vôùi- 8951 Böôùc 1) Böôùc ñaàu tieân laø laøm maïch ñieän . Taïi thôøi ñieåm naøy baïn phaûi laøm quen vôùi vieäc söû duïng caùc linh kieän .( ÔÛ ñaây coù 2 ñieän trôû , 3 caùi tuï , 1 thaïch anh 12Mhz vaø 1 ñeøn Led , taát caû ñeàu coù baùn ôû chôï Nhaät Taûo caû ). Baïn coù theå ñaët caùc linh kieän naøy leân treân moät breakboard roài duøng daây ñieän noái chuùng laïi ( breakboard baøy baùn raát nhieàu ôû chôï Nhaät Taûo baïn haõy mua moät caùi ñeå laøm caùc thí nghieäm !) . Söï thieát keá naøy duøng vôùi con vi ñieàu khieån 89c51 . Ñieàu duy nhaát maø chuùng toâi muoán laøm maïch naøy laø :Laøm cho Led chôùp . Baèng vieäc laøm naøy baïn seõ coù theå ñöôïc hoïc moät chöông trình xöû lyù ñöôïc vieát baèng ngoân ngöõ Assembly vaø sau ñoù baïn seõ bieát caùch naïp file chöông trình vaøo cho con Chip vi ñieàu khieån . - 45 -
  46. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Laàn Ñaàu tieân naøy chuùng toâi saün saøn vieát saün caùc doøng code cho baïn baèng ngoân ngöõ Assembly , file naøy seõ coù teân laø : ledtest.asm , chuùng ta seõ söû duïng noù cho maïch naøy . Maû code nhö sau : ORG 0030H LOOP: CLR P1.0 ;P1.0 SANG CALL DELAY_1S SETB P1.0 ;P1.0 TAT CALL DELAY_1S LJMP LOOP DELAY_1S: MOV R1,#20 LOOP1: MOV R2,#200 LOOP2: MOV R3,#255 LOOP3: DJNZ R3,LOOP3 DJNZ R2,LOOP2 DJNZ R1,LOOP1 RET END Haõy nhôù raèng : Doøng Code naøo baét ñaàu baèng daáu “ ; ” thì ñoù laø doøng chuù thích , do ño chuùng ta coù theå boû qua maø khoâng aûnh höôûng gì ñeán chöông trình caû. Sau khi vieát xong baïn haõy löu laïi vôùi teân laø : ledtest.asm BÖÔÙC 2 : BIEÂN DÒCH CHÖÔNG TRÌNH Haõy MOVE file ledtest.asm naøy ñeán thö muïc – nôi ma baïn ñaõ chöùa phaàn meàm TASM . Tieáp theo baïn haõy thoat khoûi windows –ra moâi tröông DOS baèng caùch töø moâi tröôøng Windows98 , baïn click chuoät vaøo Star menu à choïn muïc Program à roài choïn tieáp MS-DOS prompt , nhö vaäy laø baïn ñaõ ra ngoaøi moâi tröôøng DOS roài ñoù . - 46 -
  47. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Sau ñoù baïn haõy thay ñoåi laïi ñöôøng daãn , cuøng thö muïc ñeå ñeán nôi chuùa file TASM ñeå baét ñaàu bieân dòch baèng caùh söû duïng doøng leänh sau : tasm -51 ledtest.asm ledtest.hex Toâi giaû söû , baïn ñeå file phaàn meàmTASM vaø file ledtest.asm taïi oå ñæa C:\ chaúng haïn , thì khi ñoù baïn seõ goõ ñuùng doøng leän sau ñeå bieân dòch file ledtest.asm : C:\ tasm -51 ledtest.asm ledtest.hex Keát quaû cuûa vieäc laøm naøy baïn seõ taïo ra ñöôïc file : ledtest.hex. Xong , baây giôøi thì baïn haõy ñoùng cöûa soå: DOS prompt ñeå trôû laïi vôùi windows. Böôùc 3 ) Naïp chöông trình vaøo cho con Chip Vi Xöû Lyù Baây giôøi baïn haõy ñem “Maïch Naïp AT89C51” ra, naïp file ledtest.hex vaøo cho con vi xöû lyù . Löu yù : Haõy laøm caån thaän moïi thöù nhö nguoàn cung caáp vaø daây noái coång COM Baïn haõy ñaët con chip Vi Xöû Lyù 89c51 caàn naïp vaøo Socket – Chip Slave Haõy nhô :ù ñaët ñuùng chaân- haõy nhìn kyõ soá 1 treân hình ñaáy nheù, toâi cuõng ñaõ laàn ñaët loän roài ñoù !). - 47 -
  48. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Tieáp ñeán , baïn môû phaàn meàm EZ4.0 , phaàn meàm naøy noù seõ töï nhaän bieát söï hieän dieän “Maïch Naïp AT89c51” , roài sau ñoù baïn haõy ñoåi ñöôøng daãn ñeå chæ ñeán nôi chöùa file lesdtest.hex ñeå naïp vaøo cho 89c51. Taát caû moïi vieäc sau ñoù seõ ñöôïclaøm töï ñoäng . Sau khi naïp xong , baïn haõy thaùo con chip ra , gaén noù vaøo breakboard maø hoài naõy ôû ” Böôùc 1” baïn laép raùp , roài cung caáp ñieän cho maïch ( haõy nhôù laø 5V thoâi nheù !). Xong baïn haõy xem hieän töôïng cuûa ñeøn Led nhö theá naøo nheù ! Vaâng !Raát ñeïp ! Boä nguoàn 5V baïn coù theå laép raùp nhö sau : Nhö baïn thaáy phía goùc phaûi cuûa breakborad laø ngoõ vaøo 9VDC . Ñeán ñaây xem nhö ñaõ xong baøi thöïc haønh ñaàu tieân : Chuùc Caùc Baïn Laøm Ngay Ñöôïc Lieàn Vaø Luoân Vui Veû Vôùi Caùc Maïch Ñieän Sau ! Leâ Duy phi - 48 -
  49. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Vaán ñeà 13 - Maïch 2: BOÄ ÑIEÀU KHIEÅN NHUÙNG ÑÔN GIAÛN Böôùc 1: Böôùc ñaàu tieân laø xaây döïng maïch ñieän ÔÛ ñaây baïn caàn laøm quen vôùi moät soá linh kieän ñieän töû maø chuùng ta seõ duøng ñeán . Baïn coù theå laép ñaët chuùng leân treân moät breadboard roài duùng daây ñieän noái laïi ñeå taïo thaønh maïch ñieän nhö sau nheù. Maïch naøy ñöôïc thieát keá daønh cho con chip 89C2051-(loaïi 20chaân Ña soá caùc boä vi xöû lyù thì khoâng theå naøo ñieàu khieån tröïc tieáp caùc Led ngoaïi tröø hoï ATMEL maø tieâu bieåu laø 89c2051 vaø 89c51 , ñoù laø lyù do maø toâi coù theå thieát keát ñöôïc maïch naøy heát söùc ñôn giaûn nhö baïn coù theå thaáy trong sô ñoà sau : Löu yù : Nguoàn cung caáp cho maïch laø Vcc=5V vaø GND=0 V - 49 -
  50. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Caùc linh kieän caàn duøng cho maïch naøy laø : 1- AT89C2051 1-thaïch anh 11.0592 Mhz 2-tuï 33p 1-tuï 10mF 1- ñieän trôû 8k2 vaø 10 con 330 ohm 10-daây ñieän ñeå noái maïch . Ñaây laø hình aûnh cuûa caùc linh kieân nhö ñaõ noùi ôû treân : Maïch naøy seõ laøm cho 8 Led laàn löôït saùng leân baét ñaàu töø chaân P1.0 ñeán P1.7 vôùi nhieàu kieåu ñeám raát hay vaø raát lyù thuù seõ laøm baïn haøi loøng vaø thích thuù noù . Sau ñaây laø chöông trình cuûa maïch ñieän vieát baèng Assembly: CHÖÔNG TRINH VERSION 1 : SAÙNG DAÀN –TAÉT DAÀN ORG 0030H LOOP: MOV P1,#0FFH CLR P1.7 ;P1.7 SANG CALL DELAY_1S SETB P1.7 ;P1.7 TAT CLR P1.6 CALL DELAY_1S SETB P1.6 CLR P1.5 CALL DELAY_1S SETB P1.5 - 50 -
  51. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 CLR P1.4 CALL DELAY_1S SETB P1.4 CLR P1.3 CALL DELAY_1S SETB P1.3 CLR P1.2 CALL DELAY_1S SETB P1.2 CLR P1.1 CALL DELAY_1S SETB P1.1 CLR P1.0 CALL DELAY_1S SETB P1.0 CLR P1.0 ;nguoc lai CALL DELAY_1S SETB P1.0 CLR P1.1 CALL DELAY_1S SETB P1.1 CLR P1.2 CALL DELAY_1S SETB P1.2 CLR P1.3 CALL DELAY_1S SETB P1.3 CLR P1.4 CALL DELAY_1S SETB P1.4 CLR P1.5 CALL DELAY_1S SETB P1.5 CLR P1.6 CALL DELAY_1S SETB P1.6 CLR P1.7 CALL DELAY_1S SETB P1.7 LJMP LOOP DELAY_1S: MOV R1,#20 LOOP1: MOV R2,#200 LOOP2: MOV R3,#255 LOOP3: DJNZ R3,LOOP3 DJNZ R2,LOOP2 DJNZ R1,LOOP1 RET END - 51 -
  52. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 CHÖÔNG TRÌNH VERSION 2: SAÙNG DAÀN –THAY ÑOÅI KIEÅU ROÀI TAÉT ; ;* ;* LED Blinker ; ; ; RESET ;reset routine ORG 0H ;locate routine at 00H AJMP START ;jump to START ; ; ; INITIALIZE: ;set up control registers ; MOV TCON,#00H MOV TMOD,#00H MOV PSW,#00H MOV IE,#00H ;disable interrupts RET ; ; ; ; Real code starts below. The first two routines are for delays so we ; can slow down the blinking so we can see it. (Without a delay, it ; would blink so fast it would look like it was always on. ; ; ; DELAYMS: ;millisecond delay routine ; ; MOV R7,#00H ;put value of 0 in register R7 LOOPA: INC R7 ;increase R7 by one (R7 = R7 +1) MOV A,R7 ;move value in R7 to Accumlator (also known as A) CJNE A,#0FFH,LOOPA ;compare A to FF hex (256). If ;not equal go to LOOPA RET ;return to the point that this ;routine was called from ; DELAYHS: ;half second delay above ;millisecond delay MOV R6,#00H ;put 0 in register R6 (R6 = 0) LOOPB: INC R6 ;increase R6 by one (R6 = R6 +1) ACALL DELAYMS ;call the routine above. It will run and return to here. MOV A,R6 ;move value in R6 to A JNZ LOOPB ;if A is not 0, go to LOOPB RET - 52 -
  53. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 ; ; START: ;main program (on power up, ; ;program starts at this point) ACALL INITIALIZE ;set up control registers LOOP: INC P1 ;INCrement P1. Adds 1 to the 8 ;bit register for Port 1. ACALL DELAYHS ;go to above routine that ;causes a delay AJMP LOOP ;go to LOOP(jump back to point ;labeled LOOP) END ;end program Haõy nhôù raèng : Doøng Code naøo baét ñaàu baèng daáu “ ; ” thì ñoù laø doøng chuù thích , do ño chuùng ta coù theå boû qua maø khoâng aûnh höôûng gì ñeán chöông trình caû. Sau khi vieát xong baïn haõy löu laïi vôùi teân laø : ledproj .asm BÖÔÙC 2 : BIEÂN DÒCH CHÖÔNG TRÌNH Haõy MOVE file ledproj2.asm naøy ñeán thö muïc – nôi ma baïn ñaõ chöùa phaàn meàm TASM . Tieáp theo baïn haõy thoat khoûi windows –ra moâi tröông DOS baèng caùch töø moâi tröôøng Windows98 , baïn click chuoät vaøo Star menu à choïn muïc Program à roài choïn tieáp MS-DOS prompt , nhö vaäy laø baïn ñaõ ra ngoaøi moâi tröôøng DOS roài ñoù . - 53 -
  54. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Sau ñoù baïn haõy thay ñoåi laïi ñöôøng daãn , cuøng thö muïc ñeå ñeán nôi chuùa file TASM ñeå baét ñaàu bieân dòch baèng caùh söû duïng doøng leänh sau : tasm -51 ledproj2.asm ledproj2.hex Toâi giaû söû , baïn ñeå file phaàn meàmTASM vaø file ledproj2.asm taïi oå ñæa C:\ chaúng haïn , thì khi ñoù baïn seõ goõ ñuùng doøng leän sau ñeå bieân dòch file ledproj2.asm : C:\ tasm -51 ledproj2.asm ledproj2.hex Keát quaû cuûa vieäc laøm naøy baïn seõ taïo ra ñöôïc file : ledproj2.hex. Xong , baây giôøi thì baïn haõy ñoùng cöûa soå: DOS prompt ñeå trôû laïi vôùi windows. Böôùc 3 ) Naïp chöông trình vaøo cho con Chip Vi Xöû Lyù Baây giôøi baïn haõy ñem “Maïch Naïp AT89C2051” ra, naïp file ledtest.hex vaøo cho con vi xöû lyù . Löu yù : Haõy laøm caån thaän moïi thöù nhö nguoàn cung caáp vaø daây noái coång COM Baïn haõy ñaët con chip Vi Xöû Lyù 89c2051 caàn naïp vaøo Socket – Chip Slave Haõy nhôù : ñaët ñuùng chaân- haõy nhìn kyõ soá 1 treân hình ñaáy nheù, toâi cuõng ñaõ laàn ñaët loän roài ñoù !). Tieáp ñeán , baïn môû phaàn meàm EZ4.0 , phaàn meàm naøy noù seõ töï nhaän bieát söï hieän dieän “Maïch Naïp AT89c2051” , roài sau ñoù baïn haõy ñoåi ñöôøng daãn ñeå chæ ñeán nôi chöùa file lesdtest.hex ñeå naïp vaøo cho 89c2051. Taát caû moïi vieäc sau ñoù seõ ñöôïclaøm töï ñoäng . Sau khi naïp xong , baïn haõy thaùo con chip ra , gaén noù vaøo breakboard maø hoài naõy ôû ” Böôùc 1” baïn laép raùp , roài cung caáp ñieän cho maïch ( haõy nhôù laø 5V thoâi nheù !). Xong baïn haõy xem hieän töôïng cuûa ñeøn Led nhö theá naøo nheù ! Vaâng !Raát ñeïp ! - 54 -
  55. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Boä nguoàn 5V baïn coù theå laép raùp nhö sau : Nhö baïn thaáy phía goùc phaûi cuûa breakborad laø ngoõ vaøo 9VDC . Ñeán ñaây xem nhö ñaõ xong baøi thöïc haønh thöù 2. Xin Chuùc Caùc Baïn Thaønh Coâng Khi Laøm Maïch Naøy Vaø Toâi Hy Voïng Noù Seõ Mang Laïi Cho Baïn Nhieàu Nieàm Say Me â Môùi ! Leâ Duy Phi Xin môøi caùc baïn ñoùn ñoïc ví duï naøy trong quyeån thöù 2 saép vieát xong: “ Höôùng Daãn Giao Tieáp Vi Xöû Lyù Vôùi Maùy Tính” trong quyeån naøy toâi seõ giuùp baïn bieát caùh giao tieáp giöõa vi xöû lyù vaø maùy tính thoâng qua phaàn meàm Visual Basic , ñoâng thôøi toâi cuõng coù ñeà caëp nhieàu ví duï maïch ñieän raát lyù thuù nhö “ Maùy ño nhieät ñoä hieån thò treân Led , Maùy ño nhieät ñoä hieån thò treân Maùy Tính , Laøm baûng ñeøn chöõ chaïy ñôn giaûn , Laøm baûng ñeøn chöõ chaïy giao tieáp vôùi Maùy Tính , Maïch ño ñieän aùp giao tieáp maùy tính ( ñaây laø ñeà taøi maø toâi ñaõ ñaït giaûi 3 trong ” cuoäc thi sinh vieân saùng taïo laàn 1” , vaø nhöõng maïch ñieän vi xöû lyù khaùc toâi seõ giôùi thieäu sau , xin caùc baïn ñoùn ñoïc ! Caùc taøi lieäu lieân quan cuûa toâi xin caùc baïn haõy ñeán phoøng Photo B1- ñh.Baùch Khoa. - 55 -
  56. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Vaán ñeà 14 - MAÏCH 3: LAØM COØI HUÏ VÔÙI HAI MÖÙC AÂM ÑIEÄU KHAÙC NHAU Haõy löu yù : Raèng , moïi thao taùc toâi ñaõ höôùng daãn kyõ ôû caùc ví duï treân –ôû ñaây toâi chæ giôùi thieäu coâ ñoïng caùc vaán ñeà maø chuû yeáu laø sô ñoà vaø giaûi thuaät cho caùc baïn maø thoâi ! I-SÔ ÑOÀ MAÏCH: Löu yù : Loa maéc noái tieáp vôùi ñieän trôû 500 ohm baïn coù theå mua loaïi loa Buze maøu ñen –troøn ôû chôï Nhaät Taûo - 56 -
  57. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 II- CHÖÔNG TRÌNH CHO MAÏCH ÑIEÄN : ; ;* ;* Speaker Sounds - Weird * ;* ; ; ; VARIABLES AND CONSTANTS ; ; ; ; ; RESET ;reset routine ORG 0H ;locate routine at 00H AJMP START ;jump to START ; ; ; INITIALIZE: ;set up control registers ; MOV TCON,#00H MOV TMOD,#00H MOV PSW,#00H MOV IE,#00H ;disable interrupts RET ; ; ; Real code starts below. The first two routines are for delays. ; ; DELAYMS: ;millisecond delay routine ; ; MOV R7,#00H ;put value of 0 in register R7 LOOPA: INC R7 ;increase R7 by one (R7 = R7 +1) MOV A,R7 ;move value in R7 to Accumlator (also known ;as A) CJNE A,#0FFH,LOOPA ;compare A to FF hex (256). If not equal go ;to LOOPA RET ;return to the point that this routine was ;called from ; ; ; DELAYHS: ;half second delay above millisecond delay ; ; MOV R6,#080H ;put 0 in register R6 (R6 = 0) MOV R5,#002H ;put 2 in register R5 (R5 = 2) LOOPB: INC R6 ;increase R6 by one (R6 = R6 +1) ACALL DELAYMS ;call the routine above. It will run and ;return to here. MOV A,R6 ;move value in R6 to A JNZ LOOPB ;if A is not 0, go to LOOPB DEC R5 ;decrease R5 by one. (R5 = R5 -1) MOV A,R5 ;move value in R5 to A JNZ LOOPB ;if A is not 0 then go to LOOPB. RET ; ; - 57 -
  58. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 ; TONE_ONE: ; MOV R4, #00H MOV R3,#002H ;put 2 in register R3 LOOPC: INC R4 ;increase R4 by one ACALL DELAY ;Delay ACALL DELAYMS DEC R2 ; This time decrement R2 to make tone go ;down in frequency CPL P1.0 MOV A,R4 ;move value in R4 to A JNZ LOOPC ;if A is not 0, go to LOOPC DEC R3 ;decrease R3 by one. MOV A,R3 ;move value in R3 to A JNZ LOOPC ;if A is not 0 then go to LOOPC. RET ; ; ; TONE_TWO: ; MOV R4, #00H MOV R3,#002H ;put 2 in register R3 LOOPD: INC R4 ;increase R4 by one ACALL DELAY ;Delay ACALL DELAYMS INC R2 ; INCrement R2 to make frequency go up CPL P1.0 MOV A,R4 ;move value in R4 to A JNZ LOOPD ;if A is not 0, go to LOOPC DEC R3 ;decrease R3 by one. MOV A,R3 ;move value in R3 to A JNZ LOOPD ;if A is not 0 then go to LOOPC. RET ; ; ; DELAY: ; MOV A, R2 MOV R7,A ;put value of R2 in register R7 LOOPE: INC R7 ;increase R7 by one (R7 = R7 +1) MOV A,R7 ;move value in R7 to Accumlator (also known ;as A) CJNE A,#0FFH,LOOPE ;compare A to FF hex (256). If not equal go ;to LOOPA RET ;return to the point that this routine was ;called from ; ; START: ;main program (on power up, program starts ;at this point) ACALL INITIALIZE ;set up control registers LOOP: ACALL TONE_ONE ACALL TONE_TWO AJMP LOOP ;go to LOOP(always jump back to point ;labeled LOOP) END ;end program - 58 -
  59. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Vaán ñeà 15 - MAÏCH 4: HAÕY LAØM : ÑOÀNG HOÀ BAÙO GIÔØ ÑIEÄN TÖÛÛ I-GIÔÙI THIEÄU: Hieän nay coù raát nhieàu döï aùn öùng duïng Led 7 ñoaïn vaø ñang trôû neân khaù phoå bieán , do ñoù toâi xin giôùi thieäu moät trong nhöõng öùng duïng Led 7 ñoaïn cho baïn tham khaûo maø baûn thaân toâi cuõng ñaõ töøng laøm , noù raát deã laøm neáu caùc baïn khoâng ngaïi khoù khaên .Sau khi raùp xong vaø kieåm tra kyõ laø noù seõ chaïy ñöôïc ngay . II- SÔ ÑOÀ MAÏCH NHÖ SAU: Hình naøy mieâu taû sô ñoà maïch ñieän cuûa moät ñoàng hoà baùo giôø . ÔÛ ñaây Port1 (töø P1.0àP1.7) seõ ñieàu khieån caùc cöïc döông cuûa Led 7 ñoaïn . Coøn caùc chaân P3.0àP3.3 seõ ñieàu khieån caùc cöïc aâm chung cuûa Led 7 ñoaïn . Haõy löu yù raèng: Caû 4 Led treân ñeàu laø loaïi aâm chung ( hay goïi laø Catod chung). Do ñoù khi ñi mua , baïn nhôù noùi roõ laø caàn mua “ Led Catod chung” theá môùi laø daân chuyeân nghieäp . ( Ñoâi khi baïn noùi Led aâm chung seõ coù ngöôøi khoâng nhôù laø Led loaïi gì ñaâu ñaáy nheù , haõy nhôù vôùi Led ngöôøi ta hay goïi laø “Led Catod chung” hay ” Anod chung” , maëc duø hai caùch goïi catod vaø aâm cöïc laø nhö nhau!) . III- TOÙM TAÉT SÖÏ HOAÏT ÑOÂNG CUÛA MAÏCH: Baïn thaáy treân caùc chaân P3.0 tôùi P3.3 coù hai ñöôøng noái vaøo ñoù : Moät ñöôøng noái ñeán transistor vaø moät ñöông noái ñeán khoaù nhaán (switch ) vôùi chaân P3.4 . Ñieàu ñoù coù nghóa laø - 59 -
  60. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 trong quaù trình hieån thò thì ñoàng thôøi vi xöû lyù noù cuõng kieåm tra xem coù khoaù naøo ñöôïc nhaán hay khoâng . Neáu coù thì chaân P3.4 seõ xuoáng möùc “thaáp” .Luùc ñoù vi xöû lyù seõ xöû lyù theo chöùc cuûa phím maø chuùng ta ñaõ nhaán . Trong 4 khoaù ñoù coù 2 khoaù ñieàu chænh giôø vaø ñieàu chænh phuùt, moät khoaù duøng ñeå taét môû ñeøn maø noù ñöôïc ñieàu khieån bôûi chaân P3.7 thoâng qua caùi rôø le-vaø ñieåm L vaø N baïn noái vaøo nguoàn ñieän xoay chieàu 220 V, dó nhieân boùng ñeøn cuõng laø loaïi 220 V. IV - SAU ÑAÂY LAØ CHÖÔNG TRÌNH ÑÖÔÏCVIEÁT BAÈNG NGOÂN NGÖÕ C /* CLOCK V1.0 89C2051 + 4-digit 7-SEG led + 4-key switch Simple Digital Clock demostrates scanning LED and key switch. The clock has 1-bit output port P3.7 for driving AC load through MOC3040+triac. The source program was compiled by Micro-C with optimize option. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * set set time manual HOUR MIN ON/OFF ON/OFF Copyright (c) 1999 W.SIRICHOTE */ #include c:\mc51\8051io.h #include c:\mc51\8051reg.h extern register char cputick; unsigned register char sec100,sec,sec5,min,hour,flag1,command,ACC,temp,opto; /* above must be defined as register for tiny model */ unsigned register char i,digit,buffer[4],onHour1,onMin1,offHour1,offMin1; register char key,delay,count1; char convert[10] = {0x3F,0x0c,0x76,0x5e,0x4d,0x5b,0x7b,0x0e,0x7f,0x5f}; main() { opto = 0xff; cputick = 0; hour = 18; min = 0; sec = 0; key = -1; flag1 = 0; onHour1 = 18; /* 18:30 turn lamp on */ onMin1 = 01; offHour1 = 18; /* 21:30 turn off */ offMin1 = 02; count1 = 0; buffer[0] = 0x40; buffer[1] = 0x40; buffer[2] = 0x40; buffer[3] = 0x40; - 60 -
  61. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 serinit(9600); /* must be invoked for tiny model */ while(1) { while ( cputick = 100) /* 100 * 10 ms = 1 s */ {sec100 = 0; flag1 |= 0x05; /* set bit 0, bit 2 */ temp = 50; sec++; if (sec >= 60) {sec = 0; flag1 |= 0x02; /* set bit 1 */ min++; if (min >= 60) {min = 0; hour++; if (hour >= 24) {hour = 0; } } } } } scanLED() /* scan 4-digit LED and 4-key switch, if key pressed key = 0-3 else key = -1 */ { int i; digit = 0x08; key = -1; for( i = 0; i < 4; i++) /* 4-DIGIT scanning */ { P3 = ~digit & opto; /* send complement[digit] */ P1 = ~buffer[i]; /* send complement[segment] */ pause(1); /* delay a while */ P1 = 0xff; /* off LED */ if ((P3 & 0x10) == 0) /* if key pressed P3.4 became low */ key = i; /* save key position to key variable */ - 61 -
  62. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 digit>>=1; /* next digit */ } } timeToBuffer() { buffer[0] = convert[min%10]; buffer[1] = convert[min/10]; buffer[2] = convert[hour%10]; buffer[3] = convert[hour/10]; } blink() { if((flag1 & 0x04) != 0) /* check bit 2 if set decrement temp until zero */ {temp ; if (temp != 0) { buffer[1] |= 0x80; buffer[2] |= 0x80; } else( flag1 &= ~0x04); } } keyexe() { if (key != -1) { if ((flag1 & 0x80) == 0) /* within 0.5 sec after 1st press the following execution is not allowed */ { flag1 |= 0x80; delay = 50; switch(key){ case (0): /* key position 0 */ manualOnOff(); /* service key 0 */ break; case (1): /* key position 1 */ savetimeOnOff1(); /* service key 1 */ break; case (2): /* key position 2 */ setmin(); /* service key 2 */ break; case (3): /* key position 3 */ sethour(); } } } } sethour() { hour++; if ( hour== 24) hour = 0; - 62 -
  63. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 } setmin() { min++; sec = 0; if( min == 60 ) min = 0; } savetimeOnOff1() { count1++; if (count1 == 1) { onHour1 = hour; onMin1 = min; buffer[0] = 0x00; buffer[1] = 0x68; buffer[2] = 0x78; buffer[3] = 0x71; showOnce(); } else { count1 = 0; savetimeOff1(); } } savetimeOff1() { offHour1 = hour; offMin1 = min; buffer[0] = 0x63; buffer[1] = 0x63; buffer[2] = 0x78; buffer[3] = 0x71; showOnce(); } manualOnOff() { opto= ~opto | 0x7f; /* complement bit 7 which in turn activates P3.7 */ if ((opto & 0x80) == 0) { buffer[0] = 0; buffer[1] = 0; buffer[2] = 0x68; buffer[3] = 0x78; showOnce(); } else { buffer[0] = 0; buffer[1] = 0x63; buffer[2] = 0x63; buffer[3] = 0x78; showOnce(); } } showOnce() - 63 -
  64. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 { int i; for(i=0;i<500;i++) scanLED(); } keydelay() { if ((flag1 & 0x80) !=0) { delay ; if(delay == 0) flag1 &= ~0x80; } } comparetime() { if((flag1 & 0x01) != 0 ) { flag1 &= ~0x01; if(hour == onHour1 && min == onMin1) opto = 0x7f; /* clear P3.7 turning opto on */ if(hour == offHour1 && min == offMin1) opto = 0xff; /* set bit P3.7 turning opto off */ } } offmsd() { if (buffer[3] == 0x3f) /* if msd = '0' then put blank unstead */ buffer[3] = 0x00; } pause(j) int j; { int i; for (i = 0; i < j; i++) ; } V- MAÕ FILE HEX CUÛA NOÙ -SAU KHI ÑAÕ ÑÖÔÏC BIEÂN DÒCH Neáu caùc baïn raõnh roãi thì haõy goõ y nguyeân maõ HEX naøy trong NotePad roài löu laïi vôùi ñuoâi laø .HEX ñeå naïp cho 89c2051 hoaëc baïn coù theå tôùi phoøng Photo B1 tröôøng ñh.Baùch Khoa ñeå laáy file naøy veà naïp chaïy thöû ( toâi coù cheùp saün trong ñæa meàm 1,44Mb). :0300000002000EED :0300030002019F58 :20000B0002019675811FD2AFD2A91201A280FE12001B80FBC82581C822C92 581C97A002224 :20002B00D083D082CF2581F581CFC082C08322CF2581F581CF22FBE493CB2 2FCE493FB7492 :20004B000193CC22FAE493F9740193CA2229F9E5F03AFA227C00CB30E7011 CCB2275F0009B :20006B0030E70215F022FDE493FF7401934F7004A3A3800C740293B505107 40393B5F00A99 :20008B00E493C0E0740193C0E022A3A3A3A380D7FEEBA4FD8EF0ECA4FCEB8 EF0A4C5F02C0F :2000AB002DC5F02211B58EF0ED22C002C001AAF0F97E007D007F11C3E933F 9EA33FADF0867 - 64 -
  65. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 :2000CB00F5F0E9D001D00222ED33FDEE33FEC3ED9BF5F0EE9C40E0ADF0FED 380DBBB0001E7 :2000EB0022C333C5F033C5F0DBF722BB000122C3C5F013C5F013DBF722240 280022401C595 :20010B00F03400C5F022C394028003C39401C5F09400C5F0223116F4C5F0F 4C5F02245F095 :20012B007022042231784024801A3178401E7014801A3178400E7014800A3 178500E8004A0 :20014B00318C6008E4F5F022318C60F8E4F5F00422318C40F780ED318C40F 170E780ED313C :20016B008C40E170E780DD318C50E180D7C39BC5F09C20E70720D207C345F 02220D2F9D340 :20018B0022C5F0C39C7003E5F09B22758CDC758A0005083205083274FFF51 2E4F5087412DE :2001AB00F50DE4F50CE4F50A74FFF51DE4F50E7412F5197401F51A7412F51 B7402F51CE4E5 :2001CB00F51FE4F5F079157A001200587440F7740175F00079157A0012005 87440F77402AD :2001EB0075F00079157A001200587440F7740375F00079157A00120058744 0F7748075F020 :20020B0025C0E0C0F012079E15811581740175F00045F07003020256E5081 200687B0112AA :20022B00005F12012F700302023B1202C8020223E4F50812025712036F120 42612072A12FC :20024B0004781206961206C602021722E5090509E50975F0007B647C00120 17270030202A8 :20026B00C7E4F509E50E4405F50E7432F511E50A050AE50A75F0007B3C7C0 0120172700362 :20028B000202C7E4F50AE50E4402F50EE50C050CE50C75F0007B3C7C00120 17270030202E2 :2002AB00C7E4F50CE50D050DE50D75F0007B187C0012017270030202C7E4F 50D22058105C7 :2002CB00817408F51474FFF51DE4F5F078FD12001FF608A6F078FD12001FE 60886F07B04FC :2002EB007C0012012F701902036A78FD12001FE60886F012010818F608A6F 012011680D5EE :20030B00E514F45512F5B078FD12001FE60886F079157A00120058E7F4F59 0740175F00023 :20032B00C0E0C0F01207551581158174FFF590E5B054101200687B0012005 F12014B7003A0 :20034B0002035978FD12001FE60886F0F51DE51475F0007B017C001200F6F 5140202F515A3 :20036B0081158122E4F5F079157A00120058E50C75F0007B0A7C001200AFC 001C00279C129 :20038B007A0712005889828A83E493D007D000F6740175F00079157A00120 058E50C75F099 :2003AB00007B0A7C001200B5C001C00279C17A0712005889828A83E493D00 7D000F6740220 :2003CB0075F00079157A00120058E50D75F0007B0A7C001200AFC001C0027 9C17A071200D2 :2003EB005889828A83E493D007D000F6740375F00079157A00120058E50D7 5F0007B0A7CC8 - 65 -
  66. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 :20040B00001200B5C001C00279C17A0712005889828A83E493D007D000F62 2E50E54047554 :20042B00F0007B007C001201537003020477E5111511E51175F0007B007C0 012015370032D :20044B00020471740175F00079157A00120058E74480F7740275F00079157 A00120058E7F8 :20046B004480F7020477E50E54FBF50E22E51D1200687BFF12005F1201537 0030204DEE5C9 :20048B000E548075F0007B007C0012014B70030204DEE50E4480F50E7432F 51EE51D1200D7 :2004AB00689004CA0200711205BD0204DE1205140204DE1204F80204DE120 4DF0204DEC4A2 :2004CB00040300BE040200B8040100B20400000000DE0422E50D050DE50D7 5F0007B187C65 :2004EB000012014B70030204F7E4F50D22E50C050CE4F50AE50C75F0007B3 C7C0012014B4F :20050B007003020513E4F50C22E51F051FE51F1200687B0112005F12014B7 003020571E57B :20052B000DF519E50CF51AE4F5F079157A00120058E4F7740175F00079157 A0012005874BF :20054B0068F7740275F00079157A001200587478F7740375F00079157A001 200587471F7D7 :20056B00120650020577E4F51F12057822E50DF51BE50CF51CE4F5F079157 A00120058742E :20058B0063F7740175F00079157A001200587463F7740275F00079157A001 200587478F7AC :2005AB00740375F00079157A001200587471F7020650E512F4447FF512548 075F0007B0045 :2005CB007C0012014B7003020613E4F5F079157A00120058E4F7740175F00 079157A00129E :2005EB000058E4F7740275F00079157A001200587468F7740375F00079157 A0012005874DB :20060B0078F712065002064FE4F5F079157A00120058E4F7740175F000791 57A001200583F :20062B007463F7740275F00079157A001200587463F7740375F00079157A0 012005874788C :20064B00F71206502205810581E4F5F078FD12001FF608A6F078FD12001FE 60886F07BF486 :20066B007C0112012F701902069178FD12001FE60886F012010818F608A6F 012011680D53F :20068B001202C80206751581158122E50E548075F0007B007C00120153700 30206C5E51EDC :2006AB00151EE51E1200687B0012005F12014B70030206C5E50E547FF50E2 2E50E5401754D :2006CB00F0007B007C001201537003020729E50E54FEF50EE50D75F000AB1 97C0012014BE0 :2006EB00600CE50C75F000AB1A7C0012014B45F07003020704747FF512E50 D75F000AB1BC2 :20070B007C0012014B600CE50C75F000AB1C7C0012014B45F070030207297 4FFF5122274A7 :20072B000375F00079157A00120058E775F0007B3F7C0012014B700302075 4740375F00048 - 66 -
  67. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 :20074B0079157A00120058E4F72205810581E4F5F078FD12001FF608A6F07 8FD12001FE684 :20076B000886F078F912001F860308860412012F701902079978FD12001FE 60886F01201A9 :20078B000818F608A6F012011680CF020780158115812278FB12001F86030 8860474807523 :2007AB00F0701200B5120120758921F58DF58B758859759852223F0C765E4 D5B7B0E7F5FAE :00000001FF V-HÌNH AÛNH CUÛA ÑOÀNG HOÀ BAÙO GIÔØ ÑAÕ ÑÖÔÏC RUÙT GOÏN ÔÛ ñaây toâi chæ duøng hai khoaù : Chænh giôø vaø chænh phuùt thoâi. Vaø toâi cuõng boû luoân phaàn ñieàu khieån boùng ñeøn –rôø le, vaø moät vaøi thöù khoâng caàn thieát khaùc . Raát ñôn giaûn quaù phaûi khoâng baïn !? Vaâng ! ñoàng hoà -giôø raát deã laøm thoâi! - 67 -
  68. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 Sau ñaây laø moä loaïi ñoàng hoà baùo giôø khaùc , noù coù theå chaïy töø phaûi sang traùi keøm theo moät doøng chöõ raát xinh xaén chaúng haïn nhö baây”BAY GIO LAø 1:23 “. Xin môøi caùc baïn ñoùn ñoïc ví duï naøy trong quyeån thöù 2 saép vieát xong: “ Höôùng Daãn Giao Tieáp Vi Xöû Lyù Vôùi Maùy Tính” trong quyeån naøy toâi seõ giuùp baïn bieát caùh giao tieáp giöõa vi xöû lyù vaø maùy tính thoâng qua phaàn meàm Visual Basic , ñoâng thôøi toâi cuõng coù ñeà caëp nhieàu ví duï maïch ñieän raát lyù thuù nhö “ Maùy ño nhieät ñoä hieån thò treân Led , Maùy ño nhieät ñoä hieån thò treân Maùy Tính , Laøm baûng ñeøn chöõ chaïy ñôn giaûn , Laøm baûng ñeøn chöõ chaïy giao tieáp vôùi Maùy Tính , Maïch ño ñieän aùp giao tieáp maùy tính ( ñaây laø ñeà taøi maø toâi ñaõ ñaït giaûi 3 trong ” cuoäc thi sinh vieân saùng taïo laàn 1” , vaø nhöõng maïch ñieän vi xöû lyù khaùc toâi seõ giôùi thieäu sau , xin caùc baïn ñoùn ñoïc ! Caùc taøi lieäu lieân quan cuûa toâi xin caùc baïn haõy ñeán phoøng Photo B1- ñh.Baùch Khoa. VAÁN ÑEÀ 16 : - 68 -
  69. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 LAØM ÑOÀNG HOÀ BAÙO GIÔØI ÑIEÄN TÖÛ- Laäp trình baèng ASM * Sô ñoà maïch caùc baïn coù theå vaøo website sau ñeå download : www.microduyphi.com ORG 0000H SJMP MAIN ; NGAT DO TIMER ORG 03H LJMP NGAT_PHUT ; NGAT PHUT ORG 0BH LJMP NGAT_TIMER0 ; NGAT GIO ORG 13H LJMP NGAT_GIO ; VAO PRO MAIN MAIN: MOV SP,#30H ; NHAP DIA CHI BAT DAU CHUONG TRINH ;KHOI DONG SAU KHI BAT NGUON "TURN ON POWER" MOV 12H,#00H MOV 13H,#00H MOV 14H,#00H MOV 15H,#00H MOV 16H,#00H MOV 17H,#00H MOV IE,#10000111B ;KHOI TAO NGAT CHO PHEP INT0_INT1_TO MOV TMOD,#01H MOV TL0,#LOW(-9216) ;XTAL11.0592 =>Tclk = 12/11.0592 = 1,08507uS MOV TH0,#HIGH(-9216) ; 9216x(100lan)x[Thoigianmay(12/11.0592)]=1s OK!chinh xac 99.99% SETB TR0 SETB IT0 SETB IT1 LAP: CALL HIEN_THI CALL KIEM_TRA1S SJMP LAP ; HIEN_THI: ; HIEN THI DATA LEN CAC LED MOV DPTR,#BANG_MA_LED MOV P0,#11111110B MOV A,17H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh; Chong nhieu MOV P0,#11111101B MOV A,16H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh ; Chong Nhieu MOV P0,#11111011B - 69 -
  70. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 MOV A,15H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh ;Chong Nhieu MOV P0,#11110111B MOV A,14H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh ;Chong Nhieu MOV P0,#11101111B MOV A,13H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh ;Chong Nhieu MOV P0,#11011111B MOV A,12H ;KIEM TRA -DE TAT MO LED CH CJNE A,#0,MOLED_CH ; Neu CH khac 0 thi Nhay den MOLED_CH ; Neu CH la 0 thi tat led CH MOV P2,#0ffh ; Xoa Led CH khi no la so:"0" LCALL DELAY1 MOV P2,#0ffh ;Chong Nhieu LJMP THOAT_HIENTHI ; MOLED_CH MOLED_CH: MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 MOV P2,#0FFH ;Chong Nhieu THOAT_HIENTHI: RET ; KIEM_TRA1S: ; KIEM TRA XEM DU 1s CHUA ? CJNE R2,#100,KET_THUC MOV R2,#00H INC 17H MOV A,17H CJNE A,#10,KET_THUC MOV 17H,#00 INC 16H MOV A,16H CJNE A,#6,KET_THUC MOV 16H,#00 INC 15H MOV A,15H CJNE A,#10,KET_THUC MOV 15H,#00 INC 14H MOV A,14H - 70 -
  71. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 CJNE A,#6,KET_THUC MOV 14H,#00 INC 13H MOV A,13H CJNE A,#03,TANG_DVH_LEN_10 ; NEU LA 3 THI KTRA TIEP MOV A,12H CJNE A,#01,KET_THUC ; DUNG DVH LA 3 VA CH KHONG LA 1 THI NHAY TOI CP DE CP=0 MOV 12H,#00H MOV 13H,#01H LJMP KET_THUC ; TANG DVH LEN 10 KHI NO KHONG PHAI LA S0 3 TANG_DVH_LEN_10: CJNE A,#10,KET_THUC MOV 13H,#00 INC 12H KET_THUC: RET ; ; DELAY DELAY1: MOV R7,#10H DJNZ R7,$ RET ; ;CHUONG TRINH CON NGAT TIMER0 NGAT_TIMER0: INC R2 ;tre 1us MOV TL0,#LOW(-9216) ;XTAL11.0592 =>Tclk = 12/11.0592 = 1,08507uS MOV TH0,#HIGH(-9216) ; 9216x(100lan)x[Thoigianmay(12/11.0592)]=1s OK!chinh xac 99.99% SETB TR0 RETI ; ;CHUONG TRINH CON NGAT INTO NGAT_PHUT: MOV IE,#80H INC 15H MOV A,15H CJNE A,#10,THOAT1 MOV 15H,#0H INC 14H MOV A,14H CJNE A,#6,THOAT1 MOV 14H,#0H THOAT1: MOV IE,#87H RETI ;CHUONG TRINH CON NGAT INT1 NGAT_GIO: MOV IE,#80H - 71 -
  72. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 INC 13H MOV A,13H CJNE A,#03,NGAT_11 MOV A,12H CJNE A,#1,THOAT2 MOV 12H,#0H MOV 13H,#1 LJMP THOAT2 NGAT_11: CJNE A,#10,THOAT2 MOV 13H,#0 MOV 12H,#1 SJMP THOAT2 THOAT2: MOV IE,#87H RETI ; BANG_MA_LED: DB 10000000B;0 DB 11001111B DB 00100100B DB 00000110B DB 00001011B DB 00010010B DB 00010000B DB 11000111B DB 00000000B DB 00000010B;9 END - 72 -
  73. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 VAÁN ÑEÀ 17: GIAO TIEÁP 89C51 VÔÙI MA TRAÄN PHÍM 4X4 VAØ HIEÅN THÒ TREÂN LED 7 SEG * Sô ñoà maïch caùc baïn coù theå vaøo website sau ñeå download : www.microduyphi.com ORG 00H MOV TMOD,#11H MAIN: CALL HIENTHI CALL TESTPHIM CALL DKHIEN LJMP MAIN ; HIENTHI: MOV DPTR,#BANGMALED MOV A,50H MOVC A,@A+DPTR MOV P2,A MOV P3,#11111110B RET ; TESTPHIM: KT_4PHIM_COT1: MOV A,#0FFH MOV P1,A CLR P1.4 MOV A,P1 ANL A,#0FH CJNE A,#0FH,CO_PHIM_NHAN ; VAN CHUA CO PHIM NHAN KT_4PHIM_COT2: MOV A,#0FFH MOV P1,A CLR P1.5 MOV A,P1 ANL A,#0FH CJNE A,#0FH,CO_PHIM_NHAN ; VAN CHUA CO PHIM NHAN KT_4PHIM_COT3: MOV A,#0FFH MOV P1,A CLR P1.6 MOV A,P1 ANL A,#0FH CJNE A,#0FH,CO_PHIM_NHAN ; VAN CHUA CO PHIM NHAN KT_4PHIM_COT4: MOV A,#0FFH MOV P1,A CLR P1.7 MOV A,P1 ANL A,#0FH CJNE A,#0FH,CO_PHIM_NHAN LJMP KET_THUC ; CO PHIM NHAN CO_PHIM_NHAN: - 73 -
  74. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 MOV A,P1 ; ;* KIEM TRA 4 PHIM COT 1 * ; P0_C1: CJNE A,#11101110B,P1_C1 MOV A,#0 MOV 50H,A LJMP KET_THUC ; P1_C1: CJNE A,#11101101B,P2_C1 MOV A,#1 MOV 50H,A LJMP KET_THUC ; P2_C1: CJNE A,#11101011B,P3_C1 MOV A,#2 MOV 50H,A LJMP KET_THUC ; P3_C1: CJNE A,#11100111B,P0_C2 MOV A,#3 MOV 50H,A LJMP KET_THUC ; ;* KIEM TRA 4 PHIM COT 2 * ; P0_C2: CJNE A,#11011110B,P1_C2 MOV A,#4 MOV 50H,A LJMP KET_THUC ; P1_C2: CJNE A,#11011101B,P2_C2 MOV A,#5 MOV 50H,A LJMP KET_THUC ; P2_C2: CJNE A,#11011011B,P3_C2 MOV A,#6 MOV 50H,A LJMP KET_THUC ; P3_C2: CJNE A,#11010111B,P0_C3 MOV A,#7 MOV 50H,A LJMP KET_THUC ; ;* KIEM TRA 4 PHIM COT 3 * ; P0_C3: CJNE A,#10111110B,P1_C3 MOV A,#8 MOV 50H,A LJMP KET_THUC - 74 -
  75. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 ; P1_C3: CJNE A,#10111101B,P2_C3 MOV A,#9 MOV 50H,A LJMP KET_THUC ; P2_C3: CJNE A,#10111011B,P3_C3 MOV A,#10 MOV 50H,A LJMP KET_THUC ; P3_C3: CJNE A,#10110111B,P0_C4 MOV A,#11 MOV 50H,A LJMP KET_THUC ; ;* KIEM TRA 4 PHIM COT 1 * ; P0_C4: CJNE A,#01111110B,P1_C4 MOV A,#12 MOV 50H,A LJMP KET_THUC ; P1_C4: CJNE A,#01111101B,P2_C4 MOV A,#13 MOV 50H,A LJMP KET_THUC ; P2_C4: CJNE A,#01111011B,P3_C4 MOV A,#14 MOV 50H,A LJMP KET_THUC ; P3_C4: CJNE A,#01110111B,KET_THUC MOV A,#15 MOV 50H,A LJMP KET_THUC KET_THUC: RET ; DKHIEN: MOV A,50H CJNE A,#0,THOAT ACALL XUAT1 CJNE A,#1,THOAT ACALL XUAT2 THOAT:RET XUAT1: MOV A,#11111110B MOV P1,A - 75 -
  76. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 RL A RET XUAT2: MOV A,#01111111B MOV P1,A RR A RET DELAY: MOV TH0,#HIGH(-50000) MOV TL0,#LOW(-50000) SETB TR0 JNB TF0,$ CLR TR0 CLR TF0 RET BANGMALED: DB 11000000B ;SO 0 DB 11001111B ;SO 1 DB 01100100B ;SO 2 DB 01000110B ;SO 3 DB 01001011B ;SO 4 DB 01010010B ;SO 5 DB 01010000B ;SO 6 DB 11000111B ;SO 7 DB 01000000B ;SO 8 DB 01000010B ;SO 9 DB 01000001B ;CHU A DB 01011000B ;CHU B DB 11110000B ;CHU C DB 01001100B ;CHU D DB 00110000B ;CHU E DB 00110001B ;CHU F END - 76 -
  77. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 VAÁN ÑEÀ 18: GIAO TIEÁP ADC0809 LAØM BOÄ ÑO ÑIEÄN AÙP: 0 à 5V · Sô ñoà maïch caùc baïn coù theå vaøo website sau ñeå download : www.microduyphi.com ;P1+P2 XUAT LED 7 DOAN ;P0 CHON NGO VAO VA DIEU KHIEN QUA TRINH BIEN DOI ADC ;P3 NHAN DATA ORG 00H MOV TMOD,#01H MAIN: ACALL CONGVAO BATDAU: ACALL START ACALL LAYDATA ACALL HIENTHI LJMP BATDAU ; CONGVAO: CLR P0.0 CLR P0.1 CLR P0.2 RET ;=== ;QUA TRINH BIEN DOI BAT DAU KHI CO CANH XUONG O TREN CHAN START START: SETB P0.4 NOP NOP NOP CLR P0.4 ;DOI 100US DE QUA TRINH BIEN DOI XONG CALL DELAY120US RET ;=== LAYDATA: MOV A,P3 RET ;=== HIENTHI: MOV B,#51 DIV AB ;MAXIMUM A=5 ;LUU HANG TRAM MOV R2,A MOV A,B ;CHIA TIEP MOV B,#10 DIV AB ;LUU CHUC MOV R3,A ;LUU TRAM MOV R4,B ;A=SE GIU GIA TRI HANG TRAM ;B SE GIU GIA TRI HANG CHUC - 77 -
  78. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 ;R2=GIU GIA TRI HANG DON VI ;=== XUAT_TRAM: MOV DPTR,#BANG MOV A,R2 MOVC A,@A+DPTR ;DAU CHAM ANL A,#10111111B MOV P2,A MOV P1,#01111111B CALL DELAY ; XUAT_CHUC: MOV DPTR,#BANG MOV A,R3 MOVC A,@A+DPTR MOV P2,A MOV P1,#10111111B CALL DELAY XUAT_DONVI: MOV DPTR,#BANG MOV A,R4 MOVC A,@A+DPTR MOV P2,A MOV P1,#11011111B CALL DELAY RET ; DELAY120US: MOV TH0,#HIGH(-120) MOV TL0,#LOW(-120) SETB TR0 JNB TF0,$ CLR TR0 CLR TF0 RET ; DELAY: MOV TH0,#HIGH(-5000) MOV TL0,#LOW(-5000) SETB TR0 JNB TF0,$ CLR TR0 CLR TF0 RET ; BANG: DB 11000000B ;SOÁ 0 DB 11001111B ;SOÁ 1 DB 01100100B ;SOÁ 2 DB 01000110B ;SOÁ 3 DB 01001011B ;SOÁ 4 DB 01010010B ;SOÁ 5 DB 01010000B ;SOÁ 6 DB 11000111B ;SOÁ 7 DB 01000000B ;SOÁ 8 DB 01000010B ;SOÁ 9 END - 78 -
  79. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 VAÁN ÑEÀ 19: ÖÙNG DUÏNG 89C51 LAØM MAÏCH BAÙO GIÔØ VAØ NHIEÄT ÑOÄ (DUØNG CAÛM BIEÁN LM35+ ADC0809) * Sô ñoà maïch caùc baïn coù theå vaøo website sau ñeå download : www.microduyphi.com ; ; DESIGN & PROGRAM BY : LE DUY PHI ; ; THIS IS A PROJECT WHICH I DESIGN FOR MY FREIND"DIEN DAN SINH VIEN" ; ; COMPLETED :15-01-2005 ; ; ;CHU Y: O DAY MINH DUNG SENSOR LM35 ; 89C51 + ADC0809 + LED 7SEG - ANOD COMM ; ; PLEASE DO NOT QUESTION ME ABOUT WHAT YOU HAVE SEEN HERE ; EVERYTHING IS VERY VISIBLE ,SO YOU TRY TO READ IT IF YOU DO'NOT UNDERSTAND ; ;R0 : DEM 10S HTHI GIO- 3 S HIEN THI TEMPRATURE ;R1 ;R2 : BIEN DEM 0 100 1S ;R3 ;R4 ;R5 : BIEN CAP NHAT TEM VALUE AFTER 100 TIMES ;R6 ;R7 : DELAY ; ;12H 13H 14H 15H 16H 17H ;CH DCH CP DVP CG DVG ; ;20H 21H 22H 23H 24H ; HUNDER 2 7 * C ; ; CO CHO BIET BAO GIO HOAC NHIET DO ;FL_HOR_TEM =0 : BAO GIO ;FL_HOR_TEM =1 : BAO NHIET DO ; FL_HOR_TEM BIT 24H.0 ; ORG 0000H SJMP MAIN ; NGAT DO TIMER ORG 0BH LJMP NGAT_TIMER0 ; VAO PRO MAIN MAIN: - 79 -
  80. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 MOV SP,#30H ; NHAP DIA CHI BAT DAU CHUONG TRINH ;KHOI DONG SAU KHI BAT NGUON "TURN ON POWER" ; ; vung Ram luu tru: hh:mm:ss ; MOV 12H,#00H MOV 13H,#00H MOV 14H,#00H MOV 15H,#00H MOV 16H,#00H MOV 17H,#00H ; ; vung Ram luu tru Temprature :27*C ; MOV 20h,#00h MOV 21h,#00h MOV 22h,#00h MOV 23h,#00h ; ; THIET LAP MAC DINH FL_HOR_TEM=0 LA HIEN THI GIO ; CLR FL_HOR_TEM ;FL_HOR_TEM=0 ; LAY TEM LAN DAU TIEN CALL CON_ADC MOV R5,#0 MOV IE,#10000010B ;KHOI TAO NGAT CHO PHEP ; INT1_T0_INT0 MOV TMOD,#11H MOV TL0,#LOW(-9216) ;XTAL11.0592 =>Tclk = 12/11.0592 = 1,08507uS MOV TH0,#HIGH(-9216) ; 9216x(100lan)x[Thoigianmay(12/11.0592)]=1s OK!chinh xac 99.99% SETB TR0 LAP: CALL HIEN_THI CALL TEST_PHIM CALL KIEM_TRA1S SJMP LAP ; HIEN_THI: JNB FL_HOR_TEM,HIEN_THI_GIO ;IF FL_HOR_TEM=0 THEN "HIEN THI GIO" LJMP HIEN_THI_TEM ;ELSE FL_HOR_TEM=1 THEN "HIEN THI NHIET DO" HIEN_THI_GIO: ; HIEN THI DATA LEN CAC LED MOV DPTR,#BANG_MA_LED ;LED1 MOV P0,#11111110B - 80 -
  81. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 MOV A,17H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh; Chong nhieu ;LED2 MOV P0,#11111101B MOV A,16H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh ; Chong Nhieu ;LED3 MOV P0,#11111011B MOV A,15H MOVC A,@A+DPTR ANL A,#10111111B MOV P2,A LCALL DELAY1 mov p2,#0ffh ;Chong Nhieu ;LED4 MOV P0,#11110111B MOV A,14H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh ;Chong Nhieu ;LED5 MOV P0,#11101111B MOV A,13H MOVC A,@A+DPTR ANL A,#10111111B MOV P2,A LCALL DELAY1 mov p2,#0ffh ;Chong Nhieu ;LED6 MOV P0,#11011111B MOV A,12H ;KIEM TRA -DE TAT MO LED CH CJNE A,#0,MOLED_CH ; Neu CH khac 0 thi Nhay den MOLED_CH ; Neu CH la 0 thi tat led CH MOV P2,#0ffh ; Xoa Led CH khi no la so:"0" LCALL DELAY1 MOV P2,#0ffh ;Chong Nhieu LJMP THOAT_HIENTHI ; MOLED_CH MOLED_CH: MOVC A,@A+DPTR - 81 -
  82. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 MOV P2,A LCALL DELAY1 MOV P2,#0FFH ;Chong Nhieu LJMP THOAT_HIENTHI ;=== HIEN_THI_TEM: ; HIEN THI NHIET DO ; BEFOR DISPLAY VALUE TEMPRATURE WE MUST CONVECTER ANALOG TO DISGITAL INC R5 PUSH ACC MOV A,R5 CJNE A,#100,CHUA_CAP_NHAT ; CAP NHAT LAI TEM VALUE CALL CON_ADC MOV R5,#0 CHUA_CAP_NHAT: POP ACC ; ; ghcbaFed ; : 10000000B ; : 11110000B ;CHU C ; : 01100011B ;SO 0 NHO MOV P0,#11111110B MOV P2,#11110000B ;CHU C LCALL DELAY1 mov p2,#0ffh; Chong nhieu LCALL DELAY1 MOV P0,#11111101B MOV P2,#01100011B ;SO 0 NHO LCALL DELAY1 mov p2,#0ffh; Chong nhieu LCALL DELAY1 ; HIENTHI GIA TRIN TEM MOV P0,#11111011B MOV A,22H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh ; Chong Nhieu LCALL DELAY1 MOV P0,#11110111B MOV A,21H MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 - 82 -
  83. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 mov p2,#0ffh ;Chong Nhieu LCALL DELAY1 MOV P0,#11101111B MOV A,20H CJNE A,#00,HIENTHI_TEM_100 LJMP THOAT_HIENTHI HIENTHI_TEM_100: MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 mov p2,#0ffh ;Chong Nhieu LCALL DELAY1 THOAT_HIENTHI: RET ; KIEM_TRA1S: ; KIEM TRA XEM DU 1s CHUA ? CJNE R2,#100,KET_THUC MOV R2,#00H ; PROCESS TEMPRATURE INC R0 CJNE R0,#10,R0_BY_13 ; IF R0<>10 THEN JUMPER TO TEST IT BY 13 ? SETB FL_HOR_TEM ; ELSE R0=10 THEN SET FLAG=1 FOR HTHI TEMPRATURE LJMP CONT_UPDATE_NO_HT ; TIEP TUC CAP NHAT NHUNG KHONG HIEN THI GIA TRI GIO R0_BY_13: CJNE R0,#13,CONT_UPDATE_NO_HT ; IF R0=13 THAT MEAN IS "TEMPRATURE DISPLAY IN 3S" CLR FL_HOR_TEM ; AFTER 3S IT WILL RE_DISPLAY VALUE OF HOUR ; SO WE MUST RESET VALUE OF FLAG = 0 MOV R0,#0 ; CONT_UPDATE_NO_HT: INC 17H MOV A,17H CJNE A,#10,KET_THUC MOV 17H,#00 INC 16H MOV A,16H CJNE A,#6,KET_THUC MOV 16H,#00 INC 15H MOV A,15H CJNE A,#10,KET_THUC - 83 -
  84. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 MOV 15H,#00 INC 14H MOV A,14H CJNE A,#6,KET_THUC MOV 14H,#00 INC 13H MOV A,13H CJNE A,#03,TANG_DVH_LEN_10 ; NEU LA 3 THI KTRA TIEP MOV A,12H CJNE A,#01,KET_THUC ; DUNG DVH LA 3 VA CH KHONG LA 1 THI NHAY TOI CP DE CP=0 MOV 12H,#00H MOV 13H,#01H LJMP KET_THUC ; TANG DVH LEN 10 KHI NO KHONG PHAI LA S0 3 TANG_DVH_LEN_10: CJNE A,#10,KET_THUC MOV 13H,#00 INC 12H KET_THUC: RET ; ; DELAY DELAY1: MOV R7,#10H DJNZ R7,$ RET ; ;CHUONG TRINH CON NGAT TIMER0 NGAT_TIMER0: INC R2 ;tre 1us MOV TL0,#LOW(-9216) ;XTAL11.0592 =>Tclk = 12/11.0592 = 1,08507uS MOV TH0,#HIGH(-9216) ; 9216x(100lan)x[Thoigianmay(12/11.0592)]=1s OK!chinh xac 99.99% SETB TR0 RETI ; ; TEST_PHIM: JB P3.3,PHIM2 CALL NGAT_PHUT - 84 -
  85. www.microduyphi.com duyphi@yahoo.com - Tel:0909.371.471 Taùi baûn laàn thöù 2 LJMP THOAT_PHIM1 ; PHIM2: JB P3.2,THOAT_TEST_PHIM CALL NGAT_GIO LJMP THOAT_PHIM2 ; THOAT_PHIM1: TT_KT1: JNB P3.3,HIEN_THI_T1 LJMP THOAT_TEST_PHIM HIEN_THI_T1: CALL HIEN_THI LJMP TT_KT1 THOAT_PHIM2: TT_KT2: JNB P3.2,HIEN_THI_T2 LJMP THOAT_TEST_PHIM HIEN_THI_T2: CALL HIEN_THI LJMP TT_KT2 THOAT_TEST_PHIM: RET ; ;CHUONG TRINH CON NGAT INTO NGAT_PHUT: ; CAM BAO NHIET CLR FL_HOR_TEM MOV R0,#0 INC 15H MOV A,15H CJNE A,#10,THOAT1 MOV 15H,#0H INC 14H MOV A,14H CJNE A,#6,THOAT1 MOV 14H,#0H THOAT1: RET ;CHUONG TRINH CON NGAT INT1 NGAT_GIO: - 85 -