Thiết kế vả thi công hệ thống test time tự động ứng dụng CPUZ80 part5 pot - Pdf 18

Luận văn tốt nghiệp
Hệ thống báo giờ tự động

DATA BUS
Q7

BDRHình 17: SƠ ĐỒ KHỐI MẠCH ĐIỀU KHIỂN BÁO HIỆU.

CLOCK

A0-A15 VALID ADDRESS

MERQBDR D0-D7 DATA

Hình 18: CHU KÌ P XUẤT DỮ LIỆU BÁO HIỆU.
Dữ liệu báo hiệu gồm 8 bit từ D0 đến D7 của byte báo hiệu, ví dụ chọn bit
D7 để điều khiển thiết bò báo hiệu. Khi ngõ ra Q7 của mạch chốt ở mức cao sẽ
làm thiết bò báo hiệu hoạt động. Ngược lại, thiết bò báo hiệu sẽ không hoạt động
khi Q7 ở mức thấp.


Hình 20: SƠ ĐỒ CHI TIẾT MẠCH BÁO HIỆU.
IC 74LS373 được dùng làm mạch chốt 8 bit, ngõ vào của 74LS373 được nối
với Data bus. Bảng sự thật của 74LS373 như sau:

OC G DATA Q
L H H H
L H L L
L L X Q
O

Bảng 6: BẢNG SỰ THẬT CỦA 74LS373
Tín hiệu điều khiển
BDR
được cho qua mạch đảo để phù hợp với mức tác
động của chân G IC 74LS373. Ngõ ra Q7 sẽ điều khiển 1 Opto triac (hoặc relay)
đóng mạch cho chuông điện. Với cấu tạo như trên, Hệ Thống sẽ được cách li về
điện với thiết bò báo hiệu, để đảm bảo an toàn cho người sử dụng.
Ngoài ra, với 8 ngõ ra Q0…Q7 của IC 74LS373, chương trình phần mềm có
thể điều khiển các thiết bò báo hiệu để phát ra âm thanh báo hiệu có những tần
số khác nhau, tăng tính đa dạng trong cách thức báo hiệu.
Luận văn tốt nghiệp
Hệ thống báo giờ tự động


Hệ thống báo giờ tự động

III- THIẾT KẾ PHẦN MỀM.
3.1- Tổng quát phần mềm hệ thống.
Phần mềm được thiết kế nhằm tạo cho Hệ Thống Báo Giờ Tự Động có 5
chức năng như sau:
 Chức năng tự động báo hiệu.
 Chức năng tạo thời gian thực và hiển thò thời gian thực.
 Chức năng điều chỉnh thời gian thực.
 Chức năng về Hottime gồm : Xem, xóa và đặt mới.
 Chức năng về Skiptime gồm : Xem, xóa và đặt mới.
Mỗi chức năng nêu trên được một chương trình thực hiện. Do đó, phần mềm
Hệ Thống gồm 5 chương trình thực hiện 5 chức năng chính của Hệ Thống và 3
chương trình con phục vụ chung cho các chương trình.
3.1.1- Chức năng báo hiệu tự động :
Điều kiện để báo hiệu: khi có 1 Restime hay Hottime bằng với thời gian
thực và không có Skiptime nào bằng với thời gian thực thì tiến hành việc báo
hiệu.
Việc báo hiệu phải được thực hiện tự động. Do đó, chương trình đảm nhận
việc báo hiệu tự động sẽ được đặt ở đòa chỉ 0000h trong vùng nhớ. Tên chương
trình này được đặt là MAIN.
Đây là chương trình điều khiển chính của Hệ Thống. Ngoài việc thực hiện
chức năng báo hiệu tự động, chương trình MAIN phải giúp khởi động Hệ Thống.
Khi Hệ Thống vừa được cấp điện, chương trình MAIN sẽ khởi động Hệ
Thống. Sau đó, 1 vòng lặp sẽ thực hiện quá trình so sánh thời gian thực với các
thời điểm báo hiệu (Restime, Hottime), các thời điểm cấm báo hiệu (Skiptime)
và thứ trong tuần để quyết đònh việc báo hiệu hay không đối với từng thời điểm

Hottime.
3.1.5- Chức năng về Skiptime: (Xem - Xóa - Đặt)
Tương tự như chức năng về Hottime, chương trình Skiptime được đặt ở đòa
chỉ 28h sẽ đáp ứng ngắt
INT
mode 0.
Chương trình Skiptime được thi hành theo yêu cầu của người sử dụng và
nhận sự điều khiển từ bàn phím.
3.1.6- Các chương trình con:
 Chương trình con hiển thò (tên là DISPLAY):
Thực hiện việc biến đổi dữ liệu giờ và phút từ mã HEX sang BCD. Sau đó
thực hiện việc so sánh từ 0 - 9 rồi viết sang 8279 để hiển thò các thông tin về
thời gian.
 Chương trình xử lý bàn phím (tên là KEYPRO)
Nhận phím được ấn để phục vụ việc lựa chọn Thứ - Giờ - Phút.
 Chương trình báo lỗi (tên là ERROR):
Gởi thông báo lỗi đến người sử dụng thông qua đèn hiển thò.
Phần mềm Hệ Thống được viết bằng ngôn ngữ ASSEMBLY cho Z80,
hợp dòch bằng M80 và L80. Phần mềm Hệ Thống được nạp vào 1 vi mạch ROM
2732 có đòa chỉ từ 0000h đến 0FFFh.
Luận văn tốt nghiệp
Hệ thống báo giờ tự độngBảng sau đây trình bày tóm tắt tên và đòa chỉ các chương trình phần
mềm.

TÊN CHƯƠNGTRÌNH
ĐỊA CHỈ
NHIỆM VỤ

3.2.1- Thời gian thực:
Gồm 4 byte cho Thứ, Giờ, Phút và Giây được đặt trong vùng nhớ RAM có
đòa chỉ là:
DATE EQU 1004H; Byte cứa thứ thực
HOUR EQU 1005H; Byte chứa Giờ thực
MIN EQU 1006H; Byte chứa Phút thực
SEC EQU 1007H; Byte chứa Giây thực
Luận văn tốt nghiệp
Hệ thống báo giờ tự độngThời gian thực được chương trình RTP hay chương trình Settime cập nhật.
3.2.2- Restime:
Các Restime được đặt liên tiếp nhau trong một vi mạch ROM 2732 tạo thành
bảng Restime. Do đó, bảng Restime có cấu trúc là một danh sách tuần tự (còn
gọi là danh sách đặc). Đòa chỉ đầu bảng Restime là 0FA0h. Cuối bảng Restime
là byte EORT (End Of Restime). EORT có giá trò là 0FFH dùng để báo kết thúc
bảng Restime.
Mỗi Restime chiếm 3 byte, mỗi byte cho Giờ, Phút và Mã chuông. Cấu trúc
bảng Restime vẽ bởi hình như sau:

0FFFh
0FA0h + 3(N -1)+4

0FA0h + 3(N -1)+3 EORT (0FFh) End Of Restime

0FA0h + 3(N -1)+2 Mã chuông N
0FA0h + 3(N -1)+1 Phút Restime N
0FA0h + 3(N -1) Giờ Restime N


1008h Giờ Hottime 1

Hình23 : CẤU TRÚC BẢNG HOTTIME
Hottime là loại dữ liệu động. Khi khởi động Hệ Thống phải tạo bảng
Hottime gồm 10 Hottime rỗng, Hottime rỗng có giá trò là 0FEh.
Hottime được thiết kế cho mục đích báo hiệu đột xuất. Mỗi Hottime chỉ có
tác dụng cho một lần báo hiệu, do đó Hottime sẽ bò xóa sau khi báo hiệu.
3.2.4- Skiptime:
Cấu trúc bảng Hottime cũng là danh sách tuần tự gồm 22 byte trong vùng
nhớ RAM từ đòa chỉ 1028h đến đòa chỉ 103Dh.
Mỗi Skiptime gồm 2 byte, một byte cho Giờ và một byte cho Phút. Bảng
Skiptime chứa tối đa 10 Skiptime, 2 byte cuối của bảng Skiptime cũng có giá trò
0FEh dùng làm EOST (End Of Skiptime). EOST là mã báo kết thúc bảng
Skiptime. Cấu trúc bảng Skiptime như ở hình sau:
Luận văn tốt nghiệp
Hệ thống báo giờ tự động
103Dh 0FEh
103Ch EOST
End Of
Skiptime
103Bh Phút Skiptime10
103Ah Giờ Skiptime 10

1029h Phút Skiptime 1
1028h Giờ Skiptime 1
Hình 24: CẤU TRÚC BẢNG SKIPTIME
Cũng như Hottime, Skiptime là loại dữ liệu động. Vì vậy, khi Hệ Thống


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status