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


I-MỤC TIÊU CỦA ĐỀ TÀI:

Việc báo hiệu thời gian trong trường học, trong phân xưởng sản xuất hay ở các xí nghiệp … tuy rất đơn giản nhưng đòi hỏi phải có người quản lý theo dõi thường xuyên và báo hiệu chính xác.

Để đề phòng cháy nổ cho các cơ quan, kho tàng … cần phải được trang bị các thiết bị phát hiện hỏa hoạn. Việc phát hiện sớm các vụ hỏa hoạn sẽ hạn chế được những thiệt hại về tính mạng con người cũng như của cải vật chất.

Mục tiêu của đề tài là thiết kế một Hệ Thống có những khả năng sau:

_ Tạo ra thời gian thực.

_ Tự động báo hiệu tại những thời điểm đã được qui định (Gồm những thời điểm được đặt trước trong ROM và những thời điểm do người sử dụng tự đặt vào Hệ Thống qua bàn phím).

_ Việc báo hiệu có thể được thực hiện bằng nhiều cách khác nhau.

_ Thăm dò các thiết bị phát hiện hỏa hoạn (Sensors) và phát tín hiệu báo động khẩn cấp khi có hỏa hoạn xảy ra.

Trong khuôn khổ của luận văn tốt nghiệp, người viết chỉ thiết kế Hệ Thống thực hiện việc tạo thời gian thực và tự động báo hiệu tại những thời điểm đã được qui định. Hệ Thống có tên gọi Hệ Thống Báo Giờ Tự Độngđược thiết kế nhằm mục đích thay thế người quản lý tự động báo hiệu tại các thời điểm trong ngày một cách chính xác.


II- KHẢ NĂNG CỦA HỆ THỐNG BÁO GIỜ TỰ ĐỘNG:

Với tên gọi Hệ Thống Báo Giờ Tự ĐộngHệ Thống có những khả năng sau:

_ Cho phép theo dõi thời gian thực (Gồm thứ, giờ, phút và giây) và điều chỉnh thời gian thực.

_ Tự động báo hiệu tại những thời điểm cố định hằng ngày (Những thời điểm này được đặt sẵn theo yêu cầu nơi sử dụng). Không báo hiệu vào ngày thứ 7 và Chủ nhật.

_ Cho phép người sử dụng đặt vài thời điểm báo hiệu đột xuất trong ngày.

_ Người sử dụng có thể cấm báo hiệu tại những thời điểm nào đó trong ngày.

_ Cho phép xem lại hay xóa mất bất kì thời điểm nào do người sử dụng tự đặt vào Hệ Thống.

_ Tiếng chuông báo hiệu đa dạng: số hồi chuông, độ dài hồi chuông được thay đổi nhằm thể hiện mục đích mỗi thời điểm báo hiệu.

_ Hệ Thống vẫn làm việc khi mất điện lưới (nhưng sẽ không báo hiệu).

_ Hệ Thống có đèn chỉ thị yêu cầu đặt lại thời gian thực khi việc tạo thời gian thực bị gián đoạn.


_ Hệ Thống có khả năng phát hiện ra lỗi và sẽ gởi thông báo lỗi đến người sử dụng qua led hiển thị.

III-MỘT SỐ QUI ƯỚC :

Để ngắn gọn trong trình bày, người viết xin qui ước các thuật ngữ sau đây:

_ Điều chỉnh thời gian thực: là thay đổi thời điểm hiện tại, gọi là SETTIME

_ Thời điểm báo hiệu thường trực: là những thời điểm báo hiệu cố định hàng ngày, chẳng hạn như giờ học trong trường học, gọi là RESTIME.

_ Thời điểm báo hiệu tức thời: là những thời điểm do ngươi sử dụng tự đặt vào Hệ Thống để báo hiệu đột xuất, gọi là HOTTIME.

_ Thời điểm cấm báo hiệu: là những thời điểm do sử dụng tự đặt vào để cấm báo hiệu tại bất kì một thời điểm nào trong ngày, gọi là SKIPTIME.

IV-PHƯƠNG HƯỚNG GIẢI QUYẾT:

Để Hệ Thống có những tính năng mạnh mẽ, dễ dàng trong sử dụng, người viết dùng kỹ thuật vi xử lý để thiết kế Hệ Thống. Hoạt động của Hệ Thống là sự kết hợp chặt chẽ giữa phần cứng và phần mềm.

4.1-Giải pháp phần cứng:

Hệ Thống được thiết kế dựa trên bộ vi xử lí (P Micro processor) Z80 của hãng Zilog. Hệ Thống có:

_ Bộ nhớ ROM và RAM phục vụ cho hoạt động của Hệ Thống.

_ Tín hiệu định thời để phục vụ việc tạo thời gian thực bằng phần mềm.

_ Bàn phím để người sử dụng giao tiếp với Hệ Thống.


_ Mạch kiểm soát các vectơ ngắt INT mode 0 dùng cho việc phục vụ các chức năng: Settime, Hottime và Skiptime.

_ 7 led 7 đoạn để hiển thị thời gian (Thứ, giờ, phút và giây).

_ Mạch điều khiển chuông điện để báo hiệu.

_ Mạch nguồn cấp điện có accu dự phòng khi mất điện lưới.

4.2. Giải pháp phần mềm:

Phần mềm Hệ Thống được thiết kế dựa trên cấu tạo phần cứng Hệ Thống được tổ chức như sau:

_ Một IC ROM chứa phần mềm Hệ Thống và bảng Restime.

_ Một IC RAM được dùng làm vùng đệm, Stack, bảng Hottime, bảng Skiptime.

_ Chương trình ra quyết định báo hiệu và điều khiển báo hiệu.


_ Chương trình phục vụ ngắt NMI để đếm thời gian thực.



_ Các chương trình phục vụ các ngắt INT mode 0 để thực hiện các chức năng: Settime, Hottime và Skiptime.

_ Xử lý bàn phím và hiển thị để người sử dụng giao tiếp với Hệ Thống.

Trên đây là giải pháp kỹ thuật mà người viết chọn để thiết kế Hệ Thống.

V- NGUYÊN LÝ CHUNG CỦA HỆ THỐNG BÁO GIỜ TỰ ĐỘNG:

Bộ vi xử lý (P) Z80 là một P 8 bit, có khả năng truy xuất 64KB bộ nhớ, có nhiều kiểu ngắt. Tần số xung clock tối đa 2.5MHz (họ Z80 CPU). Tập lệnh gồm 158 lệnh.

Trong quá trình hoạt động của Hệ Thống, cứ mỗi giây tín hiệu định thời tác động vào ngắt NMI để gọi chương trình tạo thời gian thực và mỗi giây thời gian thực được hiển thị trên đèn led 7 đoạn.

Chương trình phần mềm thường xuyên thực hiện quá trình so sánh thời gian thực với từng Restime, Hottime, Skiptime và thứ trong tuần để ra quyết định báo hiệu.


Khi có tín hiệu gọi ngắt INT , tùy vào địa chỉ ngắt mode 0, các chức năng như: Xem_Xóa_Đặt Hottime, Xem_Xóa_Đặt Skiptime và Settime sẽ được chương trình tương ứng phục vụ. Khi đó, thông qua bàn phím và đèn hiển thị người sử dụng sẽ thực hiện các chức năng đã chọn.

Nhìn chung:

Người viết thấy yêu cầu phần cứng ngoài bộ vi xử lí và bộ nhớ (ROM và RAM) cần phải có mạch hiển thị, bàn phím, mạch kiểm soát ngắt mode 0, mạch điều khiển báo hiệu, mạch tạo xung đồng hồ và định thời.

Vêà phần mềm, ngoài việc khởi động Hệ Thống cần phải thực hiện các nhiệm vụ sau: tạo thời gian thực, quyết định việc báo hiệu và điều khiển báo hiệu. Phục vụ người sử dụng điều chỉnh thời gian thực, thực hiện các chức năng về Hottime và Skiptime. Điều khiển mạch hiển thị để hiển thị các thông tin cần thiết như thời gian thực, các Hottime và Skiptime, tạo thông báo lỗi. Xử lí bàn phím để nhận lệnh từ người sử dụng.


PHAÀN II

NOÄI DUNG


I-GIỚI THIỆU CÁC DẠNG MẠCH ĐÃ CÓ TRONG NƯỚC.

Trước đây đã có một vài Hệ Thống báo Giờ Tự Động được thiết kế và thi công. Tuy nhiên, do chúng được thiết kế bằng cách dùng “Eprom” nên đã vấp phải một vài hạn chế về tính năng trong sử dụng cũng như việc tính toán phức tạp trong kết nối phần cứng. Sau đây, người viết sẽ giới thiệu hai dạng mạch dùng “Eprom” điển hình.

1.1_ Đề tài : “Thiết Kế Và Thi Công Máy Báo Tiết Cho Trường ĐHSPKT”

Gvhd: Trần Minh Chánh.

Svth : Nguyễn Đình Mạnh Chiến Trần Thị Bạch Ngọc

Sơ đồ khối chi tiết mạch:



CHIA 30

OR

ĐẾM

NHỚ VÀ ĐỆM

DAO ĐỘNG

1Hz

NGUOÀN 12V.5V

DAO ĐỘNG CHỈNH

ĐIỀU KHIỂN BÁO

CHỈ THỊ



CÔNG SUẤT VÀ TẢI

Trình bày sơ đồ khối:

_ Khối dao động: tạo tần số chuẩn 1Hz làm tần số cơ sở để mạch hoạt động và tạo xung điều khiển mạch báo giây.

_ Khối chia 30: tạo tần số 1/30 Hz tức ½ giây là tần số để mạch đếm thay đổi địa chỉ bộ nhớ.

_ Khối đếm: Là mạch đếm lên làm tăng dần địa chỉ bộ nhớ sau mỗi xung ½ giây. Có thể đặt lại trạng thái ban đầu (reset) bằng tay hoặc từ ngõ ra của bộ nhớ.

_ Khối nhớ và đệm: ghi toàn bộ chương trình báo tiết học trong 24 giờ.

Tạo xung cho mạch chỉ thị (1 phút) .

Tạo xung reset cho mạch chỉ thị sau 60 phút, sau 24 giờ.

Tạo xung reset toàn mạch sau 24 giờ (bằng cách reset mạch đếm về trạng thái ban đầu mà tại địa chỉ đó chứa đoạn chương trình reset toàn mạch).


_ Khối điều khiển báo hiệu:

Tạo thời gian dài (7’) cho đầu tiết học.

Tạo thời gian ngắn (3’) cho cuối tiết học.

Tắt mở báo bằng tay theo yêu cầu sử dụng (ALARM ON/OFF).

_ Khối công suất: gồm transistor công suất, rơle đóng cắt tải AC, DC (110V, 220V).

_ Khối dao động điều chỉnh:

Tạo tần số dao động cao hơn tần số dao động cơ bản để điều chỉnh lại đồng hồ báo giờ.

Chỉnh với tốc độ nhanh.

Chỉnh với tốc độ chậm.

_ Khối nguồn: Gồm có mạch ổn áp, mạch bảo vệ nhằm cực tính nguồn accu từ bên ngoài

Nguyên lý hoạt động cơ bản của hệ thống như sau:

Dữ liệu từ 0 đến 23 giờ và tín hiệu điều khiển báo chuông được nạp trong một IC ROM 2732. Dữ liệu này không xuất trực tiếp ra led 7 đoạn để hiển thị mà chúng có nhiệm vụ tạo ra xung clock cho mạch đếm BCD và xung reset cho mạch đếm sau 60 phút và sau 24 giờ.

Nguyên tắc tạo ra xung clock cho mạch đếm BCD như sau :

Cứ mỗi phút ở ngõ ra của IC ROM sẽ xuất hai 2 byte, ở bit D0 của byte thứ nhất có giá trị là 0 và byte thứ 2 có giá trị là 1, IC ROM cứ tuần hoàn xuất ra dữ liệu như thế nên ở bit D0 ngõ ra sẽ tạo thành một chuỗi xung liên tục có tần số là 1/60 Hz hay 1 phút (dạng chuỗi xung có được mô tả ở hình phía dưới) kích cho mạch đếm BCD để mạch đếm này cứ đếm tăng lên, sau đó số đếm BCD này sẽ được giải mã từ BCD ra led 7 đoạn để hiển thị.

Địa chỉ : 0h 1h 2h 3h 4h


D0 0 1 0 1 0



Dạng sóng



1/60 Hz

Do mạch đếm là mạch đếm BCD nên ở phút 60 phải có xung reset mạch đếm phút về 00 và tăng giờ lên 1, tương tự khi giờ bằng 24 phải reset giờ về 00.


Nguyên tắc reset mạch đếm phút và giờ như sau:

Bit D1 dùng để reset mạch đếm phút. Giả sử mạch đếm phút được reset ở mức 0 thì tất cả các byte ở phút 60 phải đặt bit D1 = 0 còn các byte khác phải đặt bit D1 = 1.

Tương tự như reset mạch đếm phút, bit D2 dùng để reset mạch đếm giờ. Byte tương ứng với 24 giờ phải đặt bit D2 = 0 (giả sử mạch đếm giờ có reset tác động mức 0) còn các byte còn lại phải đặt bit D2 = 1.

VD : Mạch reset phút tác động mức 0 thì phải ghi chương trình như sau:


Địa chỉ :


Giờ ứng :


D1 :

118D


0:59


1

119D 102D


0:59:30 1:00:00


1 0

121D


1:00:30


1



Phút

Chục phút

Giờ


Chục giờ

Có thể bạn quan tâm!

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

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


IC1

CO ck

IC2



Reset 60 phút


IC3

CO ck

IC4



Reset 24 giờ


D0 ck CO ck


D1

D2


SƠ ĐỒ MẠCH ĐẾM BCD CHO PHÚT, GIỜ


Nguyên tắc xuất tín hiệu điều khiển chuông:

Sử dụng bit D4 để phát tín hiệu điều khiển chuông cho đầu tiết học và bit D5 để phát tín hiệu điều khiển chuông ở cuối tiết học, phải dùng 2 bit để điều khiển chuông là do phải sử dụng 2 mạch dao động đơn ổn, một mạch định thời gian dài cho đầu tiết và một mạch định thời gian ngắn cho cuối tiết.

1.2 _ Đề tài : “Thiết Kế Và Thi Công Mạch Đồng Hồ Báo Giờ”

Giáo viên hướng dẫn : Nguyễn Phương Quang Sinh viên thực hiện : Võ Đức Trí


: Đoàn Nam Sơn

Lớp : 95KĐĐ3/7

Sơ đồ khối chi tiết mạch.


KHỐI ĐIỀU KHIỂN BÁO

KHỐI HIỂN THỊ

KHỐI GIẢI ĐA HỢP, CHỌN KÊNH

KHOÁI CHOÁT

BỘ NHỚ

KHỐI DAO ĐỘNG VÀ CHIA TẦN SỐ

BỘ GIẢI MÃ ĐỊA CHỈ

KHỐI DAO ĐỘNG ĐIỀU CHỈNH

KHOÁI NGUOÀN

Nhiệm vụ các khối:

_ Khối tạo xung: khối này có chức năng tạo dao động và chia tần số để được xung 1 Hz. Xung này được đưa đến bộ đếm và giải mã địa chỉ bộ nhớ.

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

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