Tải bản đầy đủ (.doc) (102 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 (1.2 MB, 102 trang )

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
Hệ thống báo giờ tự động
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ỐNG 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à
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
Hệ thống báo giờ tự động
Luận văn tốt nghiệp
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.
Hệ thống báo giờ tự động
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.

Hệ thống báo giờ tự động
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)
Hệ thống báo giờ tự động
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
Hệ thống báo giờ tự động
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
Hệ thống báo giờ tự động
Luận văn tốt nghiệp
PHẦN I
GIỚI THIỆU ĐỀ TÀI
Hệ thống báo giờ tự động
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ố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ự Độ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.
Hệ thống báo giờ tự động
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ù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.
Hệ thống báo giờ tự động
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.
Hệ thống báo giờ tự động
Luận văn tốt nghiệp
PHẦN II
NỘI DUNG
Hệ thống báo giờ tự động
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:


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ờ.
Hệ thống báo giờ tự động
CÔNG SUẤT
VÀ TẢI
DAO ĐỘNG
1Hz
CHIA 30
OR
NGUỒN
12V.5V
DAO ĐỘNG
CHỈNH
ĐẾM NHỚ VÀ ĐỆM
ĐIỀU KHIỂN
BÁO
CHỈ THỊ
Luận văn tốt nghiệp
• 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
Hệ thống báo giờ tự động

Luận văn tốt nghiệp
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ỉ : 118D 119D 102D 121D
Giờ ứng : 0:59 0:59:30 1:00:00 1:00:30
D1 : 1 1 0 1
D0 ck CO ck CO ck CO ck
Reset 60 phút Reset 24 giờ
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ờ”
Hệ thống báo giờ tự động
IC1 IC2
Phút
Chục
phút
IC3
Giờ

IC4
Chục
giờ
Luận văn tốt nghiệp
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.
Nhiệm vụ các khối:
Hệ thống báo giờ tự động
KHỐI ĐIỀU KHIỂN
BÁO
BỘ GIẢI MÃ ĐỊA CHỈ
KHỐI HIỂN THỊ
KHỐI GIẢI ĐA HP,
CHỌN KÊNH
KHỐI DAO ĐỘNG
ĐIỀU CHỈNH
KHỐI CHỐT
KHỐI DAO ĐỘNG
VÀ CHIA TẦN SỐ
KHỐI NGUỒN
BỘ NHỚ
Luận văn tốt nghiệp
_ 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ớ.
_ 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.
Hệ thống báo giờ tự động
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
Hệ thống báo giờ tự động
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.
Hệ thống báo giờ tự động
Luận văn tốt nghiệp
ADDRESS BUS

CONTROL BUS
DATA BUS
1Hz
277khZ
Hình 1 : SƠ ĐỒ KHỐI TỔNG QUÁT HỆ THỐNG
Hệ thống báo giờ tự động
VXL
Z80
VXL
Z80
POWER
SUPPLY
POWER
SUPPLY
TIMER
CLOCK
TIMER
CLOCK
EPROM
8KB
EPROM
8KB
RAM
2KB
RAM
2KB
BELL
DRIVER
BELL
DRIVER

INTERR
UPT
CONTR
OLLER
INTERR
UPT
CONTR
OLLER
KEYBO
ARD
KEYBO
ARD
DISPLAY
DISPLAY
• 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.
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
4000h
MẠCH BÀN PHÍM 4KB
3FFFh
3000h
MẠCH BÁO HIỆU 4KB
2FFFh
2000h
MẠCH HIỂN THỊ 4KB
1FFFh
1800h
CHƯA DÙNG 2KB

17FFh
1000h
RAM 2KB
0FFFh
0000h
ROM 4KB
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:
Hệ thống báo giờ tự động
Luận văn tốt nghiệp
CHẾ ĐỘ
CE
OE
\Vpp Vcc OUTPUT
Read
Stand by
Program
Program verify
Program Inhibit
V
IL
V
IH
V
IL
V
IL
V

IH
V
IL
X
Vpp
V
IL
Vpp
Vcc
Vcc
Vcc
Vcc
Vcc
Dout
High Z
Din
Dout
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:
Hệ thống báo giờ tự động
Luận văn tốt nghiệp
CHẾ ĐỘ
CE
OE

WE
DATA
Không chọn
Cấm xuất
Đọc (Read)
Ghi (Write)
H
L
L
L
X
H
L
H
X
H
H
L
High Z
High Z
Dout
Din
Bảng 2 : BẢNG MÔ TẢ HOẠT ĐỘNG CỦA IC – RAM 6116
Hình 4: SƠ ĐỒ CHÂN CHỨC NĂNG CỦA RAM 6116
Vùng nhớ còn lại được dành cho các bộ phận: bàn phím, hiển thò, điều
khiển báo hiệu.
2.2.2_ Mạch giải mã đòa chỉ:
Nhiệm vụ mạch giải mã đòa chỉ là thực hiện hoạt động giải mã để tạo ra
các tín hiệu : chọn IC nhớ ROM , RAM (
CS

chip select) và các tín hiệu điều
khiển chọn các bộ phận bàn phím, hiển thò, điều khiển báo hiệu.
Mạch giải mã đòa chỉ là một mạch giải mã từ 3 ra 8 đường sử dụng 3
đường đòa chỉ A12, A13, A14 để giải mã tạo 8 đường tín hiệu điều khiển và chọn
chip.
Bảng giải mã đòa chỉ chi tiết cùng các tín hiệu điều khiển như sau:
Hệ thống báo giờ tự động
Luận văn tốt nghiệp
A
15
A
14
A
13
A
12
A
11
A
10
……A
0
VÙNG NHỚ TÍN
HIỆU
CHỨC
NĂNG
0
0
0
0

0
0
0 0 0
0 0 1
0 0 1
0 1 0
0 1 1
1 0 0
x x …… x
0 x …… x
1 x …… x
x x ….. x
x x ….. x
x x …… x
0000h – 0FFFh
1000h - 17FFh
1800h – 1FFFh
2000h – 2FFFh
3000h - 3FFFh
4000h - 4FFFh
1CS
2CS
DPL
BDR
KBD
Chọn IC ROM
Chọn IC RAM
Chưa dùng
Hiển thò
Báo hiệu

Đọc bàn phím
Bảng 3 : BẢNG GIẢI MÃ ĐỊA CHỈ BỘ NHỚ.
Mạch giải mã đòa chỉ dùng IC 74LS138 có 8 ngõ ra tác động mức thấp.
Tín hiệu
MERQ
từ µP tác động vào 2 ngõ vào điều kiện G2A và G2B để điều
khiển việc giải mã chọn chip.
Hình 5: SƠ ĐỒ CHI TIẾT MẠCH GIẢI MÃ ĐỊA CHỈ.
2.2.3_Tóm tắt:
Mạch điện bộ nhớ Hệ Thống có cấu tạo như sau:
Hệ thống báo giờ tự động

×