intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Thiết kế và thi côn hệ thống báo giờ tự động ứng dụng CPU Z80, chương 9

Chia sẻ: Nguyen Van Dau | Ngày: | Loại File: PDF | Số trang:17

86
lượt xem
8
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Chương trình Skiptime tương tự như Hottime phục vụ 3 chức năng về Skiptime : Xem Skiptime có trong bảng, xoá Skiptime và đặt Skiptime. Chương trình sẽ được đặt tại địa chỉ 0028h trong vùng nhớ để phục vụ cho ngắt INT mode 0. Về hoạt động hoàn toàn giống chương trình Hottime nhưng Skiptime không cần đặt mã chuông , địa chỉ đầu bảng Skiptime là 1028h và mỗi Skiptime có 2 byte. Lưu đồ tổng quát hoàn toàn giống như lưu đồ tổng quát của chương trình Hottime....

Chủ đề:
Lưu

Nội dung Text: Thiết kế và thi côn hệ thống báo giờ tự động ứng dụng CPU Z80, chương 9

  1. Chương 9: Chöông trình SKIPTIME  Moâ taû chöông trình: Chöông trình Skiptime töông töï nhö Hottime phuïc vuï 3 chöùc naêng veà Skiptime : Xem Skiptime coù trong baûng, xoùa Skiptime vaø ñaët Skiptime. Chöông trình seõ ñöôïc ñaët taïi ñòa chæ 0028h trong vuøng nhôù ñeå phuïc vuï cho ngaét INT mode 0. Veà hoaït ñoäng hoaøn toaøn gioáng chöông trình Hottime nhöng Skiptime khoâng caàn ñaët maõ chuoâng , ñòa chæ ñaàu baûng Skiptime laø 1028h vaø moãi Skiptime coù 2 byte. Löu ñoà toång quaùt hoaøn toaøn gioáng nhö löu ñoà toång quaùt cuûa chöông trình Hottime.  Löu ñoà chi tieát: Löu ñoà chi tieát chöông trình Skiptime gioáng nhö cuûa Hottime, ñöôïc veõ ôû hình sau:
  2. BAÉT ÑAÀU CAÁT AF, BC, DE, HL VAØO STACK DPMASK = 1 ÑÒA CHÆ ÑAÀU BAÛNG SKIPTIME (ST) HIEÅN THÒ SKIPTIME READKEY
  3. Y ÑOÏC BAØN PHÍM N Y ÑÒA CHÆ ST CUOÁI ? PHAÛI PHÍM “+”? ST SAU N N Y Ñ/C STST ÑAÀU ? PHAÛI “-“ ? XOÙA ST TRÖÔÙC N Y Y Y N PHÍM “DEL” ? COÙ ST ? BAÙO LOÃI N Y PHÍM “OK” ? N READKEY N DPMASK = 0 PHÍM “Ins” ? Y Y
  4. BAÙO LOÃI ÑUÛ 10 ST ? H IEÅN THÒ GIÔØ PHUÙT THÖÏC N PHUÏC HOÀI CAÙC THANH GHI ÑÒA CHÆ ST MÔÙI KEYPRO KEÁT THUÙC Hình 32 : LÖU ÑOÀ CHI TIEÁT CHÖÔNG TRÌNH SKIPTIME 3.3.6- Chöông trình con DIPLAY:  Moâ taû chöông trình: Ñeå coù theå hieån thò Thöù – Giôø – Phuùt - Giaây treân led 7 ñoaïn ôû daïng soá thaäp phaân, ta caàn bieán ñoåi döõ lieäu thôøi gian ôû daïng soá HEX sang BCD. Muïc ñích cuûa vieäc bieán ñoåi naøy laø ñeå chæ caàn thöïc hieän vieäc so saùnh thôøi gian thöïc taïo ra töø 0 ñeán 9 thay vì phaûi so saùnh töø 0 ñeán 59. Döõ lieäu thôøi gian thöïc naèm trong 4 byte 1004h, 1005h, 1006h,1007h ñöôïc vieát sang vuøng ñeäm goàm 4 byte 1050h, 1051h,1052h,1053h töông öùng tröôùc khi bieán ñoåi töø HEX sang BCD ñeå hieån thò.
  5. Qua khaûo saùt cuï theå 60 giaù trò ñaàu cuûa soá HEX töø 0h ñeán 3Bh, töông öùng vôùi soá BCD coù giaù trò töø 0 ñeán 59 ngöôøi vieát thaáy coù qui luaät bieán ñoåi nhö sau: HEX GIA BCD HEX GIA BCD SOÁ SOÁ 00 00 1E 30 01 01 1F 31 02 02 20 32 03 03 21 33 04 04 22 34 05 + 00h 05 23 + 12h 35 06 06 24 36 07 07 25 37 08 08 26 38 09 09 27 39 0A 10 28 40 0B 11 29 41 0C 12 2A 42 0D 13 2B 43 0E 14 2C 44 0F + 06h 15 2D + 18h 45 10 16 2E 46 11 17 2F 47 12 18 30 48
  6. 13 19 31 49 14 20 32 50 15 21 33 51 16 22 34 52 17 23 35 53 18 24 36 54 19 + 0Ch 25 37 + 1Eh 55 1A 26 38 56 1B 27 39 57 1C 28 3A 58 1D 29 3B 59 Caùch khôûi taïo 8279: LD HL,2001h LD (HL),00000000B ; Hieån thò 8 kí töï loái vaøo traùi LD (HL),00100101B ; Chia taàn soá xung clock ôû ngoõ vaøo chaân soá 3 cho 5 Löu ñoà chöông trình hieån thò.
  7. BAÉT ÑAÀU CAÁT AF, BC, DE, HL VAØO STACK ÑÒA CHÆ LED THÖÙ - 1 INC HL ÑÒA CHÆ LED GIAÂY +1 ? LD A,(HL) HOÀI PHUÏC AF, BC, DE,HL A < 0Ah ? KEÁT THUÙC A < 14h ? A A+06h
  8. A < 1Eh ? A A + 0Ch A < 28h ? A A + 12h A < 32h ? A A + 18h A < 3Ch ? A A + 1Eh HIEÅN THÒ Hình 33 : LÖU ÑOÀ CHÖÔNG TRÌNH DISPLAY 3.3.7- Chöông trình con KEYPRO:  Moâ taû chöông trình : Caùc chöùc naêng Settime, ñaët Hottime/Skiptime caàn söû duïng baøn phím ñeå thay ñoåi giôø, phuùt ñeán giaù trò mong muoán vaø quan saùt Giôø Phuùt ñang thay ñoåi treân maøn hình. Chöông trình con KEYPRO nhaèm phuïc vuï yeâu caàu chung ñoù. KEYPRO seõ xöû lyù caùc toå hôïp phím “Ins_+”, “Ins_ -“ ,“Del/Date _ +”, “Del/Date _ -“ vaø caùc phím “+”, “-“,”OK”. Moãi phím khi aán seõ taïo ra 1 giaù trò vaø thöïc hieän 1 chöùc naêng cho trong baûng sau:
  9. PHÍM GIAÙ TRÒ CHÖÙC NAÊNG Date_+ 0Edh Taêng thöù Date_- 0EBh Giaûm thöù Ins_+ 0FCh Taêng giôø Ins_- 0FAh Giaûm giôø + 0FDh Taêng phuùt _ 0FBh Giaûm phuùt OK 0F7h Löu Giôø Phuùt vaø thoaùt Baûng 8: CHÖÙC NAÊNG VAØ GIAÙ TRÒ CAÙC PHÍM Löu yù: Caùc toå hôïp phím: ”Date_+” vaø “Date_-“, “Ins_+” vaø “Ins_-“ ñöôïc taïo ra do aán phím “+” hay ”-“ trong khi aán vaø giöõ phím “Ins”, “Date”. Vì baøn phím ñöôïc thieát keá nhö laø vuøng nhôù coù ñòa chæ töø 4000h ñeán 4FFFh neân khi ñoïc baøn phím, chöông trình con KEYPRO thöïc hieän leänh ñoïc boä nhôù taïi ñòa chæ 4000h hay lôùn hôn (giôùi haïn trong vuøng nhôù cho pheùp) vôùi chu kyø khoaûng 175mS. Khoaûng thôøi gian ñoù laø ñuû ñeå choáng doäi cho phím ñöôïc aán ñoàng thôøi ñeå quan saùt ñöôïc Giôø Phuùt ñang thay ñoåi lieân tuïc khi ngöôøi söû duïng aán vaø giöõ phím “+” hay “-“. Moãi khi coù phím ñöôïc aán (ngoaïi tröø phím” OK”) nghóa laø thöù, giôø, phuùt ñaõ coù söï thay ñoåi, KEYPRO seõ nhôø chöông trình con DISPLAY hieån thò giôø phuùt ñaõ thay ñoåi. Chöông trình trieäu goïi KEYPRO phaûi truyeàn cho KEYPRO ñòa chæ boä nhôù ñeå ghi giôø phuùt ñaõ thay ñoåi, ñòa chæ naøy phaûi ñaët trong thanh ghi HL.
  10.  Löu ñoà chi tieát: BAÉT ÑAÀU CAÁT BC VAØO STACK HIEÅN THÒ THÔÙI GIAN ÑANG THAY ÑOÅI ÑOÏC BAØN PHÍM LAÁY BC TÖØ STACK Y Y TAÊNG THÖÙ ? THÖÙ + 1 THÖÙ = 9 ? THÖÙ = 2 N N Y Y
  11. GIAÛM THÖÙ ? THÖÙ – 1 THÖÙ = 1 ? THÖÙ = 8 N N Y Y TAÊNG GIÔØ ? GIÔØ + 1 GIÔØ = 24 ? GIÔØ = 0 N N Y Y GIAÛM GIÔØ ? Giôø -1 GIÔØ = -1 ? GIÔØ = 23 N N Y Y TAÊNG PHUÙT ? PHuùTù + 1 PhùuùT = 60 ? PhuùT = 0 N N Y Y GIAÛM PHUÙT ? PhuùT –1 PhuùT = -1 ? PhuùT = 59 N N N PHAÛI OK ? Y
  12. GHI THÔØI GIAN THÖÏC VAØO BOÄ NHÔÙÙ KEÁT THUÙC Hình 34 : LÖU ÑOÀ CHI TEÁT CHÖÔNG TRÌNH KEYPRO 3.3.8- Chöông trình con ERROR.  Moâ taû chöông trình Nhaèm baùo loãi cho ngöôøi söû duïng bieát nhöõng loãi nhö: xoùa Hottime/Skiptime roãng, theâm Hottime/Skiptime thöù 11. Nhaán phím “OK” ñeå boû loãi (thoaùt khoûi ERROR) Thoâng baùo loãi baèng caùch chôùp taét chöõ ERROR treân ñeøn hieån thò.  Löu ñoà: Löu ñoà chöông trình ERROR nhö sau:
  13. BAÉT ÑAÀU CAÁT AF, BC, DE, HL VAØO STACK HIEÅN THÒ “ERROR” TRÌ HOAÕN
  14. ÑOÏC PHÍM Y PHAÛI OK ? N TAÉT LED TRÌ HOAÕN PHUÏC HOÀI AF ,BC, DE, HL TÖØ STACK KEÁT THUÙC Hình 35 : LÖU ÑOÀ CHI TIEÁT CHÖÔNG TRÌNH ERROR Toùm laïi Toaøn boä phaàn meàm ñöôïc thieát keá ñeå ñaùp öùng cho yeâu caàu vaø muïc ñích cuûa ñeà taøi. Heä Thoáng baùo giôø töï ñoäng söû duïng caùc chöông trình:
  15.  Chöông trình MAIN ñeå khôûi ñoäng heä thoáng, so saùnh thôøi gian thöïc vôùi caùc Restime, Hotime, Skiptime vaø thöù trong tuaàn ñeå ra quyeát ñònh baùo hieäu vaø ñieàu khieån baùo hieäu.  Chöông trình RTP (Real Time Program) ñeå taïo thôøi gian thöïc  Chöông trình SETTIME phuïc vuï cho chænh söûa thôøi gian thöïc.  Chöông trình HOTTIME phuïc vuï cho vieäc ñaët thôøi ñieåm baùo hieäu ñoät xuaát.  Chöông trình SKIPTIME phuïc vuï cho ñaët thôøi ñieåm caám baùo hieäu.  Chöông trình con KEYPRO xöû lí baøn phím ñeå phuïc vuï cho Settime, Hottime, Skiptime.  Chöông trình con DISPLAY phuïc vuï cho hieån thò thôøi gian thöïc.  Chöông trình con ERROR ñeå thoâng baùo loãi cho ngöôøi söû duïng.
  16. IV- Thi coâng. Goàm sô ñoà maïch in lôùp treân, sô ñoà maïch in lôùp döôùi vaø sô ñoà boá trí linh kieän. Vì caùc sô ñoà naøy ñöôïc veõ ôû Eagle neân khoâng mang ñöôïc sang word (kích thöôùc lôùn) neân khoâng trình baøy ôû ñaây.
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2