Mô tả chương trình:
Chương trình Settime phục vụ người sử dụng trong việc điều chỉnh thời gian thực thông qua bàn phím nhằm giúp người sử dụng điều chỉnh thời gian thực bằng bàn phím. Do đóù, chương trình Settime được đặt ở địa chỉ 08h trong vùng nhớ.
Chương trình Settime sẽ gọi chương trình Keypro để xử lý bàn phím nhằm giúp người sử dụng điều chỉnh thời gian thực bằng bàn phím. Trước khi gọi Keypro, Settime cần chuẩn bị các dữ liệu cần thiết cho Keypro như:
Thanh ghi B chứa giờ hiện tại.
Thanh ghi C chứa phút hiện tại
Thanh ghi D chứa thứ hiện tại.
Trước khi thoát, Settime phải hiển thị lại thời gian thực.
Người sử dụng phải theo qui định của chương trình Keypro để điều chỉnh thời gian thực.
Lưu đồ chi tiết.
Có thể bạn quan tâm!
- _Mạch Kiểm Soát Ngắt (Interupt Controller).
- Sơ Đồ Khối Mạch Điều Khiển Báo Hiệu.
- Lưu Đồ Tổng Quát Chương Trình Main
- Lưu Đồ Chi Tiết Chương Trình Error
- Mô Tả Hệ Thống Và Hướng Dẫn Sử Dụng:
- Ứng dụng CPU Z80 - Thiết kế và thi công hệ thống báo giờ tự động - 11
Xem toàn bộ 105 trang tài liệu này.
BẮT ĐẦU
CẤT AF, BC,DE, HL VÀO STACK
LẤY THỨ GIỜ PHÚT HIỆN TẠI ĐẶT GIÂY THỤC = 0
KEYPRO
HIỂN THỊ THỨ GIỜ PHÚT THỰC
PHỤC HỒI AF,BC,DE,HL TỪ STACK
KẾT THÚC
Hình 29 : LƯU ĐỒ CHƯƠNG TRÌNH SETTIME
3.3.4-Chương trình Hottime.
Mô tả chương trình.
Đây là chương trình phục vụ ngắt mode 0 ở địa chỉ 018h đảm nhiệm chức năng về Hottime: Xem những Hottime đã có trong bảng (gọi là preview), xóa những Hottime đã có trong bảng (gọi là delete), đặt một Hottime mới (gọi là Insert). Lưu đồ tổng quát như sau:
BẮT ĐẦU
CẤT AF,BC,DE,HL VÀO STACK
DPMASK =1
HIỂN THỊ HOTTIME
YĐỊA CHỈ
PHẢI PHÍM “+” HOTTIME KẾ SAU
N
Y ĐỊA CHỈ
PHẢI PHÍM “-“ HOTTIME KẾ TRƯỚC
N
Y
PHẢI PHÍM “DEL” XÓA HOTTIME
N
Y
DPMASK = 0
PHẢI PHÍM “OK”
N
Y ĐẶT 1
PHẢI PHÍM “Ins” HOTTIME MỚI
HIỂN THỊ THỜI GIAN THỰC N
HỒI PHỤC CÁC THANH GHI
KẾT THÚC Hình 30 : LƯU ĐỒ TỔNG QUÁT CHƯƠNG TRÌNH HOTTIME
Chương trình Hottime sẽ xử lí các phím: Ins, +, -, Del/Date và phím OK để giúp người sử dụng điều khiển ba chức năng trên.
Khi chương trình được gọi, mặc nhiên sẽ là chế độ thực hiện chức năng Review và Delete, các phím ấn như sau:
“+” : Hiển thị Hottime kế sau (không hiển thị quay vòng).
“-“ : Hiển thị Hottime kế trước (không hiển thị quay vòng)
“Del”: Xóa Hottime hiện hành (đang được hiển thị).
“Ins” : Đặt 1 Hottime mới.
“OK”: Thoát.
Nếu trong bảng có Hottime thì Hottime đầu tiên sẽ được hiển thị khi chương trình được gọi. Còn bảng Hottime rỗng thì mạch hiển thị sẽ tắt (các Led 7 đoạn hiển thị giờ, phút ở trạng thái Blank) và khi ấn phím “+” hay “-“ mạch hiển thị vẫn tắt.
Nếu không có Hottime nào trong bảng (các Led 7 đoạn hiển thị giờ, phút ở trạng thái Blank), khi ấn phím “Del” thì xuất hiện thông báo lỗi do chương con Error thực hiện. Khi xóa Hottime xong, chương trình sẽ hiển thị lại Hottime đầu tiên trong bảng.
Khi đặt 1 Hottime mới:
ng trình
Nếu trong bảng đã đủ 10 Hottime chương trình sẽ dùng chươ Error để báo lỗi, ấn “OK” để bỏ lỗi.
con
Nếu trong bảng còn Hottime rỗng, chương trình Hottime sẽ gọi chương trình con Keypro để người sử dụng dùng bàn phím chọn giờ, phút cho Hottime mới. Trước khi gọi Keypro, chương trình Hottime phải xác định địa chỉ đặt Hottime mới để truyền cho Keypro. Người sử dụng dùng bàn phím theo quy định của chương trình Keypro để đặt Hottime mới.
Khi thoát khỏi Keypro chương trình tiếp tục ghi mã chuông cho Hottime (0B7h) và trở về chức năng preview và hiển thị Hottime vừa cài đặt.
Để tránh việc hiển thị thời gian thực do chương trình RTP thực hiện, phải đặt mặt nạ DPMASK=1 để che hiển thị ở đầu chương trình Hottime và bỏ mặt nạ DPMASK = 0 ở cuối chương trình Hottime để cho phép RTP hiển thị thời gian thực trở lại.
Lưu đồ chi tiết
Lưu đồ tiết chương trình Hottime vẽ ở hình sau:
BẮT ĐẦU
CẤT AF, BC, DE, HL VÀO STACK
DPMASK = 1
ĐỊA CHỈ ĐẦU BẢNG HOTTIME
READKEY
Y
N Y
HIỂN THỊ HOTTIME (HT)
ĐỌC BÀN PHÍM
ĐỊA CHỈ HT CUỐI ? PHẢI PHÍM “+”?
HT SAU
N
N Y
Đ/C HT HT ĐẦU ? PHẢI “-“ ? XÓA HT TRƯỚC
N Y
Y Y N
PHÍM “DEL” ? CÓ HT ? BÁO LỖI
N
Y
PHÍM “OK” ?
N
READKEY N DPMASK = 0
PHÍM “Ins” ?
Y
Y
BÁO LỖI ĐỦ 10 HT ? H IỂN THỊ THỜI GIAN THỰC
N
PHỤC HỒI CÁC THANH GHI
ĐỊA CHỈ HT MỚI
KEYPRO KẾT THÚC
GHI MÃ CHUÔNG
Hình 31 : LƯU ĐỒ CHI TIẾT CHƯƠNG TRÌNH HOTTIME
3.3.5- Chương trình SKIPTIME.
Mô tả chương trình:
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, xóa 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.
Lưu đồ chi tiết:
Lưu đồ chi tiết chương trình Skiptime giống như của Hottime, được vẽ ở hình sau:
BẮT ĐẦU
CẤT AF, BC, DE, HL VÀO STACK
DPMASK = 1
ĐỊA CHỈ ĐẦU BẢNG SKIPTIME (ST)
HIỂN THỊ SKIPTIME
READKEY
Y ĐỌC BÀN PHÍM
N Y
ĐỊA CHỈ ST CUỐI ? PHẢI PHÍM “+”?
ST SAU
N
N Y
Đ/C ST ST ĐẦU ? PHẢI “-“ ? XÓA ST TRƯỚC
N Y
Y Y N
PHÍM “DEL” ? CÓ ST ? BÁO LỖI
N
Y
PHÍM “OK” ?
N
READKEY N DPMASK = 0
PHÍM “Ins” ?
Y
H IỂN THỊ GIỜ PHÚT THỰC
Y
BÁO LỖI ĐỦ 10 ST ?
N
PHỤC HỒI CÁC THANH GHI
ĐỊA CHỈ ST MỚI
KEYPRO KẾT THÚC
Hình 32 : LƯU ĐỒ CHI TIẾT CHƯƠNG TRÌNH SKIPTIME
3.3.6- Chương trình con DIPLAY:
Mô tả chương trình: