Lưu Đồ Chi Tiết Chương Trình Hottime


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!

Xem toàn bộ 105 trang tài liệu này.


BẮT ĐẦU

Ứng dụng CPU Z80 - Thiết kế và thi công hệ thống báo giờ tự động - 8


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:

..... Xem trang tiếp theo?
⇦ Trang trước - Trang tiếp theo ⇨

Ngày đăng: 08/09/2023