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

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

0
66
lượt xem
8
download

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

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Mô tả chương trình: Chương trình MAIN được đặt vào vùng nhớ bắt đầu từ địa chỉ 0000h. Nó được thực hiện ngay khi hệ thống vừa được cấp điện. Chương trình MAIN sẽ khởi động hệ thống và thực hiện chức năng tự động báo hiệu. Lưu đồ tổng quát như sau: BẮT ĐẦU CHỜ 1 PHÚT KHỞI ĐỘNG HỆ THỐNG N THỜI GIAN THỰC BẰNG THỜI ĐIỂM BÁO HIỆU ? Y CÓ BÁO HIỆU KHÔNG ?

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 7

  1. Chương 7: Caùc chöông trình 3.3.1-Chöông trình MAIN:  Moâ taû chöông trình: Chöông trình MAIN ñöôïc ñaët vaøo vuøng nhôù baét ñaàu töø ñòa chæ 0000h. Noù ñöôïc thöïc hieän ngay khi heä thoáng vöøa ñöôïc caáp ñieän. Chöông trình MAIN seõ khôûi ñoäng heä thoáng vaø thöïc hieän chöùc naêng töï ñoäng baùo hieäu. Löu ñoà toång quaùt nhö sau: BAÉT ÑAÀU CHÔØ 1 PHUÙT KHÔÛI ÑOÄNG HEÄ THOÁNG N THÔØI GIAN THÖÏC BAÈNG THÔØI ÑIEÅM BAÙO HIEÄU ? Y
  2. COÙ BAÙO HIEÄU Y KHOÂNG ? N XOÙA SKIPTIME BAÙO HIEÄU N PHAÛI HOTTIME KHOÂNG? Y XOÙA HOTTIME Hình 26 : LÖU ÑOÀ TOÅNG QUAÙT CHÖÔNG TRÌNH MAIN
  3. Khôûi ñoäng heä thoáng nhö sau:  Khôûi ñoäng Stack ôû ñòa chæ 27FFh  Reset maïch baùo hieäu : xuaát ra giaù trò 0h ôû ñòa chæ 3000h.  Xoùa vuøng nhôù töø 1000h ñeán 1007h baèng giaù trò 00h.  Taïo baûng Hottime vaø Skiptime roãng coù ñòa chæ töø 1008h ñeán 103Dh baèng giaù trò 0FEh.  Choïn ngaét INT vaø cho pheùp ngaét.  Hieån thò thôøi gian thöïc ñaàu tieân 2 00 00 00. Töï ñoäng baùo hieäu. Quaù trình töï ñoäng baùo hieäu ñöôïc baét ñaàu ngay sau khi khôûi ñoäng heä thoáng, quaù trình naøy do moät voøng laëp thöïc hieän, moãi phuùt moät laàn. _ Chöông trình baét ñaàu duyeät baûng Hottime vaø Restime ñeå tìm moät thôøi ñieåm baùo hieäu baèng vôùi thôøi gian thöïc, neáu khoâng coù chöông trình quay veà chôø thöïc hieän quaù trình môùi. _ Neáu coù thôøi ñieåm truøng vôùi thôøi gian thöïc, chöông trình seõ duyeät baûng Skiptime. Neáu khoâng coù Skiptime baèng vôùi thôøi gian thöïc vaø thöù laø thöù 2 – 6 thì chöông trình ra quyeát ñònh baùo hieäu (neáu thôøi ñieåm baùo hieäu ñoù laø Restime). Neáu coù Skiptime baèng vôùi thôøi gian thöïc, nghóa laø thôøi ñieåm ñoù bò caám baùo hieäu, chöông trình seõ khoâng baùo hieäu vaø xoùa Skiptime ñoù. _ Sau khi baùo hieäu hay xoùa Skiptime xong chöông trình seõ xoùa Hottime (neáu thôøi ñieåm baùo hieäu laø (Hottime) roài trôû veà thöïc hieän quaù trình môùi. _ Khi nhaän quyeát ñònh baùo hieäu, chöông trình seõ laáy maõ chuoâng cuûa thôøi ñieåm caàn baùo hieäu. Moãi giaây 1 bit trong byte maõ chuoâng seõ ñöôïc truyeàn cho maïch baùo hieäu theo thöù töï töø D7 ñeán D0, möùc cao laøm chuoâng reo. Sau cuøng xuaát cho maïch möùc 0 ñeå reset. Sau 9 giaây chöông trình hoaøn taát vieäc baùo hieäu.
  4. Ñeå phaân bieät thôøi ñieåm baùo hieäu laø Restime hay Hottime, ta duøng moät maõ ñònh höôùng. Maõ ñònh höôùng naøy naèm trong thanh ghi C: Khi C = 0 ; ñònh höôùng Restime, C = 1; ñònh höôùng Hottime. Vaán ñeà xoùa Hottime vaø Skiptime: Ñeå baûng Hottime (Skiptime) vaãn giöõ ñöôïc caáu truùc laø danh saùch tuaàn töï sau khi xoùa Hottime (Skiptime), phaûi thöïc hieän theo caùch sau: dôøi nhöõng byte coøn laïi trong baûng keå töø sau khi Hottime (Skiptime) caàn xoùa ñeán ñòa chæ cuûa Hottime (Skiptime ) caàn xoùa.  Löu ñoà chi tieát chöông trình MAIN
  5. BAÉT ÑAÀU KHÔÛI ÑOÄNG HEÄ THOÁNG LAÁY GIÔØ, PHUÙT THÖÏC Y ÑÒA CHÆ ÑAÀU BAÛNG N PHUÙT THAY HOTTIME TRÖØ 3 ÑOÅI ? LAÁY GIÔØ BAÙO HIEÄU LAÁY PHUÙT THÖÏC KEÁ Y LAÁY ÑÒA CHÆ ÑAÀU PHAÛI EOFHT? BAÛNG RESTIME TRÖØ 3 N MINWT Y PHAÛI EOFRT? N N BAÈNG GIÔØ THÖÏC? Y LAÁY PHUÙT BAÙO HIEÄU N BAÈNG PHUÙT THÖÏC ? Y CAÁM NGAÉT INT LAÁY ÑÒA CHÆ ÑAÀU BAÛNG SKIPTIME TRÖØ 2
  6. COØN SKIPTIME ? N N PHAÛI T7 HAY CN ? Y Y LAÁY GIÔØ SKIPTIME N PHAÛI HOTTIME / Y N BAÈNG GIÔØ THÖÏC ? LAÁY MAÕ CHUOÂNG Y LAÁY PHUÙT SKIPTIME LAÁY GIAÂY THÖÏC
  7. N BAÈNG PHUÙT THÖÏC ? Y N COÙ THAY ÑOÅI ? XOÙA SKIPTIME Y CAËP NHAÄT SOÁ SKIPTIME XUAÁT RA MAÏCH BAÙO HIEÄU DÒCH TRAÙI MAÕ CHUOÂNG N DÒCH ÑUÛ 9 BIT CHÖA ? Y N PHAÛI HOTTIME ? Y
  8. XOÙA HOTTIME CAP NHAÄT SOÁ HOTTIME HÌnh 27 : LÖU ÑOÀ CHI TIEÁT CHÖÔNG TRÌNH MAIN 3.3.2- Chöông trình RTP (Realtime program).  Moâ taû chöông trình . Chöông trình ñöôïc ñaët ôû ñòa chæ 0066h ñaùp öùng cho ngaét NMI. Taàn soá goïi ngaét laø 1Hz. Khi ñöôïc goïi, chöông trình RTP thöïc hieän nhö sau: Taêng giaây theâm 1. Khi giaây = 60 phaûi taêng phuùt theâm 1 vaø cho giaây baèng 0. Khi phuùt = 60 phaûi taêng giôø theâm 1 vaø cho phuùt baèng 0. Khi giôø = 24 phaûi taêng thöù theâm 1 vaø gaùn giôø baèng 0. Khi thöù = 8 phaûi gaùn thöù = 2 Khi giaây thöïc coù söï thay ñoåi, phaûi tham khaûo DPMASK ñeå quyeát ñònh vieäc hieån thò thôøi gian thöïc: Neáu DPMASK = 0 ; Hieån thò DPMASK = 1 ; Khoâng hieån thò.

CÓ THỂ BẠN MUỐN DOWNLOAD

Đồng bộ tài khoản