THIẾT KẾ VÀ THI CÔNG LỊCH ĐIỆN TỬ ĐA NĂNG
NỘI DUNG ĐỒ ÁN
100 MB Bao gồm tất cả file,.lưu đồ giải thuật... thuyết minh, bản vẽ nguyên lý, bản vẽ thiết kế, FILE lập trình, ĐỒ ÁN TỐT NGHIỆP ĐIỆN tử THIẾT KẾ VÀ THI CÔNG LỊCH ĐIỆN TỬ ĐA NĂNG
LỜI MỞ ĐẦU
Với sự tiến bộ không ngừng của khoa học kỹ thuật, đặc biệt là ngành điện tử đã ứng dụng rất nhiều trong công nghiệp. Trong lĩnh vực điều khiển, từ khi công nghệ chế tạo loại vi mạch lập trình phát triển đã đem đến các kỹ thuật điều khiển hiện đại có nhiều ưu điểm so với việc sử dụng các mạch điều khiển được lắp ráp từ các linh kiện rời như kích thước mạch nhỏ, gọn, giá thành rẻ, độ làm việc tin cậy và công suất tiêu thụ thấp...
Ngày nay lĩnh vực điều khiển đã được ứng dụng rộng rãi trong các thiết bị, sản phẩm phục vụ cho nhu cầu sinh hoạt hằng ngày của con người như: máy giặt, tủ lạnh, lò vi ba... nhằm giúp cho đời sống ngày càng hiện đại và tiện lợi hơn.
Nhắc đến họ vi điều khiển AT89XX thì có lẽ nó đã quá quen thuộc đối với những người theo ngành điện tử vì những tính năng hay cũng như những ứng dụng rất thực tế của nó. Vì vậy nó đã được sử dụng rất nhiều trong tất cả các lĩnh vực. Hiện nay, đồng hồ số có tên là Lịch vạn niên xuất hiện rất nhiều trên thị trường với rất nhiều kiểu dáng và giá thành khác nhau. Các đồng hồ này thường có chung các tính năng như: hiển thị giờ, phút, giây, ngày, tháng, năm (âm dương lịch), thứ trong tuần, nhiệt độ,… nhưng tất cả đều chỉ được hiển thị trên led 7 đoạn không có khả năng cập nhật thông tin bằng câu chữ. Nhận thấy được điều đó cùng với những mong muốn của những người thực hiện đề tài là đem tất cả kiến thức và khả năng về lập trình vi điều khiển (họ AT89XX) ứng dụng vào trong thực tế do đó đề tài
Thiết kế và thi công LỊCH ĐIỆN TỬ ĐA NĂNG đã được ra đời.
LỊCH ĐIỆN TỬ ĐA NĂNG ngoài những tính năng như một lịch vạn niên nó còn có một số tính năng khác như: cập nhật được các thông tin về ngày tháng năm âm lịch, về các ngày lễ lớn trong năm cũng như những thông tin về câu chữ khác trên ma trận led: báo giờ, báo thức bằng nhạc chuông,…
Đề tài trên là sự kết hợp giữa VĐK AT89S52 với IC định giờ chuyên dụng (Real Time Clock), qua đó nó sẽ giúp cho những người thực hiện đề tài hiểu rõ hơn IC đồng hồ thời gian thực DS12C887. Do tài liệu tham khảo Tiếng Việt còn hạn chế, trình độ có hạn và kinh nghiệm trong thực tiễn còn non kém, nên đề tài chắc chắn còn nhiều thiếu sót. Rất mong nhận được những ý kiến đóng góp, giúp đỡ chân tình, quý báu của quý thầy cô cùng các bạn sinh viên.
MỤC LỤCo
PHẦN A: GIỚI THIỆU
• Nhận xét của giáo viên hướng dẫn ....................................................
• Nhận xét của giáo viên phản biện ....................................................
• Lời nói đầu ...........................................................................................
• Lời cảm tạ .............................................................................................
• Mục lục .................................................................................................
• Liệt kê các bảng ...............................................................................
• Liệt kê các hình ...................................................................................
PHẦN B: NỘI DUNG
CHƯƠNG 1 : DẪN NHẬP
1.1 Đặt vấn đề ............................................................................................12
1.2 Tầm quan trọng của đề tài ..................................................................12
1.3 Giới hạn đề tài ....................................................................................12
1.4 Mục đích nghiên cứu ...........................................................................13
CHƯƠNG 2 : CƠ SỞ LÝ LUẬN
2.1 Đối tượng nghiên cứu ...........................................................................13
2.2 Dàn ý nghiên cứu ..............................................................................…13
2.3 Phương pháp và phương tiện nghiên cứu ..........................................…14
2.3.1 Phương pháp nghiên cứu .............................................................………14
2.3.2 Phương tiện nghiên cứu ...............................................................…..…14
CHƯƠNG 3 : CÁC PHƯƠNG ÁN THIẾT KẾ
3.1 Các phương án thiết kế .......................................................................14
3.2 Ưu nhược điểm của từng phương án thiết kế ....................................…14
3.2.1 Dùng vi mạch số ...........................................................................….15
3.2.2 Dùng vi điều khiển .......................................................................…….16
3.2.3 Dùng vi điều khiển kết hợp Real Time (No battery).............…………….17
3.2.4 Dùng vi điều khiển kết hợp Real Time (Battery)..................………………18
3.3 Lựa chọn phương án thiết kế ............................................................…18
CHƯƠNG 4 : TÍNH TOÁN THIẾT KẾ CÁC KHỐI
4.1 Sơ đồ khối toàn mạch ...........................................................................19
4.2 Phân tích các khối ...............................................................................19
4.2.1 Khối đo nhiệt độ ...........................................................................19
4.2.2 Khối đồng hồ thời gian thực .......................................................22
4.2.3 Khối điều khiển xa và nút nhấn .................................................24
4.2.4 Khối hiển thị .................................................................................28
4.2.5 Khối nguồn ..................................................................................33
CHƯƠNG 5 : THI CÔNG MẠCH
5.1 Sơ đồ nguyên lý toàn mạch .................................................................34
5.2 Sơ đồ bố trí linh kiện ............................................................................38
5.2. 1 Sơ đồ bố trí linh kiện lớp trên ………....................................................38
5.2.2 Sơ đồ bố trí linh kiện lớp dưới ……….....................................................39
5.3 Sơ đồ mạch in .......................................................................................40
5.3.1 Sơ đồ mạch in lớp dưới …….................................................................40
5.3.2 Sơ đồ mạch in lớp trên ……. ................................................................41
5.4 Lưu đồ giải thuật .................................................................................42
5.4.1 Lưu đồ chương trình chính …….. ..........................................................42
5.4.2 Lưu đồ các chương trình con ……….......................................................43
CHƯƠNG 6 : TÓM TẮT KẾT LUẬN ĐỀ NGHỊ
6.1 Tóm tắt đề tài ......................................................................................48
6.2 Kết luận ................................................................................................48
6.3 Đề nghị .................................................................................................49
PHẦN C: PHỤ LỤC
PHỤ LỤC A : Giới thiệu IC.
PHỤ LỤC B : Chương trình điều khiển.
TÀI LIỆU THAM KHẢO
LIỆT KÊ CÁC BẢNG
Bảng 7.1: Kiểu dữ liệu thời gian, lịch và báo giờ..........................................55
Bảng 7.2: Thanh ghi A...................................................................................55
Bảng 7.3: Chu kỳ ngắt và tần số xung vuông................................................56
Bảng 7.4: Thanh ghi B...................................................................................56
Bảng 7.5: Thanh ghi C ..................................................................................58
Bảng 7.6: Thanh ghi D ..................................................................................58
Bảng 7.7: Chức năng của các chân trên Port3….….........................................69
LIỆT KÊ CÁC HÌNH
Hình 3.1: Sơ đồ khối mạch đồng hồ số sử dụng vi mạch số...........................15
Hình 3.2: Sơ đồ khối mạch đồng hồ số sử dụng vi điều khiển ......................16
Hình 3.3: Sơ đồ khối mạch đồng hồ số sử dụng vi điều khiển kết hợp Real Time Clock (No battery)……...................................................................................….17
Hình 3.4: Sơ đồ khối mạch đồng hồ số sử dụng vi điều khiển kết hợp Real Time Clock (Battery)……........................................................................................….18
Hình 4.1: Sơ đồ khối toàn mạch................................................................…….19
Hình 4.2: Sơ đồ khối mạch đo nhiệt độ.......................................................….19
Hình 4.3: Sơ đồ nguyên lý mạch đo nhiệt đo..............................................….22
Hình 4.4: Sơ đồ khối mạch đồng hồ thời gian thực.....................................….22
Hình 4.5: Sơ đồ nguyên lý mạch Real Time Clock....................................…..23
Hình 4.6: Sơ đồ khối mạch phát hồng ngoại..................................................24
Hình 4.7: Sơ đồ nguyên lý mạch phát hồng ngoại........................................ 26
Hình 4.8: Sơ đồ khối mạch thu hồng ngoại và nút nhấn............................... 26
Hình 4.9: Sơ đồ nguyên lý mạch thu hồng ngoại và nút nhấn...................... 28
Hình 4.10: Sơ đồ khối mạch hiển thị led 7 đoạn........................................... 28
Hình 4.11: Sơ đồ nguyên lý mạch hiển thị led 7 đoạn...................................30
Hình 4.12: Sơ đồ khối mạch hiển thị led ma trận...........................................31
Hình 4.13: Sơ đồ nguyên lý mạch hiển thị led ma trận .................................32
Hình 4.14: Sơ đồ khối mạch nguồn cung cấp.................................................33
Hình 4.15: Sơ đồ nguyên lý mạch nguồn cung cấp........................................33
Hình 5.1a: Sơ đồ nguyên lý toàn mạch..........................................................34
Hình 5.1b: Sơ đồ nguyên lý toàn mạch..........................................................35
Hình 5.1c: Sơ đồ nguyên lý toàn mạch..........................................................36
Hình 5.1d: Sơ đồ nguyên lý toàn mạch..........................................................37
Hình 5.2: Sơ đồ bố trí linh kiện lớp trê. ........................................................38
Hình 5.3: Sơ đồ bố trí linh kiện lớp dưới.......................................................39
Hình 5.4: Sơ đồ mạch in lớp dưới..................................................................40
Hình 5.5: Sơ đồ mạch in lớp trên.............................................................…....41
Hình 5.6: Lưu đồ chương trình chính.............................................................42
Hình 5.7: Lưu đồ chương trình con khởi tạo Dallas.......................................43
Hình 5.8: Lưu đồ chương trình con đọc thời gian......................................…..44
Hình 5.9: Lưu đồ chương trình con đọc nhiệt độ...........................................45
Hình 5.10: lưu đồ chương trình con hiển thị…………..........................................46
Hình 7.1 : Sơ đồ chân IC DS12C887 ............................................................49
Hình 7.2: Sơ đồ địa chỉ IC DS12C887...........................................................53
Hình 7.3: Giao tiếp bus với IC Motorola.......................................................60
Hình 7.4: Giao tiếp bus với IC Intel..............................................................61
Hình 7.5: Sơ đồ chân IC TPIC6B595..........................................................…62
Hình 7.6: Sơ đồ logic IC TPIC6B595..........................................................…63
Hình 7.7: Dạng sóng điện áp của IC TPIC 6B595......................................…63
Hình 7.8: Sơ đồ khối 8051..................................................................... ...…..66
Hình 7.9: Sơ đồ chân 8051..................................................................... ...…..68
1.1. ĐẶT VẤN ĐỀ
Ngày nay khoa học kỹ thuật phát triển mạnh mẽ, đặc biệt là trong lĩnh vực điện tử đã góp phần nâng cao năng suất lao động, giảm nhẹ sức lao động chân tay cho con người và góp phần nâng cao đời sống vật chất cũng như tinh thần cho con người.
Từ xa xưa con người đã biết cách đo đếm thời gian bằng nhiều phương pháp khác nhau như: đồng hồ cát, đồng hồ lên giây cót v.v..đến khi kỹ thuật điện tử ra đời và nhất là khi vi điều khiển ra đời thì việc sản xuất đồng hồ đã trở nên dễ dàng hơn trước nhiều và còn đạt độ chính xác cao hơn, cùng với các tiện ích khác như báo giờ, cho biết ngày tháng hiện tại v.v…
Xuất phát từ nhu cầu phục vụ đời sống con người ngày càng tốt hơn, nhóm sinh viên làm đồ án tốt nghiệp quyết định chọn đề tài Thiết kế và thi công lịch điện tử đa năng làm đề tài tốt nghiệp cho mình.
1.2. TẦM QUAN TRỌNG CỦA ĐỀ TÀI
Đồng hồ điện tử hiện nay không còn là một vấn đề mới mẻ với mọi người, nhưng với lịch điện tử đa năng thì nó có những vấn đề quan trọng sau:
Lịch điện tử đa năng giúp người sử dụng nó quan sát dễ dàng, ngoài việc xem giờ nó còn cho biết ngày tháng năm âm lịch, dương lịch và còn biết được các ngày lễ trong năm thông qua thiết bị quang báo v.v…
Là cơ sở để những người nghiên cứu khác vận dụng và phát triển thành một sản phẩm hoàn thiện có giá trị sử dụng trong thực tế.
• Đề tài cũng là cơ sở để những người thực hiện đồ án tốt nghiệp các khoá sau tham khảo.
Việc thực hiện đề tài giúp người nghiên cứu nắm vững lý thuyết và rèn luyện kỹ năng thi công mạch.
1.3. GIỚI HẠN CỦA ĐỀ TÀI
Trong quá trình thực hiện đề tài này, nhóm sinh viên thực hiện chỉ tập trung giải quyết những vấn đề sau:
• + Khảo sát vi điều khiển AT89S52.
• + Khảo sát IC chuyên dụng Real Time Clock DS12C887.
• + Ứng dụng vi điều khiển và Real Time Clock để thiết kế và thi công lịch điện tử đa năng.
• + Thiết kế mạch hiển thị trên led ma trận dùng phương pháp mới (dùng ghi dịch công suất TPIC 6B595).
• Lịch điện tử hiển thị được các thông tin sau:
• + Giờ phút giây, ngày tháng năm (dương lịch), nhiệt độ môi trường trên led 7 đoạn.
• + Chạy chữ “CHÀO MỪNG 100 NĂM NGÀY THÀNH LẬP TRƯỜNG CAO ĐẲNG KỸ THUẬT CAO THẮNG (1906-2006)” hiển thị trên led ma trận.
Do còn hạn chế về thời gian thực hiện đề tài cũng như các khó khăn trong việc lập giải thuật chuyển đổi âm dương lịch nên các thông tin về ngày tháng năm âm lịch không được hiển thị.
Đề tài này nhóm sinh viên thực hiện không giải quyết những vấn đề sau:
• + Nghiên cứu các Real Time Clock khác ngoài DS12C887.
• + Các ứng dụng khác.
1.4. MỤC ĐÍCH NGHIÊN CỨU
Đề tài:” THIẾT KẾ VÀ THI CÔNG LỊCH ĐIỆN TỬ ĐA NĂNG” nhằm giúp những người thực hiện đề tài nắm bắt được những vấn đề sau:
Thông qua việc thực hiện đề tài giúp cho những người thực hiện đồ án tốt nghiệp ôn lại những kiến thức đã học và lĩnh hội thêm được những kiến thức mới từ giáo viên hướng dẫn, từ các bạn sinh viên và cũng là khoảng thời gian rèn luyện tay nghề, từ đó hiểu rõ hơn cách viết chương trình cho vi điều khiển.
Qua quá trình thực hiện đề tài đã tạo điều kiện cho những người thực hiện đồ án tốt nghiệp có những ý tưởng mới và giải quyết các vấn đề phát sinh một cách có hiệu quả.
Giúp những người thực hiện đề tài biết vận dụng việc tính toán mạch điện giữa lý thuyết và thực tế, sao cho mạch hoạt động ổn định, kết cấu đơn giản và chi phí thấp.
Do những điều kiện khách quan cũng như chủ quan của những người làm đồ án mà sản phẩm làm ra có thể chưa có tính thực tiễn cao nhưng nếu được nghiên cứu đi sâu hơn thì có thể ứng dụng vào trong thực tế.
2. CƠ SỞ LÝ LUẬN
2.1. ĐỐI TƯỢNG NGHIÊN CỨU
Vi điều khiển AT89S52.
IC real time clock DS12C887.
Mạch hiển thị dùng led ma trận theo phương pháp mới.
Mạch cảm biến nhiệt độ.
2.2. DÀN Ý NGHIÊN CỨU
Nghiên cứu vi điều khiển AT89S52.
Nghiên cứu vi mạch đồng hồ thời gian thực DS12C887.
Nghiên cứu việc giao tiếp giữa vi điều khiển và IC DS12C887.
Cập nhật thông tin trên led 7 đoạn và led ma trận.
•Lập trình phần mền cho vi điều khiển.
2.3. PHƯƠNG PHÁP VÀ PHƯƠNG TIỆN NGHIÊN CỨU
2.3.1. Phương pháp nghiên cứu
• Tham khảo tài liệu: tài liệu liên quan đến vi mạch đồng hồ thời gian thực trong đề tài tốt nghiệp Lịch Vạn Niên của Trang Thanh Sơn; các tài liệu đặc điểm về kỹ thuật của vi điều khiển AT89XX của Tống Văn On; Data sheet các IC trên trang web:
http:// www.chipcatalog.com.
• Thực nghiệm: viết chương trình thực nghiệm trực tiếp cho vi điều khiển.
2.3.2. Phương tiện nghiên cứu
• + Máy tính.
• + Bộ thí nghiệm vi điều khiển ( board nạp VĐK và board hiển thị).
• + Các linh kiện điện điện tử có liên quan đến đề tài.
2.4. LẬP KẾ HOẠCH NGHIÊN CỨU
Nhóm nghiên cứu đã thực hiện đề tài từ ngày đăng ký (5/09/2005 –
20/10/2005) công việc được phân bố cho 6 tuần như sau:
• + Tuần1: gặp GVHD, nhận đề tài, lập đề cương tổng quát và thu thập tài liệu.
• + Tuần 2: lập đề cương chi tiết, thiết kế phần cứng.
• + Tuần 3,4,5: thi công mạch, triển khai đề cương , đánh máy và viết chương trình.
• + Tuần 6: sửa chữa và định dạng, in ấn và hoàn thiện mạch.
3. CÁC PHƯƠNG ÁN THIẾT KẾ
3.1. CÁC PHƯƠNG ÁN THIẾT KẾ
Có bốn phương án thiết kế như sau:
v DùngVi mạch số.
v Dùng Vi điều khiển.
v Dùng Vi điều khiển kết hợp Real time không có nguồn dự phòng.
v Dùng Vi điều khiển kết hợp Real time có nguồn dự phòng.
3.2 ƯU NHƯỢC ĐIỂM CỦA TỪNG PHƯƠNG ÁN THIẾT KẾ
3.2.1 Dùng vi mạch số :
3.2.1.1 Sơ đồ khối :
Hình 3.1: Sơ đồ khối mạch đồng hồ số sử dụng vi mạch số.
3.2.1.2. Chức năng của từng khối
v Khối nguồn: cung cấp điện cho toàn mạch.
v Khối dao động: tạo xung chuẩn 1 giây cho khối đếm thời gian.
v Khối đếm thời gian: nhận xung chuẩn 1 giây để đếm phút, giờ.
v Khối giải mã BCD sang 7 đoạn: chuyển đổi tín hiệu BCD từ khối đếm ra mã 7 đoạn để đưa đến khối hiển thị.
v Khối hiển thị: để hiển thị thời gian.
v Nút nhấn điều chỉnh: để điều chỉnh thời gian khi mạch chạy sai hoặc khi mất nguồn.
* Ưu điểm: Không cần viết chương trình ( không cần biết về vi điều khiển)
* Nhược điểm:
Ø Mạch điện phức tạp.
Ø Không chuẩn về thời gian do mạch dao động tạo xung chuẩn hoạt động không chính xác.
Ø Phải cài đặt lại khi mất nguồn.
Ø Tiêu thụ nhiều năng lượng do dùng nhiều IC, cấp nguồn liên tục cho led 7 đoạn.
Ø Giá thành cao, không kinh tế.
Ø Khó tính toán ngày âm lich.
3.2.2. Dùng vi điều khiển
3.2.2.1. Sơ đồ khối
Hình 3.2: Sơ đồ khối mạch đồng hồ số sử dụng vi điều khiển.
3.2.2.2. Chức năng của từng khối
v Khối nguồn: cung cấp điện áp cho toàn mạch.
v Khối vi điều khiển: điều khiển đếm thời gian theo ý người viết chương trình.
v Khối hiển thị: để hiển thị thời gian.
v Nút nhấn: để điều chỉnh thời gian khi mạch chạy sai hoặc khi mất nguồn.
* Ưu điểm:
Ø Mạch điện thiết kế đơn giản.
Ø Tiêu thụ năng lượng thấp do dùng phương pháp quét.
Ø Dể tính ngày âm lịch.
Ø Giá thành thấp.
* Nhược điểm:
Ø Người thiết kế phải biết về Vi điều khiển.
Ø Phải cài đặt lại thời gian khi mất nguồn.
Ø Độ chính xác chỉ tương đối hơn so vơi phương pháp dùng vi mạch số.
3.2.3. Dùng vi điều khiển và real time ( no battery)
3.2.3.1. Sơ đồ khối
Hình 3.3: Sơ đồ khối mạch đồng hồ số sử dụng VĐK và RTC (No battery).
3.2.3.2. Chức năng của từng khối
v Khối nguồn: cung cấp điện áp cho toàn mạch.
v Khối vi điều khiển: nhận dữ liệu từ Real time sau đó xử lý rồi đưa ra mạch hiển thị.
v Khối real time: cung cấp dữ liệu thời gian cho vi điều khiển xử lý.
v Nút nhấn: điều chỉnh thời gian khi mạch bị mất nguồn.
v Khối hiển thị: để hiển thị thời gian.
* Ưu điểm:
Ø Mạch điện thiết kế đơn giản.
Ø Độ chính xác cao.
Ø Tiêu thụ năng lượng thấp do dùng phương pháp quét.
Ø Dể tính ngày âm lịch.
Ø Giá thành thấp.
* Nhược điểm:
Ø Người thiết kế phải biết về Vi điều khiển.
Ø Phải cài đặt lại thời gian khi mất nguồn.
3.2.4. Vi điều khiển và real time (battery)
3.2.4.1 Sơ đồ khối
Hình 3.4: Sơ đồ khối mạch đồng hồ số sử dụng VĐK và RTC (battery).
3.2.4.2. Chức năng của từng khối
v Khối nguồn: cung cấp điện áp cho toàn mạch.
v Khối vi điều khiển: nhận dữ liệu từ Real time xử lý và đưa ra mạch hiển thị.
v Nút nhấn: điều chỉnh để cập nhật thời gian.
v Khối hiển thị: để hiển thị thời gian.
* Ưu điểm:
Ø Mạch điện thiết kế đơn giản.
Ø Độ chính xác cao.
Ø Tiêu thụ năng lượng thấp do dùng phương pháp quét.
Ø Dể tính ngày âm lịch.
Ø Giá thành thấp.
Ø Không phải cài đặt lại thời gian khi mất nguồn.
* Nhược điểm: Người thiết kế phải biết về Vi điều khiển.
3.3. LỰA CHỌN PHƯƠNG ÁN THIẾT KẾ
Trong 4 phương án thiết kế trên, dựa vào yêu cầu thực tế của đồ án cũng như các ưu nhược điểm của từng phương pháp thiết kế mà những người làm đồ án chọn phương án thiết kế thứ 4 là: THIẾT KẾ LỊCH ĐIỆN TỬ ĐA NĂNG DÙNG VI ĐIỀU KHIỂN KẾT HỢP REAL TIME BATTERY, vì theo nhận định chủ quan của những người làm đồ án cùng với những kiến thức đã được học thì đây là phương án tối ưu nhất trong 4 phương án trên.
4. TÍNH TOÁN THIẾT KẾ CÁC KHỐI
4.1. SƠ ĐỒ KHỐI TOÀN MẠCH
Hình 4.1: Sơ đồ khối toàn mạch.
4.2. PHÂN TÍCH CÁC KHỐI
4.2.1. Khối đo nhiệt độ
4.2.1.1. Sơ đồ khối
Hình 4.2 : Sơ đồ khối mạch đo nhiệt độ.
4.2.1.2. Nguyên tắc hoạt động
Tín hiệu ngõ vào khối cảm biến nhiệt độ là nhiệt độ môi trường, cảm biến nhiệt được sử dụng ở đây là LM 35, ngõ ra cảm biến nhiệt độ đưa đến khối chế biến tín hiệu để khuyếch đại điện áp lên, mức điện áp này thông qua mạch ADC sẽ được chuyển đổi từ tương tự sang số, tín hiệu số sẽ được vi điều khiển xử lý và đưa ra led 7 đoạn để hiển thị.
4.2.1.3. Tính toán thiết kế
* Một số tính chất cơ bản của LM35:
- LM35 có độ biến thiên theo nhiệt độ: 10mV / 1oC.
- Độ chính xác cao, tính năng cảm biến nhiệt độ rất nhạy, ở nhiệt độ 25oC nó có sai số không quá 1%. Với tầm đo từ 0oC – 128oC, tín hiệu ngõ ra tuyến tính liên tục với những thay đổi của tín hiệu ngõ vào.
- Thông số kỹ thuật:
+ Tiêu tán công suất thấp.
+•Dòng làm việc từ 400ìA – 5mA.
+•Dòng ngược 15mA.
+ Dòng thuận 10mA.
+•Độ chính xác: khi làm việc ở nhiệt độ 25oC với dòng làm việc 1mA thì điện áp ngõ ra từ 2,94V – 3,04V.
* ADC 0809:
- Ý nghĩa các chân:
• IN0 đến IN7 : 8 ngõ vào tương tự.
• A, B, C : giải mã chọn một trong 8 ngõ vào
• D0 đến D7 : ngõ ra song song 8 bit
• ALE : cho phép chốt địa chỉ
• START : xung bắt đầu chuyển đổi
• CLK : xung đồng hồ
• REF (+) : điện thế tham chiếu (+)
• REF (-) : điện thế tham chiếu (-)
• VCC : nguồn cung cấp
Trong mạch chỉ sử dụng một ngõ vào tương tự nên các chân từ IN1 đến IN7 đều được nối mass. Chân START và ALE được nối lên 5V nghĩa là ADC luôn luôn chuyển đổi với một kênh duy nhất. Các ngõ ra từ D0 đến D7 được nối đến các chân tương ứng của Port 0 dùng làm Port nhận dữ liệu từ ADC chuyển vào VĐK.
- Các đặc điểm củaADC 0809:
+ Độ phân giải 8 bit
+•Tổng sai số chưa chỉnh định ± ½ LSB; ± 1 LSB
+•Thời gian chuyển đổi: 100ìs ở tần số 640 kHz
+•Nguồn cung cấp + 5V
+•Điện áp ngõ vào 0 – 5V
+•Tần số xung clock 10kHz – 1280 kHz
+•Nhiệt độ hoạt động - 40oC đến 85oC
+•Dễ dàng giao tiếp với vi xử lý hoặc dùng riêng
+•Không cần điều chỉnh zero hoặc đầy thang
- Thiết kế mạch dao động:
Ta có
Gọi N là số nhị phân chuyển đổi được, ta có :
Trong đó : VI: điện áp ngõ vào bộ chuyển đổi ADC.
Vref(+): điện áp tại chân REF(+).
Vref(-): điện áp tại chân REF(-).
Với Vref-= 0
Do LM35 có độ biến thiên theo nhiệt độ: 10mV / 1oC và ngõ ra của bộ
chuyển đổi có 28=256 số nhị phân được chuyển đổi, vì vậy dùng biến trở 10k để điều chỉnh Vref+=2,56V nghĩa là lúc này nếu nhiệt độ thay đổi 10C thì ngõ ra sẽ thay đổi 1 số nhị phân tương ứng.
Ứng với tầm hoạt động từ 0oC – 100oC ta có sự biến thiên điện áp ngõ ra là:
Giả sử :
Ở 0oC thì điện áp ngõ vào VI = 0 (V).
Ở 5oC thì điện áp ngõ vào VI = 0,05 (V).
Ở 100oC thì điện áp ngõ vàoVI= 1 (V).
Vậy tầm biến thiên điện áp tương ứng với nhiệt độ từ 0oC - 100oC là1V.
4.2.1.4 Sơ đồ nguyên lý
Hình 4.3: Sơ đồ nguyên lý mạch đo nhiệt độ.
4.2.2. Khối đồng hồ thời gian thực ( real time clock)
4.2.2.1 Sơ đồ khối
Hình 4.4: Sơ đồ khối mạch đồng hồ thời gian thực.
4.2.2.2 Nguyên tắc hoạt động
Tín hiệu thời gian và lịch được chứa trong các ô nhớ Ram của DS12C887. Vi điều khiển trước khi lấy dữ liệu trong đây ra để xử lý và hiển thị trên led thì nó phải gởi một byte địa chỉ về RTC để xác định địa chỉ của ô nhớ Ram cần liên lạc. Ơ đây để hạn chế số chân, người ta dùng bus đa hợp dữ liệu/địa chỉ.
4.2.2.3 Tính toán thiết kế
DS12C887 có tính năng như một đồng hồ nội, tất cả các dữ liệu về thời gian và lịch đều được chứa trong nó. Do đó để hiển thị được các nội dung này thì VĐK phải dùng một port xuất nhập để gởi và lấy địa chỉ/dữ liệu trong RTC. Do RTC chỉ sử dụng 8 chân để xuất nhập dữ liệu/địa chỉ nên ta phải dùng port 0 của VĐK, cũng là port xuất nhập đa hợp địa chỉ/ dữ liệu, để giao tiếp với nó.
Chức năng các chân IC DS12C887
• AD0-AD7 – Bus đa hợp địa chỉ/ dữ liệu
• MOT - Lựa chọn loại bus
• CS – Ngõ vào lựa chọn RT C
• AS – Chốt địa chỉ
• R/W – Ngõ vào đọc/ghi
• DS – Chốt dữ liệu
• RESET\ - Ngõ vàoReset
• IRQ\ - Ngõ ra yêu cầu ngắt
• SQW – Ngõ ra sóng vuông
• VCC – Nguồn cung cấp +5 Volt
• GND – Mass
Chân MOT được nối mass để chọn bus INTEL, các chân DS, R/W\, ALE được nối đến các chân RD\, WR\, ALE tương ứng của VĐK kết hợp với chân CS\ để điều khiển xuất nhập dữ liệu của RTC. Các chân từ AD0 đến AD7 được nối tương ứng với các chân của port 0 dùng làm các chân xuất nhập dữ liệu/địa chỉ.
4.2.2.4. Sơ đồ nguyên lýHình 4.5: Sơ đồ nguyên lý mạch Real Time Clock.
4.2.3. Khối điều khiển xa và nút nhấn
4.2.3.1 Sơ đồ khối mạch phát hồng ngoại
4.2.3.1.1. Sơ đồ khối
Hình 4.6: Sơ đồ khối mạch phát hồng ngoại.
4.2.3.1.2. Chức năng các khối
- Khối phím lệnh điều khiển: Các lệnh được thiết lập thông qua bàn phím, mỗi lệnh ứng với một phím tác động. Cấu tạo của bàn phím có thể là phím đơn hay phím ma trận.
- Khối mã hoá: Biến đổi các lệnh điều khiển thành các bít nhị phân. Quá trình xử lý các lệnh điều khiển trên bàn phím thành lệnh dưới dạng các bit nhị phân được gọi là quá trình mã hoá. Có 4 phương pháp mã hoá tín hiệu như sau:
+ Biến điệu biên độ xung (P.A.M)
+ Biến điệu độ rộng xung (P.W.M )
+•Biến điệu vị trí xung (P.P.M )
+•Biến điệu mã xung (P.C.M )
Trong đó biến điệu mã xung được xử dụng nhiều nhất trong điều khiển xa dùng sóng hồng ngoại. Vì phương pháp này khá đơn giản dể thực hiện trong quá trình thiết kế thi công.
- Khối điều chế: gắn sóng mang vào mã lệnh điều khiển và truyền đến phần khuếch đại phát.
Khối dao động tạo sóng mang: Tạo ra sóng mang có tần số ổn định đem trộn
với mã lệnh điều khiển rồi đưa đến khối khuếch đại phát.
- Khối khuếch đại công suất: Khuếch đại và nâng công suất dòng tức thời cung cấp cho led phát hồng ngoại. Do led phát hồng ngoại được thiết kế làm việc ở chế độ ngắn hạn nên sử dụng được dòng cao lên đến vài trăm mA. 4.2.3.1.3. Tính toán thiết kế
- Khối tạo phím lệnh điều khiển:
IC 9148 có khả năng tạo ra tổ hợp 18 phím lệnh từ ma trận 6× 3 (được cấu hình sẳn bên trong IC) trong đó có 6 phím liên tục (1 ÷ 6) và 12 phím không liên tục (7 ÷ 18), nhưng do yêu cầu của đề tài ta chỉ cần sử sụng 6 phím ( 5phím liên tục và 1 phím không liên tục.
- Khối mã hoá:
Trong tín hiệu phát của mạch phát ra có 3 mã code đó là C1,C2,C3 đây là mã tín hiệu cung cấp cho người dùng. IC 9148 kết hợp với IC 9149 thì mã người dung có 3 lựa chọn sau đây:
TC9148 |
TC9149 |
C2 C3 |
C2 C3 |
0 1 |
0 1 |
1 0 |
1 0 |
1 1 |
1 1 |
Để đơn giản trong mạch ta chọn mã điều khiển theo các giá trị đã được tô đen ở bảng mã trên.
Đối với IC 9148: để C2=(1), C3=(1) thì ta chỉ việc nối diode từ chân T2,T3 đến chân code(13) của IC 9148.
Đối với IC 9149: để C2=(1), C3=(1) ta mắc chân C2,C3 nối tiếp qua tụ 102 xuống mass.
- Khối tạo xung:
Để cho tần số dao động được ổn định và chính xác ta dùng thạch anh làm mạch dao động với tần số dao động là 455KHz. Nhưng do mỗi lần có moat lệnh điều khiển tác động từ bàn phím thì tại các ngõ ra tương ứng của IC 9148 xuất hiện một mã lệnh được cấu thành từ 12 bit (C1C2C3 K1K2K3K4K5K6 T1T2T3) nên tần số dao động tín hiệu phát đi xem như đi qua mạch chia 12 tần số:
Tần số dao động này sẽ kết hợp với tín hiệu phát làm thành phần sóng mang
lan truyền trong không gian đến mạch thu.
- Khối khuếch đại công suất phát:
Để cường độ bức xạ của tia hồng ngoại ra môi trường mạnh thì dòng qua led phát phải đủ lớn nhưng không được vựơt quá giá trị I(ledmax). Do đó tín hiệu sau khi xử lý sẽ cho qua bộ khuếch đại để nâng công suất lên đủ lớn phát xạ ra không gian.
Để đơn giản ta dùng 2 transistor ghép Darlington với nhau. Vì ngõ ra của IC 9148 khi chưa có phím ấn là mức 1và khi có phím ấn là mức 0, do đó ta chọn Transistor A1015(PNP) kết hợp với C1815 (NPN) để tạo thành mạch khuếch đại công suất ghép Darlington.
Chọn nguồn Vdd=3V để cho phù hợp với việc thiết kế bộ nguồn 3V sử
dụng 2 Pin AA× 1,5V. Ta có:
4.2.3.1.4. Sơ đồ nguyên lý
Hình 4.7: Sơ đồ nguyên lý mạch phát hồng ngoại.
4.2.3.2. Sơ đồ khối mạch thu hồng ngoại và khối nút nhấn
4.2.3.2.1. Sơ đồ các khối
Hình 4.8: Sơ đồ khối mạch thu hồng ngoại và nút nhấn.
4.2.3.2.2. Chức năng các khối
- Khối thu có nhiệm vụ nhận và giải mã tín hiệu điều khiển thành lệnh điều khiển để tác động đến khối chấp hành phía sau.
- Khối thu (IC 9149): nhận tín hiệu từ bộ điều khiển thành lệnh điều khiển truyền đến và hoàn điệu tín hiệu đã thu giống như tín hiệu phát đi ở máy phát.
- Khối khuếch đại tín hiệu (IC 9149): khuếch đại tín hiệu thu được sau đó đưa đến mạch tách sóng mang.
- Khối giải mã: Nhiệm vụ của khối này rất quan trọng, nó thực hiện chuyển đổi mã ngõ vào thành lệnh ngõ ra với khả năng chống nhiễu cao.
- Các nút nhấn cũng có tác dụng điều khiển chỉnh ngày, tháng , năm v.v…, các nút nhấn và mạch điều khiển xa được kết nối đến Vi Điều Khiển thông qua các cổng OR. Vì vậy nếu mạch điều khiển xa tác động hay nút nhấn tác động thì ngõ ra cổng OR sẽ lên mức 1 tác động vi điều khiển thực hiện các lệnh theo yêu cầu điều khiển.
4.2.3.2.3. Tính toán thiết kế
- Led thu hồng ngoại:
Để thu được tín hiệu hồng ngoại cần phải có cảm biến thu hồng ngoại hay
led thu hồng ngoại.
Có hai loại led thu hồng ngoại: loại có bộ khuếch đại được tích hợp bên trong led và loại không có bộ khuếch đại. Đối với loại không có bộkhuếch đại thì cự li thu ngắn, khoảng vài chục cm, trong khi đó loại thu có tích hợp bộ khuếch đại thu tín hiệu hồng ngoại từ vài mét đến vài chục mét. Ngoài ra led thu hồng ngoại này còn thu tốt những tín hiệu phản xạ do đó khi điều khiển không nhất thiết phải đặt led phát trực diện với led thu. Để cho phù hợp với yêu cầu của đề tài, ta chọn loại led thu đa năng hiện có bán rất nhiều trên thị trường với giá khoảng 6000Đ một con. Nó có khả năng thu được tín hiệu ở cự li 20m, ít nhiễu tạp sóng.
- IC 9149:
Chức năng các chân:
•+ Chân 1: nối mass
+ Chân 2: ngõ vào tín hiệu thu sau khi loại bỏ sóng mang
+•Chân 3 đến chân 7 ( HP1 ÷ HP5): ngõ ra liên tục.
+ Chân 8 ÷ 12 ( SP1 ÷ SP5): ngõ ra không liên tục.
+•Chân 13,14(C2.C3): mã người sử dụng luôn trùng với C2,C3 của IC 9148 ( theo bảng mã qui định của nhà sản xuất ).
+ Chân 15: nối với khung dao động RC.
+ Chân 16: Vdd 5V
- Khối khuếch đại tách sóng:
Để có được tín hiệu thu đủ lớn, ta sử dụng bộ khuếch đại dùng transistor ghép theo kiểu E chung kết hợp với bộ lọc RC nhằm loại sóng mang, phục hồi tín hiệu gốc.
4.2.3.2.4. Sơ đồ nguyên lý
Hình 4.9: Sơ đồ nguyên lý mạch thu hồng ngoại và nút nhấn.
4.2.4. Khối hiển thị
4.2.4.1. Khối hiển thị led 7 đoạn
4.2.4.1.1. Sơ đồ khốiHình 4.10: Sơ đồ khối mạch hiển thị led 7 đoạn.
4.2.4.1.2. Nguyên tắc hoạt động:
Dữ liệu thời gian, lịch và nhiệt độ trong RTC được đưa đến vi điều khiển để xử lý và chuyển thành mã 7 đoạn và được đưa đến các led. Các IC 6B595 có chức năng tạo ra các mã quét (được điều khiển bởi vi điều khiển) đưa đến các chân Anod của các
...........................................................................
* Chức năng của các chân :
GND, VCC - Nguồn cung cấp cho thiết bị ở những chân trên. VCC là điện áp ngõ vào +5 volt. Khi điện áp 5 volts được cung cấp đúng chuẩn, thiết bị được truy cập đầy đủ và dữ liệu có thể đọc và ghi. Khi Vcc thấp hơn 4.25 volts, đọc và ghi bị cấm. Tuy nhhiên, chức năng giữ thời gian vẫn được tiếp tục không bị ảnh hưởng bởi điện áp bị sụt giảm bên ngoài. Khi VCC rout xuống thấp hơn 3 V, RAM và bộ giữ giờ được chuyển sang nguồn năng lượng bên trong. Chức năng giữ thời gian duy trì độ chính xác vào khoảng ±1 phút/tháng ở nhiệt độ 250 C bất chấp điện áp ở ngõ vào chân Vcc.
MOT (Mode Select) – Chân MOT là chân có tính linh hoạt để lựa chọn giữa hai loại bus. Khi được nối lên VCC, bus định thời Motorola được chọn lựa. Khi được nối xuống GND hoặc không nối, bus định thời Intel được lựa
chọn. Chân có điện trở kéo xuống bên trong có giá trị vào khoảng 20K.
SQW (Square Wave Output) – Chân SQW có thể xuất tín hiệu ra từ 1 trong 13 loại được cung cấp từ 15 trạng thái được chia bên trong của Real Time Clock. Tần số của chân SQW có thể thay đổi bằng cách lập trình thanh ghi A như đã trình bày ở bảng 2.1. Tín hiệu SQW có thể mở hoặc tắt sử dụng bit SQWE trong Register B. Tín hiệu SQW không xuất hiện khi Vcc thấp hơn 4.25 volts.
AD0-AD7 (Multiplexed Bidirectional Address/Data Bus) –Bus phức hợp tiết kiệm chân bởi vì thông tin địa chỉ và thông tin dữ liệu được dùng chung đường tín hiệu. Cùng tại những chân, địa chỉ được xuất trong suốt phần thứ nhất của chu kỳ bus và được dùng cho dữ liệu trong phần thứ 2 của chu kỳ. Phức hợp địa chỉ/dữ liệu không làm chậm thời gian truy cập của DS12C887 khi bus chuyển từ địa chỉ sang dữ liệu xảy ra trong suốt thời gian truy cập RAM nội. Địa chỉ phải có giá trị trước khi xuất hiện sườn xuống của AS/ALE, tại thời điểm mà DS12C887 chốt địa chỉ từ AD0 tới AD6.
Dữ liệu ghi phải được hiển thị và giữ ổn định trong suốt phần sau của DS hoặc xung WR. Trong chu kỳ đọc của DS12C887 ngõ ra 8 bits của dữ liệu trong suốt phần sau của DS hoặc xung RD. Chu kỳ đọc được thực hiên xong và bus trở về trạng thái tổng trở cao cũng như khi DS bắt đầu chuyển xuống thấp trong trường hợp định thời Motorola hoặc khi RD chuyển lên cao trong trường hợp định thời Intel.
AS (Address Strobe Input) – Xung dương cung cấp xung chốt địa chỉ trong việc phức hợp bus. Sườn xuống của AS/ALE làm cho địa chỉ bị chốt lại bên trong của DS12C887. Sườn lên tiếp theo khi xuất hiện trên bus AS sẽ xoá địa chỉ bất chấp chân CS có được chọn hay không. Lệnh truy cập có thể gửi tới bằng cả hai cách.
DS (Data Strobe or Read Input) – Chân DS/RD có 2 kiểu sử dụng tuỳ thuộc vào mức của chân MOT. Khi chân MOT được kết nối lên Vcc, bus định thời Motorola được lựa chọn. Trong kiểu này DS là xung dương trong suốt phần sau của chu kỳ bus và được gọi là Data Strobe. Trong suốt chu kỳ đọc, DS báo hiệu thời gian mà DS12C887 được điều khiển bus đôi. Trong chu kỳ đọc, xung quét của DS là nguyên nhân làm DS12C887 chốt dữ liệu được ghi. Khi chân MOT được nối xuống GND, bus định thời Intel được lựa chọn. Trong kiểu này, chân DS được gọi là Read(RD). RD xác định chu kỳ thời gian khi DS12C887 điều khiển bus đọc dữ liệu. Tín hiệu RD có cùng định nghĩa (same definition) với tín hiệu Output Enable (OE) trong một bộ nhớ riêng.
R/ W\ (Read/Write Input) – Chân R/ W\ cũng có 2 cách hoạt động. Khi chân MOT được kết nối lên Vcc cho chế độ định thời Motorola, R/W\ đang ở chế độ mà chỉ ra hoặc là chu kỳ hiện tại là chu kỳ đọc hoặc ghi. Chu kỳ đọc đòi hỏi chân R/W\ phải ở mức cao khi chân DS ở mức cao. Chu kỳ ghi đòi hỏi chân R/ W\ phải ở mức thấp trong suốt quá trình chốt tín hiệu của DS. Khi chân MOT được nối GND cho chế độ định thời Intel, tín hiệu R/ W\ là tín hiệu hoạt động mức thấp (an active low signal) được gọi là WR. Trong chế độ này, chân R/ W\ được định nghĩa như tín hiệu Write Enable (WE) trong RAMs chung.
CS (Chip Select Input) – Tín hiệu chọn lựa phải được xác định ở mức thấp ở chu kỳ bus để DS12C887 được sử dụng. CS phải được giữ trong trạng thái hoạt động trong suốt DS và AS của chế độ định thời Motorola và trong suốt RD và WR của chế độ định thời Intel. Chu kỳ Bus khi chọn vị trí mà không chọn CS sẽ chốt địa chỉ nhưng sẽ không có bất kỳ sự truy cập nào. Khi Vcc thấp hơn 4.25 volts, chức năng bên trong của DS12C887 ngăn chặn sự truy cập bằng cách không cho phép chọn lựa ngõ vào CS. Hành động này nhằm bảo vệ cả dữ liệu của đồng hồ thời gian thực bên trong cũng như dữ liệu RAM trong suốt quá trình mất nguồn.
IRQ (Interrupt Request Output) – Chân IRQ\ là ngõ ra hoạt động mức thấp của DS12C887 mà có thể sử dụng như ngõ vào ngắt tới bộ xử lý. Ngõ ra IRQ\ ở mức thấp khi bit là nguyên nhân làm ngắt và phù hợp với bit cho phép ngắt được đặt (set). Để xoá chân IRQ\ chương trình của bộ vi xử lý thông thường được đọc ở thanh ghi C. Chân RESET\ cũng bị xoá trong lúc ngắt. Khi không có trạng thái ngắt nào được sử dụng, trạng thái IRQ\ ở trong tình trạng tổng trở cao. Nhiều thiết bị ngắt có thể nối tới một IRQ\ bus. IRQ\ bus là một ngõ ra mở và yêu cầu 1 điện trở kéo lên bên ngoài.
RESET\ (Reset Input) – Chân RESET\ không có hiệu lực đối với đồng hồ, lịch, hoặc là RAM. Ơ chế độ cấp nguồn, chân RESET có thể bị kéo xuống trong thời gian cho phép để ổn định nguồn cung cấp. Thời gian mà chân RESET\ bị kéo xuống mức thấp phụ thuộc vào ứng dụng. Tuy nhiên nếu chân RESET\ được sử dụng ở chế độ cấp nguồn, thời gian RESET\ ở mức thấp có thể vượt quá 200ms để chắc chắn rằng bộ định thời bên trong mà điều khiển DS12C887 ở chế độ power-up đã hết. Khi RESET\ ở mức thấp và VCC ở trên 4.25 volts, những điều sau diễn ra:
A. Bit cho phép ngắt định kỳ ((Periodic Interrupt Enable (PEI)) được đặt ở mức 0..
B. Bit cho phép ngắt chuông (Alarm Interrupt Enable (AIE)) được đặt ở mức 0.
C. Bit cờ cho phép ngắt kết thúc cập nhật ((Update Ended Interrupt Flag (UF)) được xoá về 0 zero.
D. Bit hiển thị cờ trạng thái ngắt yêu cầu (Interrupt Request Status Flag (IRQF)) được đặt ở mức 0.
E. Bit cờ cho phép ngắt định kỳ (Periodic Interrupt Flag (PF)) được đặt ở mức 0.
F. Thiết bị không sử dụng được cho tới khi chân RESET\ trở lại mức logic 1.
G. Bit cờ cho phép ngắt chuông (Alarm Interrupt Flag (AF)) được đặt ở mức 0.
H. Chân IRQ\ ở trong trạng thái tổng trở cao.
I. Bit cho phép xuất sóng vuông (Square Wave Output Enable (SQWE)) được đặt ở mức 0.
J. Bit cho phép ngắt kêt thúc cập nhật (Update Ended Interrupt Enable (UIE)) bị xoá về mức 0.
Trong các ứng dụng thông thường chân RESET\ có thể được nối lean VCC. Kết nối như vậy sẽ cho phép DS12C887 hoạt động và khi mất nguồn sẽ không làm ảnh hưởng đến bất kỳ thanh ghi điều khiển nào.
Hoạt động của Real Time Clock khi được cấp nguồn hoặc mất nguồn.
Chức năng của đồng hồ thời gian thực sẽ tiếp tục hoạt động và tất cả RAM, thời gian, lịch và vị trí bộ nhớ báo giờ và những vùng nhớ không mất dữ liệu còn lại bất chấp điện áp ngõ vào VCC. Khi điện áp VCC được cung cấp cho DS12C887 và đạt tới điện áp lớn hơn 4.25 volts, thiết bị có thể sử dụng được sau 200 ms, dao động được cung cấp, nó cho phép bộ dao động hoạt động và quá trình dao động không ảnh hưởng bởi chân reset. Tính đến giai đoạn này hệ thống đã đi vào ổn định sau khi nguồn được cung cấp. Khi VCC rớt xuống dưới 4.25 volts, ngõ vào lựa chọn chip bị bắt buộc chuyển sang trạng thái không hoạt động bất chấp giá trị tại ngõ vào chân CS. Vì vậy DS12C887 được hoạt động ở chế độ chống ghi. Khi DS12C887 đang ở trạng thái chống ghi, mọi ngõ vào đều bị bỏ qua còn các ngõ ra đều ở trạng thái tổng trở cao. Khi VCC rớt xuống điện áp khoảng 3 volts, điện áp VCC cung cấp bên ngoài được cắt đi và nguồn pin lithium ở bên trong DS12C887 sẽ cung cấp nguồn cho Real Time Clock và bộ nhớ RAM.
7.1.2. Cấu trúc bên trong Real Time Clock DS12C887
7.1.2.1. Sơ đồ địa chỉ của Real Time Clock
Sơ đồ địa chỉ của DS12C887 được trình bày ở hình 2.2. Sơ đồ địa chỉ bao gồm 113 bytes RAM thông dụng, 11 bytes RAM mà thành phần bao gồm đồng hồ thời gian thực, lịch, dữ liệu báo giờ và 4 bytes được sử dụng cho việc điều khiển và thông báo tình trạng. Tất cả 128 bytes có thể được ghi hoặc đọc tực tiếp trừ những trường hợp sau :
1. Thanh ghi C and D là hai thanh ghi chỉ đọc.
2. Bit thứ 7 của thanh ghi A là bit chỉ đọc.
3. Bit cao của byte thứ 2 là bit chỉ đọc.
Hình 7.2: Sơ đồ địa chỉ của DS12C887
Thời gian và lịch đã có bằng cách đọc các bytes bộ nhớ hiện có. Thời gian, lịch và báo giờ được đặt hoặc gán giá trị bằng cách ghi giá trị bytes RAM thích hợp. Nội dung của 10 bytes chứa thời gian, lịch và báo giờ đều có thể hiển thị ở cả 2 dạng nhị phân (Binary) hoặc BCD (Binary-Coded Decimal). Trước khi ghi lên các thanh ghi thời gian, lịch, và các thanh ghi báo giờ bên trong, bit SET ở thanh ghi B phải được đặt ở mức logic 1 để ngăn ngừa sự cập nhật có thể xảy ra trong quá trình ghi đè. Thêm vào nữa để ghi lên 10 thanh ghi chỉ thời gian, lịch, và thanh ghi báo giờ ở một định dạng đã lựa chọn (BCD hay nhị phân), bit chọn kiểu dữ liệu (Data mode (DM)) của thanh ghi B phải được đặt ở mức logic thích hợp. Tất cả 10 bytes thời gian, lịch và báo giờ phải sử dụng cùng kiểu dữ liệu. Bit được đặt ở thanh ghi B nên được xoá sau khi bit kiểu dữ liệu đã được ghi để cho phép đồng hồ thời gian thực cập nhật bytes thời gian và lịch. Vào lúc đầu, đồng hồ thời gian thực cập nhật ở một kiểu đã được lựa chọn. Kiểu dữ liệu không thể thay đổi mà không khởi động lại 10 bytes dữ liệu. Bảng 2 trình bày định dạng nhị phân và BCD của cả thời gian, lịch, và báo giờ. Bit lựa chọn kiểu hiển thị 24– 12 không thể thay đổi mà không khởi động lại thanh ghi giờ. Khi định dạng 12 giờ được lựa chọn, bit cao của bytes giờ tương ứng với PM khi nó được đặt ở mức logic 1. Bytes thời gian, lịch, và bytes báo giờ luôn được truy cập bởi vì chúng được đệm gấp đôi. Mỗi giây một lần, 11 bytes được nâng cấp và được kiểm tra tình trạng báo giờ. Nếu lệnh đọc dữ liệu thời gian và lịch diễn ra trong quá trình cập nhật, một vấn đề phát sinh là giờ, phút, giây, … có thể không chính xác. Xác xuất đọc không chính xác dữ liệu thời gian và lịch là rất thấp. Có vài phương pháp tránh một số sai số có thể xảy ra khi đọc thời gian và lịch được đề cập sau trong bài viết. 3 bytes báo giờ có thể sử dụng bằng 2 cách. Cách thứ nhất, khi thời gian báo giờ được ghi vào vị trí của các thanh ghi giờ, phút, giây, tác động báo giờ được bắt đầu tại thời gian chính xác trong ngày khi bit cho phép báo chuông được đặt ở mức cao. Cách thứ hai sử dụng để đặt trạng thái bất chấp vào một hoặc nhiều bytes báo chuông. Mã bất chấp là bất kỳ mã số hex nào nằm trong giá trị từ C0 đến FF. Hai bit có trọng số lớn nhất của những byte trên đặt vào trạng thái bất chấp khi ở mức logic 1. Báo giờ sẽ được sinh ra mỗi giờ khi bit bất chấp được đặt vào bytes giờ. Tương tự, báo giờ sẽ sinh ra mỗi phút nếu mã bất chấp có ở bytes giờ và bytes phút. Nếu mã bất chấp có ở trong cả 3 bytes báo giờ thì nó sẽ tạo ra tín hiệu ngắt mỗi giây.
Bảng 7.1: Kiểu dữ liệu thời gian, lịch và báo giờ
7.1.2.2.Các thanh ghi điều khiển
DS12C887 có 4 thanh ghi điều khiển được sử dụng vào mọi lúc kể cả trong quá trình cập nhật.
Bảng 7.2: Thanh ghi A
UIP - Update In Progress (UIP) là bit trạng thái mà có thể theo dõi được. Khi bit UIP ở mức 1, quá trình cập nhật sẽ sớm xảy ra. Khi bit UIP ở mức 0, quá trình cập nhật sẽ không xảy ra ít nhất là 244 ìs. Những thông tin về thời gian, lịch, và báo giờ ở trong RAM có đầy đủ cho việc truy cập khi bit UIP ở mức 0. Bit UIP là bit chỉ đọc và không bị ảnh hưởng của chân RESET\. Khi ghi bit SET ở thanh ghi B lên 1 để ngăn chặn mọi quá trình cập nhật và xoá bit trạng thái UIP.
DV2, DV1, DV0 – 3 bit trên được sử dụng để bật hoặc tắt bộ dao động và cài đặt lại quá trình đếm xuống. Khi được đặt 010 thì đó là sự kết hợp duy nhất để bật bộ dao động lên và cho phép RTC giữ thời gian. Khi được đặt 11X sẽ cho phép dao động nhưng giữ quá trình đếm xuống ở mức reset. Quá trình cập nhật tiếp theo sẽ sớm diễn ra sau 500ms sau khi kiểu 010 được ghi vào DV0, DV1 và DV2.
RS3, RS2, RS1, RS0 - 4 bit loại lựa chọn để lựa chọn một trong 13 loại của bộ chia 15 trạng thái hoặc không cho phép xuất tín hiệu chia ra ngoài. Loại được lựa chọn có thể phát ra sóng vuông (chân SQW) và/hoặc ngắt theo chu kỳ. Người sử dụng có thể sử dụng 1 trong những cách sau :
- Cho phép ngắt với bit PIE
- Cho phép xuất ngõ ra chân SQW với bit SQWE
- Cho phép cả hai hoạt động cùng một lúc và cùng một loại.
- Không kích hoạt cả 2
Bảng 7.3 liệt kê chu kỳ ngắt và tần số sóng vuông mà có thể chọn lựa với bit RS. Cả 4 bit đọc/ ghi đều không bị ảnh hưởng bởi chân RESET.
Bảng 7.3: Chu kỳ ngắt và tần số xung vuông
Bảng 7.4: Thanh ghi B
SET – Khi bit SET ở mức 0, thông thường quá trình cập nhật bằng cách tăng biến đếm 1 lần 1 giây. Khi bit SET được ghi vào mức 1, mọi quá trình cập nhật đều bị cấm, và chương trình có thể bắt đầu (khởi động) bytes thời gian và lịch mà không có quá trình cập nhật nào xảy ra trong quá trình khởi động. Chu kỳ đọc có thể thực thi ở cùng một kiểu. SET là bit đọc/ghi và không chịu ảnh hưởng của nút RESET hoặc các chức năng bên trong của DS12C887.
PIE – Bit cho phép ngắt theo chu kỳ (Periodic Interrupt Enable) là bit đọc/ghi, nó cho phép bit cờ ngắt theo chu kỳ (Periodic Interrupt Flag (PF)) trong thanh ghi C để điều khiển chân IRQ\ xuống mức thấp. Khi bit IE được đặt lên mức 1, chu kỳ ngắt được tạo ra bằng cách điều khiển chân IRQ\ xuống mức thấp tuỳ thuộc vào tỉ lệ phân bố của bit RS3-RS0 ở thanh ghi A. . A 0 in the PIE bit blocks the IRQ\ output from being driven by a periodic interrupt, but the Periodic Flag (PF) bit is still set at the periodic rate. PIE is not modified by any internal DS12C887 functions but is cleared to 0 on RESET\ .
AIE – Bit cho phép ngắt báo giờ (Alarm Interrupt Enable (AIE)) là bit đọc/ghi mà khi được đặt lên 1 nó cho phép bit cờ báo giờ(Alarm Flag (AF)) ở thanh ghi C để cho phép ngắt IRQ\. Tín hiệu ngắt báo giờ diễn ra ở tất cả các giây khi cả 3 bytes báo giờ chứa mã báo giờ “don’t care” được thể hiện ở nhị phân như sau 11XXXXXX. Các chức năng bên trong của DS12C887 khong bị ảnh hưởng bởi bit AIE.
UIE – Bit cho phép kết thúc quá trình ngắt cập nhật (Update Ended Interrupt Enable (UIE)) là bit đọc/ghi mà cho phép bit cờ kết thúc quá trình cập nhật ở thanh ghi C để cho phép ngắt IRQ\. Chân RESET\ ở mức 0 hoặc chân SET ở mức 1 sẽ xóa bit UIE.
SQWE – Khi bit cho phép xuất sóng vuông (Square Wave Enable (SQWE)) được đặt lên mức 1, một tín hiệu sóng vuông có tần số được đặt bởi vị trí được lựa chọn của bit RS3 đến RS0 sẽ điều khiển sóng ra tại chân SQW. Khi bit SQWE được đặt ở mức thấp, chân SQW sẽ được giữ ở mức thấp. SQWE là bit đọc\ghi và được xóa khi RESET. SQWE được đặt lên 1 khi được cấp VCC.
DM – Bit kiểu dữ liệu (Data Mode (DM)) quy định khi nào thì thông tin lịch và thời gian ở định dạng nhị phân hoặc BCD. Bit DM được đặt bởi chương trình để có định dạng thích hợp và có thể đọc khi được yêu cầu. Bit này không bị thay đổi bởi các chức năng bên trong hoặc chân RESET\. Mức 1 của DM sẽ hiển thị dữ liệu nhị phân còn mức 0 hiển thị dữ liệu Binary Coded Decimal (BCD).
24/12 – Bit điều khiển 24/12 xác định kiểu bytes giờ. Khi ở mức 1 thì nó chỉ chế độ hiển thị 24 giờ, còn ở mức 0 thì chỉ chế độ hiển thị 12 giờ. Bit này là bit đọc ghi và không bị ảnh hưởng bởi các chức năng bên trong cũng như chân RESET\.
DSE – Bit cho phép nhớ công khai (Daylight Savings Enable (DSE)) là bit đọc\ghi, nó cho phép 2 cập nhật đặc biệt khi DSE được đặt lên 1. Vào chủ nhật đầu tiên của tháng 4, thời gian sẽ tăng từ 1:59:59 AM lên 3:00:00 AM. Vào chủ nhật cuối cùng của tháng 10, khi thời gian lần đầu tiên đạt được 1:59:59 AM thì nó sẽ đổi thành 1:00:00 AM. Chức năng đặc biệt này sẽ không được thực thi nếu bit DSE ở mức 0. Bit này không bị ảnh hưởng bởi các chức năng bên trong cũng như chân RESET\.
Bảng 7.5:Thanh ghi C
IRQF – Bit cờ yêu cầu ngắt (Interrupt Request Flag (IRQF)) được đặt lên 1 khi một trong những điều dưới đây đúng :
PF = PIE = 1
AF = AIE = 1
UF = UIE = 1
Điều đó có nghĩa là IRQF = (PF . PIE) + (AF . AIE) + (UF . UIE) Bất cứ lúc nào bit IRQF được đặt lên 1, chân IRQ\ được đặt xuống mức thấp. Bit cờ PF, AF và UF được xoá khi thanh ghi C được chương trình đọc hoặc chân RESET\ ở mức thấp.
PF – Bit cờ ngắt theo chu kỳ (Periodic Interrupt Flag (PF)) là bit chỉ đọc, nó được đặt lên mức 1 khi có 1 sườn xung được phát hiện ở tín hiệu lựa chọn của bộ chia. Từ bit RS3 đến RS0 xác định chu kỳ. PF được đặt lên 1 bất chấp trạng thái của bit PIE. Khi cả PF và PIE đều ở mức 1, tín hiệu IRQ\ được kích hoạt và sẽ đặt bit IRQF lên mức 1. Bit PF sẽ bị xoá bằng phần mềm đọc thanh ghi C hoặc chân RESET\.
AF - Mức 1 của bit cờ cho phép ngắt báo giờ (Alarm Interrupt Flag (AF)) chỉ ra rằng thời gian hiện tại được so sánh với thời gian báo giờ. Nếu bit AIE còn ở mức 1, chân IRQ\ sẽ xuống mức thấp và 1 sẽ được đặt vào bit IRQF. Khi RESET\ hoặc đọc thanh ghi C sẽ xoá AF.
UF – Bit cờ ngắt kết thúc cập nhật (Update Ended Interrupt Flag (UF)) được đặt sau mỗi chu kỳ cập nhật. Khi bit UIE được đặt lên 1, mức 1 ở UF sẽ làm cho bit IRQF lên mức 1, nó sẽ xác định trạng thái chân IRQ\. UF sẽ bị xoá khi thanh ghi C được đọc hoặc có tín hiệu RESET. Từ bit 3 đến bit 0- Đây là những bit không sử dụng của thanh ghi trạng thái C. Những bit này luôn luôn ở mức 0 và không thể ghi đè.
Bảng 7.6: Thanh ghi D
VRT – Bit thời gian và RAM hợp lệ (Valid RAM and Time (VRT)) biểu thị tình tạng của của pin được kết nối chân VBAT. Bit này không phải là bit ghi được và luôn có giá trị bằng 1 khi đọc. Nếu hiển thị mức 0, nguồn năng lượng lithium bên trong đã cạn và cả hai mục dữ liệu thời gian thực lẫn dữ liệu RAM đều bị nghi ngờ. Bit này không chịu ảnh hưởng bởi chân RESET.
BIT 6 ĐẾN BIT 0 – Những bit được đề cập ở trên của thanh ghi D không được sử dụng. Chúng không ghi được và khi đọc thì luôn có giá trị bằng 0.
7.1.3. Chu kỳ cập nhật
DS12C887 thực hiện một chu kỳ cập nhật mỗi lần một giây bất chấp bit SET ở thanh ghi B. Khi bit SET ở thanh ghi B được đặt lên 1, bộ phận sao chép từ bộ đệm các bytes thời gian, lịch, báo giờ sẽ không hoạt động và sẽ không cập nhật thời gian khi thời gian tăng lên. Tuy nhiên, quá trình đếm giờ vẫn tiếp tục để cập nhật bộ nhớ nội để sao chép vào bộ đệm. Hành động này cho phép thời gian vẫn duy trì độ chính xác mà không phụ thuộc quá trình đọc hoặc ghi bộ đệm thời gian, lịch và báo giờ và cũng chắc chắn rằng những thông tin về thời gian và lịch là phù hợp. Chu kỳ cập nhật cũng so sánh những bytes báo giờ với những bytes thời gian tương ứng và kết quả là có báo giờ nếu giống nhau hoặc là mã “don’t care” được đặt cho tất cả 3 vị trí. Có 3 cách có thể điều khiển truy cập đồng hồ thời gian thực mà có thể tránh được bất kỳ khả năng truy cập các dữ liệu về thời gian và lịch mâu thuẩn với nhau. Cách thứ nhất sử dụng ngắt kết thúc cập nhật. Nếu được kích hoạt, một tín hiệu ngắt sẽ xảy ra sau mỗi chu kỳ cập nhật mà chỉ ra rằng có hơn 999ms để đọc những thông tin về thời gian và ngày tháng thực. Nếu ngắt này được sử dụng, bit IRQF ở thanh ghi C phải được xóa trước khi bỏ những ngắt thường lệ. Cách thứ 2 sử dụng bit đang cập nhật (Update-In- Progress (UIP)) ở thanh ghi A để xác nhận răng chu kỳ cập nhật đang được tiến hành. Bit UIP sẽ phát xung mỗi lần một giây. Sau khi bit UIP lên mức cao, quá trình cập nhật tiến hành sau 244ìs. Nếu bit UIP ở mức thấp, nó cần ít nhất 244ìs trước khi dữ liệu thời gian/lịch thay đổi. Chính vì vậy, người sử dụng có thể tránh được những phục vụ ngắt thông thường mà có thể làm thời gian cần thiết để đọc đúng dữ liệu thời gian/lịch vượt quá 244ìs. Cách thứ 3 sử dụng ngắt theo chu kỳ để xác định khi có một chu kỳ cập nhật. Bit UIP ở thanh ghi A được đặt lên mức 1 trong khi đặt bit PF ở thanh ghi C. Ngắt theo chu kỳ xuất hiện làm cho một phần lớn hơn của tBUC cho phép thông tin thực về thời gian và lịch có thể đạt được tại tất cả nơi xảy ra của chu kỳ ngắt. Việc đọc chỉ có thể hoàn tất khi 1 (tPI/2 + tBUC) để chắc chắn rằng dữ liệu không được đọc trong suốt quá trình cập nhật.
7.1.4. Giao tiếp bus với các chế độ định thời
Hình 7.3: Giao tiếp bus với IC Motorola.
Hình 7.4: Giao tiếp bus với IC Intel
7.2. GIỚI THIỆU IC GHI DỊCH CÔNG SUẤT 8 BIT TPIC6B595
TPIC6B595 là một thanh ghi dịch công suất 8 bít được thiết kế dùng trong các hệ thống với yêu cầu công suất tải vừa phải. Nó được ứng dụng để lái các rơle , cuộn dây, các tải có điện áp cao và dòng trung bình,...
Đây là IC ghi dịch 8 bit vào nối tiếp ra song song có một thanh ghi lưu trữ 8 bít loại D
Có hai ngõ vào xung clock là SRCK (Shift – Register clock ) và RCK (Register clock )
Thanh ghi lưu trữ chuyển đổi dữ liệu đến ngõ ra khi chân SRCLR\ ở mức cao. Khi chân này (SRCLR\) ơ mức thấp thì ngõ vào ghi dịch được xoá. Khi ngõ ra cho phép (G\) được giữ ở mức cao tất cả các dữ liệu ở các bộ đệm ngõ ra được giữ ở mức thấp và tất cả các ngõ ra cực máng được tắt. Khi chân G được giữ ở mức thấp, giữ liệu từ các thanh ghi được đưa ra ngoài.
Ghi lưu trữ được đưa đến các bộ đệm ngõ ra. Khi giữ liệu ở các bộ đệm ngõ ra là mức thấp thì ngõ ra của các transistor DMOS được tắt. Khi các giữ liệu này ở mức cao các ngõ ra transistor DMOS có thể được cấp dòng sink.
7.2.1. Sơ đồ chân
Hình 7.5: Sơ đồ chân IC TPIC6B595
• SER IN : Ngõ vào dữ liệu nối tiếp.
• SRCLR\ : Ngõ vào xoá.
• G\ : Chân cho phép các ngõ ra.
• SER OUT : Ngõ ra nối tiếp.
• SRCK, RCK : Các ngõ vào xung CK.
• DR0-DR7 : 8 ngõ ra song song.
• GND : Nối mass.
• VCC : Nối nguồn 5V.
• NC : Không kết nối.
7.2.3. Sơ đồ logic
Hình 7.6 : Sơ đồ logic IC TPIC6B595.
7.2.4. Dạng sóng điện áp
Hình 7.7: Dạng sóng điện áp của IC TPIC6B595
7.3. GIỚI THIỆU IC 8051:
IC vi điều khiển 8051 thuộc họ MCS51 có các đặt điểm sau :
- 4KB ROM (được lập trình bởi nhà sản xuất chỉ có ở 8051)
- 128 byte RAM
- 4port I10 8bit
- Hai bộ định thời 16bit
- Giao tiếp nối tiếp
- 64KB không gian bộ nhớ chương trình mở rộng
- 64 KB không gian bộ nhớ dữ liệu mở rộng
- một bộ xử lí luận lí (thao tác trên các bit đơn)
- 210 bit được địa chỉ hóa
- bộ nhân / chia 4ms
- 7.3.1.CẤU TRÚC BÊN TRONG CỦA 8051 :
Hình 7.8 : Sơ Đồ Khối 8051
Phần chính của vi điều khiển 8051 là bộ xử lí trung tâm (CPU: Central Processing Unit ) bao gồm :
- Thanh ghi tích lũy A
- Thanh ghi tích lũy phụ B, dùng cho phép nhân và phép chia
- Đơn vị logic học (ALU : Arithmetic Logical Unit )
- Từ trạng thái chương trình (PSW : Prorgam Status Word)
- Bốn băng thanh ghi
- Con trỏ ngăn xếp
- Ngoài ra còn có bộ nhớ chương trình, bộ giải mã lệnh, bộ điều khiển thời gian và logic.
Đơn vị xử lí trung tâm nhận trực tiếp xung từ bộ giao động, ngoài ra còn có khả năng đưa một tín hiệu giữ nhịp từ bên ngoài.
Chương trình đang chạy có thể cho dừng lại nhờ một khối điều khiển ngắt ở bên trong. Các nguồn ngắt có thể là : các biến cố ở bên ngoài, sự tràn bộ đếm định thời hoặc cũng có thể là giao diện nối tiếp.
Hai bộ định thời 16 bit hoạt động như một bộ đếm.
Các cổng (port0, port1, port2, port3 ). Sử dụng vào mục đích điều khiển.
Ơ cổng 3 có thêm các đường dẫn điều khiển dùng để trao đổi với một bộ nhớ bên ngoài, hoặc để đầu nối giao diện nối tiếp, cũng như các đường ngắt dẫn bên ngoài.
Giao diện nối tiếp có chứa một bộ truyền và một bộ nhận không đồng bộ, làm việc độc lập với nhau. Tốc độ truyền qua cổng nối tiếp có thể đặt trong vảy rộng và được ấn định bằng một bộ định thời.
Trong vi điều khiển 8051 / 8031 có hai thành phần quan trọng khác đó là bộ nhớ và các thanh ghi :
Bộ nhớ gồm có bộ nhớ Ram và bộ nhớ Rom (chỉ có ở 8031) dùng để lưu trữ dữ liệu và mã lệnh.
Các thanh ghi sử dụng để lưu trữ thông tin trong quá trình xử lí. Khi CPU làm việc nó làm thay đổi nội dung của các thanh ghi.
7.3.2 . CHỨC NĂNG CÁC CHÂN VI ĐIỀU KHIỂN :
Hình 7.9 : Sơ Đồ Chân 8051
a. Port0 : là port có 2 chức năng ở trên chân từ 32 đến 39 trong các thiết kế cỡ nhỏ (không dùng bộ nhớ mở rộng) có hai chức năng như các đường IO. Đối với các thiết kế cỡ lớn (với bộ nhớ mở rộng) nó được kết hợp kênh giữa các bus.
b. Port1 : port1 là một port I/O trên các chân 1-8. Các chân được ký hiệu P1.0, P1.1, P1.2 … có thể dùng cho các thiết bị ngoài nếu cần. Port1 không có chức năng khác, vì vậy chúng ta chỉ được dùng trong giao tiếp với các thiết bị ngoài.
c. Port2 : port2 là một port công dụng kép trên các chân 21 – 28 được dùng như các đường xuất nhập hoặc là byte cao của bus địa chỉ đối với các thiết kế dùng bộ nhớ mở rộng.
d. Port3 : port3 là một port công dụng kép trên các chân 10 – 17. Các chân của port này có nhiều chức năng, các công dụng chuyển đổi có liên hệ với các đặc tín đặc biệt của 8051 như ở bảng sau :
Bảng 7.7 : Chức năng của các chân trên port3
e. PSEN (Program Store Enable ) : 8051 có 4 tín hiệu điều khiển:
PSEN là tín hiệu ra trên chân 29. Nó là tín hiệu điều khiển để cho phép bộ nhớ chương trình mở rộng và thường được nối đến chân OE (Output Enable) của một EPROM để cho phép đọc các bytes mã lệnh.
PSEN sẽ ở mức thấp trong thời gian lấy lệnh. Các mã nhị phân của chương trình được đọc từ EPROM qua bus và được chốt vào thanh ghi lệnh của 8051 để giải mã lệnh. Khi thi hành chương trình trong ROM nội (8051) PSEN sẽ ở mức thụ động (mức cao).
f. ALE (Address Latch Enable ) :
Tín hiệu ra ALE trên chân 30 tương hợp với các thiết bị làm việc với các xử lí 8585, 8088, 8086, 8051 dùng ALE một cách tương tự cho làm việc giải các kênh các bus địa chỉ và dữ liệu khi port 0 được dùng trong chế độ chuyển đổi của nó : vừa là bus dữ liệu vừa là byte thấp của địa chỉ, ALE là tín hiệu để chốt địa chỉ vào một thanh ghi bên ngoài trong nữa đầu của chu kỳ bộ nhớ. Sau đó, các đường port 0 dùng để xuất hoặc nhập dữ liệu trong nữa sau chu kỳ của bộ nhớ.
Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động trên chip và có thể được dùng là nguồn xung nhịp cho các hệ thống. Nếu xung trên 8051 là 12MHz thì ALE có tần số 2MHz. Chỉ ngoại trừ khi thi hành lệnh MOVX, một xung ALE sẽ bị mất. Chân này cũng được làm ngõ vào cho xung lập trình cho EPROM trong 8051.
g. EA (External Access) :
Tín hiệu vào EA trên chân 31 thường được mắc lên mức cao (+5V) hoặc mức thấp (GND). Nếu ở mức cao, 8051 thi hành chương trình từ ROM nội trong khoảng địa chỉ thấp (4K). Nếu ở mức thấp, chương trình chỉ được thi hành từ bộ nhớ mở rộng. Khi dùng 8031, EA luôn được nối mức thấp vì không có bộ nhớ chương trình trên chip. Nếu EA được nối mức thấp bộ nhớ bên trong chương trình 8051 sẽ bị cấm và chương trình thi hành từ EPROM mở rộng. Người ta còn dùng chân EA làm chân cấp điện áp 21V khi lập trình cho EPROM trong 8051.
h. SRT (Reset) :
Ngõ vào RST trên chân 9 là ngõ reset của 8051. Khi tín hiệu này được đưa lên múc cao (trong ít nhất 2 chu kỳ máy ), các thanh ghi trong 8051 được tải những giá trị thích hợp để khởi động hệ thống.
i . Các ngõ vào bộ dao động trên chip :
Như đã thấy trong các hình trên , 8051 có một bộ dao động trên chip. Nó thường được nối với thạch anh giữa hai chân 18 và 19. Các tụ giữa cũng cần thiết như đã vẽ. Tần số thạch anh thông thường là 12MHz.
j. Các chân nguồn :
8051 vận hành với nguồn đơn +5V. Vcc được nối vào chân 40 và Vss (GND) được nối vào chân 20.
* CHƯƠNG TRÌNH
bienmode equ r6
mode bit p1.1
up bit p1.0
dwn bit p1.2
van equ 56h
var1 equ 57h
var2 equ 58
giay equ 10h
phut equ 11h
gio equ 12h
ngay equ 13h
thang equ 14h
nam equ 15h
thu equ 16h
le1 bit p1.4
le2 bit p1.5
le3 bit p3.0
cs1 bit p3.5
cs2 bit p3.4
ser1 bit p1.7
ser2 bit p3.1
ck bit p3.2
enb bit p3.3
zdata equ p2 ;p2 = 04h cho phep ic chot dk led 7 doan
start bit p3.0
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx org 000h
lcall khoitaodallas
lcall docdongho
lcall docnhietdo
lcall bcd7doan
mov p3,#0
mov bienmode,#0
mov van,#0
mov var2,#0
mov var1,#0
tudau: mov a,ngay
cjne a,#8,ngayle1
mov a,thang
cjne a,#3,ngayle1
mov 50h,#30h ;cho phep cot do
mov 51h,#0f8h ;dia chi cua dpl
mov 52h,#08h ;dia chi cua dph
mov 53h,#07h ;dia chi cuoi
mov 54h,#00h
ljmp chtr_chinh
ngayle1: cjne a,#30h,ngayle2
mov a,thang
cjne a,#04,ngayle2
mov 50h,#30h ;cho phep cot do
mov 51h,#04eh ;dia chi cua dpl
mov 52h,#0bh ;dia chi cua dph
mov 53h,#09h ;dia chi cuoi
mov 54h,#28h
ljmp chtr_chinh
ngayle2: cjne a,#01h,ngayle3
mov a,thang
cjne a,#05h,ngayle4
mov 50h,#30h ;cho phep cot do
mov 51h,#06ch ;dia chi cua dpl
mov 52h,#0dh ;dia chi cua dph
mov 53h,#0bh ;dia chi cuoi
mov 54h,#4eh ;dia chu cuoi byte thap
ljmp chtr_chinh
ngayle4: cjne a,#01h,ngayle3
mov 50h,#30h ;cho phep cot do
mov 51h,#0bch ;dia chi cua dpl
mov 52h,#010h ;dia chi cua dph
mov 53h,#0fh ;dia chi cuoi
mov 54h,#8ch
ljmp chtr_chinh
ngayle3: cjne a,#02h,ngayle5
mov a,thang
cjne a,#09h,ngayle5
mov 50h,#30h ;cho phep cot do