Tải bản đầy đủ (.pdf) (104 trang)

ứng dụng cpu z80 thiết kế và thi công hệ thống báo giờ tự động

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.5 MB, 104 trang )

Header Page 1 of 126.

Luận văn tốt nghiệp
BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
KHOA ĐIỆN _ ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ

LUẬN VĂN TỐT NGHIỆP
ĐỀ TÀI:

ỨNG DỤNG CPU Z80
THIẾT KẾ VÀ THI CÔNG
HỆ THỐNG BÁO GIỜ TỰ ĐỘNG

SVTH : PHAN THANH TÀI
LỚP
: 95KĐĐ
GVHD : TS_ TRẦN THU HÀ

TP. HỒ CHÍ MINH Tháng 3-2000

Footer Page 1 of 126.

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


Header Page 2 of 126.

Luận văn tốt nghiệp


Đại học quốc gia TP. HCM

Cộng hòa xã hội chủ nghóa Việt Nam

Trường Đại Học Sư Phạm Kỹ Thuật

Độc lập – Tự do – Hạnh phúc

KHOA ĐIỆN _ ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ
NHIỆM VỤ LUẬN VĂN TỐT NGHIỆP
Họ và tên : PHAN THANH TÀI
Lớp

: 95KĐĐ

1- Tên đề tài:
ỨNG DỤNG CPU Z80
THIẾT KẾ VÀ THI CÔNG HỆ THỐN G BÁO GIỜ TỰ ĐỘNG

2- Các số liệu ban đầu:
………………………………………………………………………………………
…………………………………………………………………………
………………………………………………………………………………………
…………………………………………………………………………
………………………………………………………………………………………
…………………………………………………………………………
3- Nội dung các phần thuyết minh và tính toán :
………………………………………………………………………………………
…………………………………………………………………………

………………………………………………………………………………………
…………………………………………………………………………
………………………………………………………………………………………
…………………………………………………………………………
………………………………………………………………………………………
…………………………………………………………………………
4- Các bảng vẽ và đồ thò:
………………………………………………………………………………………
…………………………………………………………………………
………………………………………………………………………………………
…………………………………………………………………………
………………………………………………………………………………………
…………………………………………………………………………
5- Cán bộ hướng dẫn: TS-Trần Thu Hà
Footer Page 2 of 126.

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


Header Page 3 of 126.

Luận văn tốt nghiệp

6- Ngày giao nhiệm vụ:
7- Ngày hoàn thành nhiệm vụ: 28/02/2000
Cán bộ hướng dẫn ký tên

Thông qua bộ môn
Ngày


tháng

năm 2000

Chủ nhiệm bộ môn

LỜI CẢM TẠ
Có lẽ không một ai có thể quên được những mái trường mà mình đã đi qua
trong một thời thơ ấu cho đến lúc trưởng thành và tôi không phải là một ngoại
lệ. Các mái trường đã lần lượt nối tiếp nâng dần từng bước đi lên của tôi. Cứ sau
mỗi chặng đường đi qua, tôi lại thấy mình lớn lên, vững vàng hơn trong kiến thức
và năng lực. Chặng đường vừa đi qua là chặng đường cuối cùng của thời cắp sách
đến trường đó là năm năm dài đầy cam go và thử thách dưới mái trường Đại Học
Sư Phạm Kỹ Thuật. Nơi đây đã không chỉ đơn giản cung cấp cho tôi những kiến
thức khoa học kỹ thuật mà quý hơn cả là đã nhóm trong tôi ngọn lửa yêu khoa
học và rèn luyện cho tôi một nghò lực vững vàng để làm hành trang bước vào đời.
Bên cạnh đó gia đình còn là nguồn động lực to lớn về tinh thần lẫn vật
chất giúp cho tôi bước đi trên con đường mà tôi đã chọn.
Con xin cảm ơn ba mẹ đã không quản khó nhọc lo toan chăm chút cho con,
nuôi dưỡng con thành người. Nay con kính dâng lên ba mẹ những gì con đã gặt
hái được trên ghế nhà trường.
Xin cảm ơn những mái trường mà tôi đã đi qua suốt thời niên thiếu. Tôi sẽ
ghi nhớ mãi công ơn của tất cả thầy cô đã dìu dắt tôi từ những buổi học vở lòng
đến nay. Cảm ơn trường Đại Học Sư Phạm Kỹ Thuật, nơi in đậm những vui buồn,
thất bại và thành công của tuổi sinh viên. Kính lời cảm ơn khoa điện cùng các
thầy cô của khoa, tất cả như những người thân đã dành nhiều tình cảm tốt đẹp đối
với tôi và tạo mọi điều kiện thuận lợi để tôi học tập tốt.
Gởi đến cô Trần Thu Hà lời ghi ơn vô vàn, người cô đã trực tiếp theo sát,
tận tình hướng dẫn tôi trong suốt quá trình làm luận văn.
Sau cùng là lời cảm ơn chân thành về những ý kiến đóng góp của q thầy cô

và tất cả bạn đọc.

Footer Page 3 of 126.

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


Header Page 4 of 126.

Luận văn tốt nghiệp

Footer Page 4 of 126.

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


Header Page 5 of 126.

Luận văn tốt nghiệp

LỜI NÓI ĐẦU
Kỹ thuật vi xử lí với tốc độ phát triển nhanh đã và đang mang đến những thay đổi to
lớn trong khoa học và công nghệ cũng như trong đời sống hàng ngày. Ngày nay, các
thiết bò, máy móc ngày càng trở nên thông minh hơn và dễ sử dụng hơn. Các công việc
được thực hiện với hiệu quả cao hơn. Đó cũng nhờ vào kỹ thuật vi xử lí.
Kỹ thuật vi xử lí là kỹ thuật của tương lai, là chìa khóa đi vào công nghệ hiện
đại. Đối với sinh viên chuyên ngành Điện Tử, đây là một lónh vực mới, hứa hẹn mở ra
nhiều triển vọng. Để góp phần làm nền tảng ban đầu cho việc học tậ p, tìm hiểu kỹ thuật
vi xử lí người viết đề nghò thực hiện đề tài : ỨNG DỤNG CPU Z80 VÀO HỆ THỐNG
BÁO GIỜ TỰ ĐỘNG.


Trong quá trình thực hiện đề tài, mặc dù người viết đã rất cố gắng, xong chắc chắn
không tránh khỏi thiếu xót. Rất mong nhận được sự góp ý, phê bình và chỉ dẫn của q
thầy cô và bạn đọc.

Footer Page 5 of 126.

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


Header Page 6 of 126.

Luận văn tốt nghiệp
MỤC LỤC

Lời mở đầu
Mục lục
PHẦN I : GIỚI THIỆU ĐỀ TÀI
I- Mục tiêu đề tài.
II- Khả năng của hệ thống báo giờ tự động.
III- Một số qui ước.
IV- Phương hướng giải quyết.
4.1- Giải pháp phần cứng
4.2- Giải pháp phần mềm
V- Nguyên lý chung của hệ thống báo giờ tự động.
PHẦN II : NỘI DUNG
I- Giới thiệu các dạng mạch đã có trong nước.
1.1- Đề tài “Thiết Kế Và Thi Công Máy Báo Tiết Cho
Trường ĐHSPKT”
1.2- Đề tài “Thiết Kế Và Thi Công Mạch Đồng Hồ

Báo Giờ”ø.
1.3-Ưu nhược điểm của hệ thống báo giờ tự động dùng “EPROM”
và vi xử lí Z80.
II- Thiết kế phần cứng.
2.1- Tổng quát phần cứng hệ thống
2.2- Bộ nhớ hệ thống và giải mã đòa chỉ
2.2.1- Bộ nhớ hệ thống
2.2.2- Mạch giải mã đòa chỉ
2.2.3- Tóm tắt
2.3- Khảo sát tính chất ngắt NMI
2.4- Cấu tạo và nguyên tắt hoạt động các khối mạch
2.4.1- Mạch tạo xung đồng hồ
2.4.2- Mạch đònh thời
2.4.3- Mạch bàn phím (Keypro)

Footer Page 6 of 126.

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


Header Page 7 of 126.

Luận văn tốt nghiệp
2.4.4- Mạch kiểm soát ngắt
2.4.5- Mạch hiển thò (Display)
2.4.6- Mạch điều khiển báo hiệu
2.4.7- Mạch cung cấp điện
2.5- Sơ đồ chi tiết mạch điện hệ thống.
III- Thiết kế phần mềm
3.1- Tổng quát phần mềm hệ thống

3.1.1- Chức năng báo hiệu tự động
3.1.2- Chức năng tạo thời gian thực
3.1.3- Chức năng điều chỉnh thời gian thực
3.1.4- Chức năng về Hottime (Xem – Xóa – Đặt)
3.1.5- Chức năng về Skiptime (Xem – Xóa – Đặt)
3.1.6- Các chương trình con
 Chương trình con hiển thò (tên là Display)
 Chương trình xử lí bàn phím (tên là Keypro)
 Chương trình báo lỗi (tên là ERROR)
3.2- Tổ chức dữ liệu
3.2.1- Thời gian thực
3.2.2- Restime
3.2.3- Hottime
3.2.4- Skiptime
3.2.5- Mã chuông
3.2.6- Các biến
3.2.7- Phân chia vùng nhớ
3.3- Các chương trình
3.3.1- Chương trình MAIN
3.3.2- Chương trình RTP (Real Time Program)
3.3.3- Chương trình Settime
3.3.4- Chương trình Hottime
3.3.5- Chương Trình Skiptime

Footer Page 7 of 126.

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


Header Page 8 of 126.


Luận văn tốt nghiệp
3.3.6- Chương trình con Display
3.3.7- Chương trình con Keypro
3.3.8- Chương trình con ERROR

IV- Thi công
PHẦN III : KẾT LUẬN VÀ KIẾN NGHỊ
I- Kết quả thực nghiệm
II- Mô tả hệ thống và hướng dẫn sử dụng
2.1- Chức năng điều chỉnh thời gian thực (Settime)
2.2- Chức năng về Hottime
2.3- Chức năng về Skiptime
III- Kết luận và hướng phát triển của đề tài
IV- Kiến nghò
Phụ lục
Tài liệu tham khảo

Footer Page 8 of 126.

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


Header Page 9 of 126.

Luận văn tốt nghiệp

PHẦN I
GIỚI THIỆU ĐỀ TÀI


Footer Page 9 of 126.

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


Header Page 10 of 126.

Luận văn tốt nghiệp

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ốn g
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 độn g
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ự Động” Hệ 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.

Footer Page 10 of 126.

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


Header Page 11 of 126.

Luận văn tốt nghiệp
_ 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ùn g
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.

Footer Page 11 of 126.


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


Header Page 12 of 126.

Luận văn tốt nghiệp

_ 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.

Footer Page 12 of 126.

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


Header Page 13 of 126.

Luận văn tốt nghiệp

PHẦN II

NỘI DUNG

Footer Page 13 of 126.

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


Header Page 14 of 126.

Luận văn tốt nghiệp

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:
DAO ĐỘNG
1Hz

NGUỒN
12V.5V

CHIA 30

OR

DAO ĐỘNG
CHỈNH

ĐẾM

NHỚ VÀ ĐỆM

Đ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).

Footer Page 14 of 126.

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


Header Page 15 of 126.


Luận văn tốt nghiệp
_ 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

0

1


0

1

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.

Footer Page 15 of 126.

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


Header Page 16 of 126.

Luận văn tốt nghiệp
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ỉ :

118D

119D


102D

121D

Giờ ứng :

0:59

0:59:30

1:00:00

1:00:30

1

1

0

D1

:

Phút

D0 ck

IC1


1
Giờ

Chục
phút

CO ck

IC2

CO ck

Reset 60 phút
D1

IC3

Chục
giờ

CO ck

IC4

Reset 24 giờ
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

Footer Page 16 of 126.

: Võ Đức Trí

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


Header Page 17 of 126.

Luận văn tốt nghiệp
: Đ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
HP, CHỌN KÊNH

KHỐI CHỐ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

KHỐI NGUỒ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ớ.

Footer Page 17 of 126.

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


Header Page 18 of 126.

Luận văn tốt nghiệp


_ Khối giải mã đòa chỉ bộ nhớ: khối này là bộ đếm lên nhận xung clock với
tần số 1/60 Hz (1 phút), 11 ngõ ra của bộ đếm được đưa đến 11 đường đòa chỉ từ
A2 đến A12 của IC nhớ 2764.
_ Bộ nhớ: Là nơi lưu trữ dữ liệu đã nạp từ trước. Mạch giải mã đòa chỉ bộ nhớ sẽ
làm cho đòa chỉ bộ nhớ thay đổi, khi đó dữ liệu sẽ được xuất ra mạch bên ngoài qua
mạch đệm dữ liệu.
Bộ chốt dữ liệu: có nhiệm vụ chốt dữ liệu và giao tiếp với bộ nhớ để hiển thò dữ
liệu ra led 7 đoạn.
_ Khối giải mã và chọn kênh: nhận xung từ bộ dao động sau đó giải mã ở ngõ ra để
chọn bộ đệm.
_ Khối hiển thò: cho phép người sử dụng xem được giờ, phút thông qua led 7 đoạn.
_ Khối điều khiển báo: đây là khối thực hiện nhiệm vụ chính, nó có nhiệm vụ phát
ra tín hiệu điều khiển chuông.
_ 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 để
cho phép người sử dụng chỉnh lại giờ, phút của đồng hồ.
_ Khối nguồn: khối này đảm bảo cho toàn mạch hoạt động liên tục, gồm có mạch
ổn áp và accu dự phòng.
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 lưu trong
Eprom. Dữ liệu này sẽ được xuất ra led 7 đoạn và mạch điều khiển báo chuông chỉ qua
bộ đệm mà không cần giải mã, mỗi phút sẽ có 4 byte dữ liệu gồm 2 byte cho giờ và 2
byte cho phút xuất lần lượt ra 2 led giờ và 2 led phút, chúng sẽ vẫn cứ xuất ra lần lượt
như thế (quét) với tần số khá cao để người quan sát không còn thấy được sự chớp tắt
của nó nữa. Dữ liệu xuất ra ở bộ đệm có 32 đường, trong đó 28 đường cung cấp cho hiển
thò giờ, phút, một đường cấp cho hiển thò AM/PM thông qua 1 FF-T, một đường cấp cho
mạch điều khiển chuông để báo giờ.
Dựa vào nguyên tắc hoạt động của hai dạng mạch nêu trên người viết nhận thấy
rằng mặc dù nguyên tắc hoạt động của chúng khác nhau nhưng chúng đều có chung
những khả năng sau:
_ Tạo ra thời gian thực gồm giờ và phút.

_ Điều chỉnh thời gian thực, cách điều chỉnh là điều chỉnh với tốc độ nhanh và
chậm nhưng không có khả năng điều chỉnh giờ, phút độc lập với nhau cũng như không
có khả năng điều chỉnh theo hướng giảm giờ, phút.
_ Tự động báo hiệu tại những thời điểm đã được qui đònh, những thời điểm này
là cố đònh và được đặt trước trong EPROM.

Footer Page 18 of 126.

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


Header Page 19 of 126.

Luận văn tốt nghiệp
1.3- Ưu nhược điểm của hệ thống bao giờ tự động dùng “EPROM” và vi xử lí
Z80.
Như vậy hệ thống báo giờ tự động mà người viết thiết kế có được những ưu, nhược
điểm so với 2 dạng mạch nêu trên như sau:
Ưu điểm:

_ Hiển thò được thêm thứ và giây.
_ Điều chỉnh thứ, giờ, phút độc lập với nhau. Có thể điều chỉnh thời gian theo
hướng tăng hoặc giảm.
_ Có thể đặt vào hệ thống 10 thời điểm báo hiệu đột xuất thông qua bàn phím
_ Có thể đặt vào hệ thống 10 thời điểm cấm báo hiệu thông qua bàn phím
_ Có thể xem lại và xóa đi các thời điểm báo hiệu đột xuất và các thời điểm cấm
báo hiệu do người sử dụng đặt vào hệ thống.
_ Không báo hiệu vào ngày thứ bảy và chủ nhật (giải quyết bằng phần mềm).
_ Tín hiệu báo chuông được điều khiển bằng phần mềm nên rất đa dạng nhằm mục
đích thể hiện ý nghóa của loại thời điểm báo hiệu.

_ Có chương trình báo lỗi nhằm tăng thêm tính sống động của hệ thống.
Nhược điểm:
_ Hệ thống sử dụng nhiều IC hơn, nhưng cách kết nối các bộ phận như bộ nhớ, bàn
phím, hiển thò lại đơn giản hơn.
_ Cách viết phần mềm cho hệ thống khó hơn

Footer Page 19 of 126.

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


Header Page 20 of 126.

Luận văn tốt nghiệp

II_ THIẾT KẾ PHẦN CỨNG.
2.1_ Tổng quát phần cứng Hệ Thống.
Phần cứng Hệ Thống được xây dựng với yêu cầu đơn giản nhưng hiệu quả,
phục vụ tốt cho các hoạt động của Hệ Thống. Sơ đồ khối tổng quát của Hệ
Thống được mô tả ở hình 1.
 Trình bày sơ đồ khối
Thành phần cốt lõi của Hệ Thống là bộ vi xử lí (P) Z80, các vi mạch nhớ
ROM (Read Only Memory), RAM (Random Access Memory). Các bộ phận bổ
trợ như mạch tạo xung đồng hồ và đònh thời (Clock generator và Timer), mạch
bàn phím (Keyboard), mạch hiển thò (Display), mạch kiểm soát ngắt INT
(Interrupt controller) và mạch điều khiển báo hiệu (Bell Driver).
Hệ Thống sẽ gồm có 1 vi mạch ROM và 1 vi mạch RAM. Vi mạch ROM sẽ
lưu trữ phần mềm Hệ Thống và các thời điểm báo hiệu Restime. Vi mạch RAM
dùng để làm vùng nhớ làm việc của Hệ Thống và là vùng đệm để lưu trữ các
Hottime và Skiptime.

Mạch tạo xung đồng hồ và đònh thời sẽ phát ra xung nhòp cho hoạt động của
Hệ Thống và tín hiệu đònh thời tần số 1Hz tác động vào ngắt NMI của P phục
vụ việc tạo thời gian thực.
Bàn phím gồm 5 phím chức năng (Xây dựng theo nguyên tắc ánh xạ bộ nhớ)
cho phép người sử dụng điều chỉnh thời gian thực cũng như đặt các Hottime và
Skiptime.
Mạch hiển thò gồm 7 led 7 đoạn sẽ thông báo thời gian (Thứ, giờ, phút và
giây) và cho phép người sử dụng theo dõi được các thao tác trên bàn phím.
Mạch kiểm soát ngắt giúp người sử dụng lựa chọn các chế độ hoạt động
Settime, Hottime và Skiptime tương ứng với các ngắt INT mode 0.
Mạch điều khiển báo hiệu phát ra tín hiệu theo sự điều khiển của phần mềm.

Footer Page 20 of 126.

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


Header Page 21 of 126.

Luận văn tốt nghiệp

POWER

SUPPLY

EPROM
8KB

RAM


BELL

2KB

DRIVER

KEYBO
ARD

DISPLAY

ADDRESS BUS

VXL
Z80

CONTROL BUS
DATA BUS

1Hz

277khZ

TIMER

CLOCK

INTERR
UPT
CONTR

OLLER

Hình 1 : SƠ ĐỒ KHỐI TỔNG QUÁT HỆ THỐNG

Hệ thống báo giờ tự động
Footer Page 21 of 126.


Header Page 22 of 126.

Footer Page 22 of 126.


Header Page 23 of 126.

Luận văn tốt nghiệp
 Nguyên lí hoạt động tổng quát:

Hệ thống báo giờ tự động là một hệ vi xử lí nên 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.
Vi xử lí được đặt ở chế độ “auto reset” nên khi mới mở điện vi xử lí sẽ bắt
đầu đọc bộ nhớ tại đòa chỉ 0000h. Đây cũng là đòa chỉ bắt đầu của chương trình
hệ thống. Ngoài ra, mạch kiểm soát ngắt sẽ cấm tín hiệu Timer tác động vào
ngắt NMI của Z80 nhằm mục đích tránh việc tạo thời gian thực sai dẫn đến hệ
thống báo giờ sai.
Về mặt phần mềm:
Khi mới mở điện chương trình hệ thống sẽ khởi động mạch hiển thò (khởi tạo
8279) để mạch hiển thò sẵn sàng hiển thò dữ liệu thời gian thực từ vi xử lí gởi tới.
Ngoài ra, chương trình hệ thống còn reset mạch báo chuông …
Mạch bàn phím hoạt động khi chương trình con Keypro được gọi để phục vụ

cho Settime, Hottime hay Skiptime.
Phần “cấu tạo và nguyên tắt hoạt động của các khối mạch” sẽ giúp chúng ta
hiểu rõ hơn hoạt động của Hệ Thống. Bước đầu tiên trong việc thiết kế Hệ
Thống là phân bố bộ nhớ và thực hiện giải mã đòa chỉ cho các bộ phận của Hệ
Thống.

Footer Page 23 of 126.

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


Header Page 24 of 126.

Luận văn tốt nghiệp
2.2_Bộ nhớ Hệ Thống và giải mã đòa chỉ:
2.2.1_Bộ nhớ Hệ Thống:

Hệ Thống báo giờ tự động là một hệ vi xử lí nên việc phân bố bộ nhớ Hệ
Thống là hết sức cần thiết. Ngoài bộ nhớ ROM, RAM Hệ Thống còn có các bộ
phận: bàn phím, mạch hiển thò và mạch điều khiển báo hiệu. Các bộ phận này
được xem như bộ nhớ. Bộ vi xử lí sẽ truy xuất các khối mạch này giống như truy
xuất bộ nhớ (phương pháp ánh xạ bộ nhớ).
Do yêu cầu hoạt động với vùng nhớ nhỏ. Hệ Thống chỉ sử dụng 20KB
đầu tiên (0000h – 4FFFh) trong không gian 64KB mà Z80 quản lí. Với yêu cầu
trên bộ nhớ sẽ được phân chia thành các vùng nhớ dành cho ROM, RAM, vùng
nhớ dành cho mạch hiển thò, mạch báo hiệu và bàn phím.
Để đơn giản, bộ nhớ Hệ Thống sẽ chia thành 5 vùng với dung lượng
4KB/vùng được phân bố như sau:
4FFFh
MẠCH BÀN PHÍM


4KB

MẠCH BÁO HIỆU

4KB

MẠCH HIỂN THỊ

4KB

CHƯA DÙNG

2KB

RAM

2KB

ROM

4KB

4000h
3FFFh
3000h
2FFFh
2000h
1FFFh
1800h

17FFh
1000h
0FFFh
0000h
Hình 2: BẢN ĐỒ BỘ NHỚ HỆ THỐNG
Vùng nhớ từ đòa chỉ 0000h đến 0FFFh dành cho IC ROM chứa phần mềm
Hệ Thống và lưu trữõ các Restime. IC ROM được dùng là 2732 (4KBx8). Bảng mô
tả hoạt động và sơ đồ chân chức năng như sau:
Footer Page 24 of 126.

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


Header Page 25 of 126.

Luận văn tốt nghiệp

CHẾ ĐỘ

CE

OE \Vpp

Vcc

OUTPUT

Read

VIL


VIL

Vcc

Dout

Stand by

VIH

X

Vcc

High Z

Program

VIL

Vpp

Vcc

Din

Program verify

VIL


VIL

Vcc

Dout

Program Inhibit

VIH

Vpp

Vcc

High Z

Bảng 1 : BẢNG MÔ TẢ HOẠT ĐỘNG CỦA IC – ROM 2732

Hình 3: SƠ ĐỒ CHÂN CHỨC NĂNG CỦA IC-ROM 2732
Vùng nhớ từ 1000h đến 1FFFh là vùng nhớ RAM dùng để làm ngăn xếp
(Stack), vùng đệm, bảng Hottime và bảng Skiptime. Với yêu cầu hiện tại, Hệ
Thống chỉ sử dụng 2KB từ 1000h đến 17FFh khi có yêu cầu mở rộng 2KB còn lại
sẽ được dùng đến. IC- RAM được chọn là loại RAM tónh (Static Ram) 6116
(2KBx8). IC 6116 có bảng mô tả hoạt động và sơ đồ chân chức năng như sau:

Footer Page 25 of 126.

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



×