Tính mới và sáng tạo: Nghiên cứu tổng quan về bộ thực hành vi điều khiển AT89S52 giao tiếp với các khối ngoại vi như nút phím nhấn, đèn led đơn, led 7 đoạn, màn hình LCD 1602, IC thời g
Trang 1TRƯỜNG ĐẠI HỌC HẢI PHÒNG
<ĐT.CN.2024.03>
Chủ nhiệm đề tài : ThS Nguyễn Quang Thư
Thành viên tham gia : 1 Th.S Đặng Hữu Vĩnh
2 Th.S Bùi Văn Điệp
3 Th.S Phạm Thị Thanh Đơn vị : Khoa Điện - Cơ
Hải Phòng, tháng 9 năm 2024
Trang 2MỤC LỤC
MỤC LỤC i
DANH MỤC BẢNG BIỂU - HÌNH VẼ iii
DANH MỤC CHỮ VIẾT TẮT vi
THÔNG TIN KẾT QUẢ NGHIÊN CỨU vii
MỞ ĐẦU 1
CHƯƠNG 1 TỔNG QUAN VỀ VI ĐIỀU KHIỂN 4
1.1 Các dòng vi điều khiển 4
1.2 Vi điều khiển AT89S52 6
1.3 Đánh giá tổng quan về các bộ kit thực hành vi điều khiển 10
CHƯƠNG 2 ĐỀ XUẤT MÔ HÌNH BỘ THỰC HÀNH 12
2.1 Đặt vấn đề 12
2.2 Đề xuất chế tạo bộ thực hành vi điều khiển AT89S52 12
2.3 Các linh kiện chính sử dụng trong bộ thực hành 13
2.3.1 IC thời gian thực DS 12887 13
2.3.2 Led 7 thanh 17
2.3.3 Màn hình LCD 16x2 19
2.3.4 IC Max485 21
2.4 Các khối ghép nối ngoại vi 22
CHƯƠNG 3 CHẾ TẠO BỘ THỰC HÀNH VI ĐIỀU KHIỂN 23
3.1 Thiết kế và sản xuất mạch in 23
3.1.1 Khối vi điều khiển AT89S52 23
3.1.2 Khối nút nhấn 24
3.1.3 Khối IC thời gian thực DS 12C887 26
3.1.4 Khối IC đệm 74HC245 27
3.1.5 Khối đèn led đơn 27
3.1.6 Khối Led 7 thanh 29
3.1.7 Khối màn hình LCD 16x2 30
3.1.8 Khối RS-485 31
3.1.9 Khối modul hệ thống đèn giao thông ngã tư 32
3.2 Lắp ráp và hàn board mạch điện tử 33
3.3 Chạy thử và hiệu chỉnh 34
CHƯƠNG 4 BÀI TẬP ỨNG DỤNG 36
4.1 Giao tiếp vi điều khiển với led đơn 36
4.1.1 Sơ đồ đấu nối mạch vi điều khiển giao tiếp với led đơn 36
4.1.2 Nguyên lý điều khiển đèn led đơn 36
4.1.3 Hướng dẫn luyện tập vi điều khiển giao tiếp với led đơn 36
4.1.4 Bài tập ứng dụng vi điều khiển giao tiếp với led đơn 40
4.2 Giao tiếp vi điều khiển với led 7 thanh 44
4.2.1 Cấu tạo của led 7 thanh 44
4.2.2 Nguyên lý điều khiển led 7 thanh 44
4.2.3 Hướng dẫn luyện tập vi điều khiển giao tiếp với led 7 thanh 44
4.2.4 Bài tập ứng dụng vi điều khiển giao tiếp với led 7 thanh 51
4.3 Giao tiếp vi điều khiển với phím nhấn 52
Trang 34.3.1 Sơ đồ đấu nối mạch vi điều khiển với phím nhấn 52
4.3.2 Nguyên lý giao tiếp với phím nhấn 52
4.3.3 Hướng dẫn luyện tập vi điều khiển giao tiếp với phím nhấn 53
4.3.4 Bài tập ứng dụng vi điều khiển giao tiếp với phím nhấn 57
4.4 Giao tiếp vi điều khiển với màn hình LCD16x2 58
4.4.1 Sơ đồ chân của màn hình LCD 16x2 58
4.4.2 Sơ đồ nguyên lý mạch vi điều khiển giao tiếp với màn hình LCD 16x2 59
4.4.3 Hướng dẫn luyện tập vi điều khiển giao tiếp với màn hình LCD16x2 60
4.4.4 Bài tập ứng dụng vi điều khiển giao tiếp với màn hình LCD16x2 67
4.5 Giao tiếp vi điều khiển với truyền thông kết nối máy tính 68
4.5.1 Sơ đồ mạch vi điều khiển AT89S52 giao tiếp với máy tính 68
4.5.2 Hướng dẫn luyện tập vi điều khiển giao tiếp với máy tính 69
4.5.3 Bài tập ứng dụng vi điều khiển giao tiếp với máy tính 75
4.6 Thiết kế mạch báo chuông giờ học, sử dụng IC thời gian thực 76
4.6.1 Sơ đồ đấu nối 6 dèn led 7 thanh với mạch vi điều khiển 76
4.6.2 Hướng dẫn luyện tập viết chương trình tạo đồng hồ thời gian thực 76
4.6.3 Bài tập ứng dụng viết chương trình đồng hồ thời gian thực 80
4.7 Thiết kế bộ điều khiển hệ thống đèn giao thông ngã tư 80
4.7.1 Mô hình hệ thống đèn giao thông ngã tư 80
4.7.2 Sơ đồ khối hệ thống điều khiển đèn giao thông ngã tư dùng vi điều khiển 81
4.7.3 Sơ đồ nguyên lý mạch Master và Slave dùng vi điều khiển AT89S52 81
4.7.4 Hướng dẫn luyện tập viết chương trình điều khiển đèn giao thông 83
4.7.5 Bài tập ứng dụng viết chương trình điều khiển đèn giao thông 95
KẾT LUẬN 97
TÀI LIỆU THAM KHẢO 98
Trang 4DANH MỤC BẢNG BIỂU - HÌNH VẼ
Hình 1.1 Chíp AT89S52 thực tế 6
Hình 1.2 Sơ đồ khối của vi điều khiển AT89S52 7
Hình 1.3 Sơ đồ chân của vi điều khiển AT89S52 8
Hình 2.1 Sơ đồ khối bộ thực hành vi điều khiển AT89S52 13
Hình 2.2 IC thời gian thực 12C887 13
Hình 2.3 Sơ đồ đấu nối của 12C887 14
Hình 2.4 Sơ đồ khối của 12C887 15
Hình 2.5 Led 7 thanh 17
Hình 2.6 Sơ đồ chân led 7 đoạn 17
Hình 2.7 Led 7 đoạn có K chung 18
Hình 2.8 Led 7 đoạn có A chung 18
Hình 2.9 Hiển thị chữ số trên led 7 thanh 19
Hình 2.10 Màn hình LCD 16x2 19
Hình 2.11 Kích thước của màn hình LCD16x2 19
Hình 2.12: Mặt sau của màn hình LCD16x2 20
Hình 2.13 Sơ đồ kết nối của màn hình LCD16x2 21
Hình 2.14 IC giao tiếp MAX485 21
Hình 3.1 Sơ đồ nguyên lý khối vi điều khiển AT89S52 23
Hình 3.2 Sơ đồ bố trí linh kiện trên mạch khối vi điều khiển AT89S52 24
Hình 3.3 Sơ đồ mạch in lớp dưới khối vi điều khiển AT89S52 24
Hình 3.4 Sơ đồ mạch nguyên lý khối nút nhấn 25
Hình 3.5 Sơ đồ bố trí linh kiện trên mạch lớp trên khối nút nhấn 25
Hình 3.6: Sơ đồ mạch in lớp dưới khối nút nhấn 25
Hình 3.7 Sơ đồ mạch nguyên lý khối DS 12C887 26
Hình 3.8 Sơ đồ bố trí linh kiện trên mạch lớp trên khối DS 12887 26
Hình 3.9 Sơ đồ mạch in lớp dưới khối DS 12887 26
Hình 3.10 Sơ đồ mạch nguyên lý khối khối IC đệm 74HC245 27
Hình 3.11 Sơ đồ bố trí linh kiện trên mạch lớp trên khối IC đệm 74HC245 27
Hình 3.12 Sơ đồ mạch in lớp dưới khối khối IC đệm 74HC245 27
Hình 3.13 Sơ đồ mạch nguyên lý khối đèn led đơn 28
Hình 3.14 Sơ đồ bố trí linh kiện trên mạch lớp trên khối đèn led đơn 28
Hình 3.15 Sơ đồ mạch in lớp dưới khối đèn led đơn 28
Hình 3.16 Sơ đồ mạch nguyên lý khối Led 7 thanh 29
Hình 3.17 Sơ đồ bố trí linh kiện trên mạch lớp khối Led 7 thanh 29
Hình 3.18 Sơ đồ mạch in lớp dưới khối Led 7 thanh 30
Hình 3.19 Sơ đồ mạch nguyên lý khối màn hình LCD 16x2 30
Trang 5Hình 3.20 Sơ đồ bố trí linh kiện trên mạch lớp trên khối màn hình LCD 1602 31
Hình 3.21 Sơ đồ mạch in lớp dưới khối màn hình LCD 1602 31
Hình 3.22 Sơ đồ mạch nguyên lý khối RS 485 31
Hình 3.23 Sơ đồ bố trí linh kiện trên mạch lớp trên khối RS 485 32
Hình 3.24 Sơ đồ mạch in lớp dưới khối RS 485 32
Hình 3.25 Sơ đồ mạch in lớp trên khối modul hệ thống đèn giao thông ngã tư 33
Hình 3.26 Sơ đồ mạch in lớp dưới khối modul hệ thống đèn giao thông ngã tư 33
Hình 3.27 Board mạch điện tử trước khi lắp ráp linh kiện 33
Hình 3.28 Công đoạn lắp các linh kiện điện tử vào board mạch 34
Hình 3.29 Hoàn thành board mạch điện tử bộ thực hành vi điều khiển 89S52 34
Hình 3.30 Hoàn thiện bộ thực hành vi điều khiển AT89S52 35
Hình 4.1 Sơ đồ nguyên lý mạch vi điều khiển AT89S52 giao tiếp với led đơn 36
Hình 4.2 Led sáng tắt tại chân P2.0 37
Hình 4.3 Led sáng tắt so le nhau tại chân P2.0 và chân P2.1 39
Hình 4.4 Led sáng tắt ở cổng P2 40
Hình 4.5 Sơ đồ cấu tạo led 7 thanh loại K tốt chung 44
Hình 4.6 Sơ đồ đấu nối mạch vi điều khiển với một led 7 thanh 45
Hình 4.7 Hiển thị sáng tắt số 0 trên led 7 thanh 46
Hình 4.8 Hiển thị số đếm từ 0 đến 9 trên led 7 thanh 47
Hình 4.9 Sơ đồ đấu nối mạch điều khiển 6 led 7 thanh 48
Hình 4.10 Hiển thị số 012345 trên 6 led 7 thanh 51
Hình 4.11 Sơ đồ nguyên lý mạch AT89S52 giao tiếp với khối phím nhấn 52
Hình 4.12 Nhấn phím P1.0 hiển thị số 0 sáng tắt trên led 7 thanh 54
Hình 4.13 Hiển thị số 0 và số 1 sáng tắt trên led 7 thanh 55
Hình 4.14 Hiển thị đếm tiến từ 0 đến 9 trên led 7 thanh 57
Hình 4.15 Sơ đồ chân của màn hình LCD16x2 58
Hình 4.16 Sơ đồ nguyên lý AT89S52 giao tiếp với màn hình LCD 16x2 59
Hình 4.17 Hiển thị chữ Trường DHHP trên màn hình LCD16x2 63
Hình 4.18 Hiển thị tên Trường và tên Sinh viên trên màn hình LCD16x2 67
Hình 4.19 Sơ đồ nguyên lý mạch AT89S52 giao tiếp truyền thông máy tính 68
Hình 4.20 Hiển thị số 0123456789 nhận được từ máy tính qua cổng nối tiếp 71
Hình 4.21 Hiển thị ký tự nhận được từ máy tính qua cổng nối tiếp 75
Hình 4.22 Sơ đồ nguyên lý AT89S52 giao tiếp với led 7 thanh 76
Hình 4.23 Hiển thị giờ phút giây trên led 7 thanh 79
Hình 4.24 Mô hình hệ thống đèn giao thông ngã tư đơn giản 80
Hình 4.25 Sơ đồ khối hệ thống điều khiển đèn giao thông ngã tư 81
Hình 4.26 Sơ đồ nguyên lý mạch Master dùng vi điều khiển AT89S52 81
Trang 6Hình 4.27 Sơ đồ nguyên lý mạch Slave dùng vi điều khiển AT89S52 82
Hình 4.28 Hiển thị tín hiệu đèn giao thông đỏ vàng xanh trên led đơn 85
Hình 4.29 Hiển thị tín hiệu đèn giao thông có chế độ cảnh giới ban đêm 88
Hình 4.30 Hiển thị thời gian và tín hiệu đèn giao thông 95
Trang 7DANH MỤC CHỮ VIẾT TẮT
Ký hiệu viết tắt Viết đầy đủ (tiếng Anh) Ý nghĩa
CPU Central Processing Unit Bộ xử lý trung tâm
DC Direct Current Dòng điện một chiều
AC Alternating Current Dòng điện xoay chiều RAM Random Access Memory Bộ nhớ truy cập ngẫu nhiên ROM Read Only Memory Bộ nhớ chỉ đọc
CNC Computer Numerical Control Điều khiển bằng máy tính MCU Microcontroller Unit Đơn vị Vi điều khiển PWM Pulse Width Modulation Điều chế Độ rộng Xung WDT Watchdog Timer Đồng hố giám sát
CMOS Complementary Metal-
Oxide-Semiconductor
là một công nghệ chế tạo mạch tích hợp
ALE Address Latch Enable Cho phép chốt địa chỉ
PSEN Program Store Enable Kích hoạt bộ lưu trữ
chương trình lập trình MOSI Master Out Slave In Ra từ Master vào Slave MISO Master In Slave Out Vào từ Slave ra Master
SCK Serial Clock Xung nhịp trong truyền
nối tiếp UART Universal Asynchronous
Receiver-Transmitter
Giao thức và và phần cứng truyền nhận dữ liệu nối tiếp
Trang 8Mẫu T14b
UBND THÀNH PHỐ HẢI PHÒNG
TRƯỜNG ĐẠI HỌC HẢI PHÒNG
CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
THÔNG TIN KẾT QUẢ NGHIÊN CỨU
ĐỀ TÀI NCKH CẤP TRƯỜNG NĂM HỌC 2023 - 2024
1 Thông tin chung:
Tên đề tài: Nghiên cứu, chế tạo bộ thực hành Vi điều khiển AT89S52 phục vụ giảng dạy và nghiên cứu khoa học cho ngành Điện Trường Đại học Hải Phòng
Mã số: ĐT.CN.2024.03
Chủ nhiệm: ThS Nguyễn Quang Thư
Cơ quan chủ trì: Trường Đại học Hải Phòng
Thời gian thực hiện: 12 tháng (2023 - 2024)
và ứng dụng thực tiễn Bộ thực hành này sẽ là công cụ hữu ích để phục vụ giảng dạy
và nghiên cứu khoa học cho ngành Điện Trường Đại học Hải Phòng
3 Tính mới và sáng tạo:
Nghiên cứu tổng quan về bộ thực hành vi điều khiển AT89S52 giao tiếp với các khối ngoại vi như nút phím nhấn, đèn led đơn, led 7 đoạn, màn hình LCD 1602, IC thời gian thực và cách truyền thông đa xử lý master slave trong ứng dụng điều khiển
hệ thống đèn giao thông ngã tư
Thiết kế và xây dựng thành công mô hình bộ thực hành vi điều khiển thực hiện được đầy đủ các bài thực hành trong học phần thực hành vi điều khiển của ngành Điện Trường Đại học Hải Phòng
Bộ thực hành vi điều khiển AT89S52 thiết kế với các chân đầu vào và đầu ra ở dạng chân cắm chờ, điều này giúp cho việc nâng cao tính linh hoạt cũng như tính sáng tạo đối với ứng dụng trong giảng dạy và nghiên cứu
Xây dựng tài liệu hướng dẫn chi tiết với bài từ cơ bản đến chuyên sâu liên quan đến việc lập trình giao tiếp với các khối ngoại vi cơ bản và truyền thông đa xử lý master - slave bằng giao thức modbus RTU với chuNn truyền thông RS485
Chính vì vậy, sản phNm khoa học của nhóm tác giả sẽ là cần thiết, giúp Sinh viên
và các Giảng viên làm nghiên cứu khoa học sớm được tiếp cận với bộ thực hành
4 Kết quả nghiên cứu:
Trang 9Nghiên cứu và chế tạo thành công mô hình vật lý bộ thực hành Vi điều khiển AT89S52 phục vụ giảng dạy và nghiên cứu khoa học cho ngành Điện Trường ĐHHP Xây dựng tài liệu hướng dẫn chi tiết với các bài ví dụ từ cơ bản đến nâng cao liên quan đến lập trình vi điều khiển AT89S52 để hoàn thiện 1 bài toán điều khiển từ khâu xác định yêu cầu điều khiển, cách lựa chọn linh kiện điện tử, thiết kế phần cứng và lập trình phần mềm vi điều khiển
Sản phNm hoàn thiện của đề tài giúp nâng cao chất lượng giảng dạy, nghiên cứu khoa học của giảng viên cho sinh viên khi thực hành trên bộ thực hành thực
5 Công bố sản ph/m khoa học từ kết quả nghiên cứu của đề tài:
(ghi rõ tên tạp chí năm xuất bản và minh chứng kèm theo nếu có) hoặc nhận xét,
đánh giá của cơ sở đã áp dụng các kết quả nghiên cứu (nếu có):
Công bố sản phNm khoa học từ kết quả nghiên cứu của đề tài là bài báo
“Application of AT89S52 microcontroller network design and manufacture traffic light system model” được đăng trên tạp chí “International Journal of Advances in Engineering and Management”; có chỉ số ISSN: 2395-5252; tháng 8 năm 2024 và được xuất bản tại Tập 6, Số 8, trang số: 533-541của tạp chí
6 Hiệu quả, phương thức chuyển giao kết quả nghiên cứu và khả năng áp dụng:
Là sản phNm giới thiệu cho sinh viên chuyên ngành điện, giảng dạy cho sinh viên chuyên ngành với nhiều học phần liên quan như: thực hành vi điều khiển, Kỹ thuật Vi
xử lý, Kỹ thuật lập trình, Công nghệ lắp rắp mạch điện tử Đông thời giảng viên có thể
sử dụng bộ thực hành vi điều khiển AT89S52 để lập trình điều khiển ứng dụng phục phụ công tác nghiên cứu khoa học
Trong khi kinh phí để xây dựng phòng thực hành quy mô và đạt chuNn còn hạn chế thì việc giảng viên nghiên cứu khoa học và chế tạo được một sản phNm khoa học phục vụ dạy học thực hành là rất cần thiết Giúp nhà trường và các đơn vị đào tạo tiết kiệm chi phí mua sắm thiết bị hay chuyển giao công nghệ ở nước ngoài với chi phí rất lớn
Sản phNm khoa học được nhóm nghiên cứu đưa ra vừa giải quyết được vấn đề thực hành trong bộ môn Điện, trường Đại học Hải Phòng thời gian tới và xa hơn là cung cấp cho các cơ sở đào tạo khác hay có thể đào tạo cho người đã đi làm cần nâng cao kiến thức
Hải Phòng, ngày 30 tháng 9 năm 2024
Chủ nhiệm đề tài
(Ký và ghi rõ họ tên)
ThS Nguyễn Quang Thư
Trang 10MỞ ĐẦU
1 Lý do chọn đề tài:
Vi điều khiển AT89S52 là một trong những dòng vi điều khiển 8 bit phổ biến, được sử dụng rộng rãi trong các chương trình đào tạo về điện tử và tự động hóa Sự lựa chọn này giúp sinh viên làm quen với một vi điều khiển có cấu trúc và chức năng
rõ ràng và dễ dàng tiếp cận
Hiện tại cũng có nhiều các công trình và bài viết ở trong nước và ngoài nước viết
về chế tạo bộ thực hành vi điều khiển Tuy nhiên có công trình mới dừng lại ở mô phỏng bằng phần mềm [1], và có những công trình chế tạo mô hình vật lý cơ bản phù hợp với điều kiện và chương trình đào tạo của cơ sở giáo dục của họ [2], và cũng có công trình chế tạo bộ thực hành vi điều khiển với tính năng mới nhất như điều khiển mạng và điều khiển thích nghi nhưng giá thành cao[3] Vì vậy nhóm tác giả xây dựng
và chế tạo mô hình bộ thực hành vi điều khiển AT89S52 giúp tối ưu hóa giá thành, phù hợp với chương trình đào tạo của nhà trường, đáp ứng được các yêu cầu thực hành điều khiển cơ bản như led đơn, led 7 thanh, màn hình LCD 16x2… đến thực hành những bài phức tạp như điều khiển đa xử lý mạng vi điều khiển sử dụng giao thức truyền thông modbus RTU theo chuNn RS-485 Đây là sự kết hợp giữa các mô hình cơ bản và các nâng cao có thể giúp sinh viên hiểu rõ hơn về các nguyên lý điều khiển và
áp dụng vào các tình huống thực tế
Với ý nghĩa đó, đề tài NCKH “Nghiên cứu, chế tạo bộ thực hành Vi điều khiển
AT89S52 phục vụ giảng dạy và nghiên cứu khoa học cho ngành Điện Trường Đại học Hải Phòng” là một đề tài thiết thực, có tính ứng dụng cao
Đề tài hoàn thiện giúp cho việc học của sinh viên nâng cao trình độ kiến thức của mình, có cái nhìn trực quan và thích thú với việc học Sinh viên có thể thực hành, lập trình vi điều khiển được một số bài toán điều khiển
Nâng cao chất lượng giảng dạy, nghiên cứu khoa học của giảng viên cho sinh viên khi thực hành trên bộ thực hành thực
Đề tài của nhóm tác giả sau khi hoàn thành có thể là mô hình tham khảo giảng dạy cho sinh viên rất nhiều học phần kể cả thực hành và lý thuyết như học phần thực hành vi điều khiển, Kỹ thuật Vi xử lý, Kỹ thuật lập trình, Công nghệ lắp rắp mạch điện
Trang 11tử Giảng viên có thể sử dụng bộ thực hành vi điều khiển để lập trình kiểm chứng các bài toán điều khiển khác nhau và một số bài toán điều khiển truyền thông và giám sát trong nghiên cứu khoa học
3 Đối tượng và phạm vi nghiên cứu:
Đối tượng nghiên cứu: Bộ thực hành vi điều khiển AT89S52, khối chíp vi điều khiển AT89S52 ghép nối giao thiếp với các khối thiết bị ngoại vi như trong đề cương chi tiết học phần thực hành vi điều khiển của ngành Điện Trường Đại học Hải Phòng Phạm vi nghiên cứu: Nghiên cứu lý thuyết liên quan đến đề tài, xây dựng mô hình thử nghiệm và chế tạo bộ thực hành Vi điều khiển AT89S52, xây dựng tài liệu hướng dẫn chi tiết các bài tập ứng dụng cho học phần thực hành vi điều khiển
Bộ thực hành hiện nay mới chỉ sử dụng chíp vi điều khiển AT89S52, chưa đa dạng về chủng loại, tuy nhiên đây là một trong những chíp vi điều khiển cơ bản hiện nay sử dụng rất nhiều trong các Trường Đại học
4 Nhiệm vụ nghiên cứu:
Hoàn thiện chế tạo mô hình và viết tài liệu hướng dẫn sử dụng chi tiết cho bộ thực hành Vi điều khiển AT89S52 phục vụ giảng dạy và nghiên cứu khoa học cho ngành Điện Trường Đại học Hải Phòng và báo cáo khoa học hoàn chỉnh
5 Phương pháp nghiên cứu:
Phương pháp nghiên cứu tài liệu
Phương pháp thực hành thực nghiệm xây dựng chế tạo bộ thực hành Vi điều khiển AT89S52 với các linh kiện và thiết bị đã được kiểm chứng trong các ứng dụng thực tiễn
Phương pháp chuyên gia để viết lưu đồ và lập trình điều khiển và giao tiếp với các khối ngoại vi
Phương pháp khảo sát thực nghiệm sau khi hoàn thành bộ thực hành vi điều khiển AT89S52
6 Đóng góp chính của đề tài:
Đây là bộ thực hành được ứng dụng trong việc giảng dạy và tham khảo cho một
số học phần thực hành trong trường đại học Hải Phòng
Giúp cho việc học của sinh viên nâng cao trình độ kiến thức của mình, có cái nhìn trực quan và thích thú với việc học hơn
Sinh viên có thể thực hành, lâp trình điều khiển và giao tiếp được một số các khối ngoại vi cơ bản và chuyên sâu
Nâng cao chất lượng giảng dạy của giảng viên cho sinh viên khi giảng dạy học phần thực hành trên bộ thực hành AT89S52
Khả năng áp dụng:
Phục vụ cho việc giảng dạy trong trường học, giúp giảng viên và sinh viên thực hành trực quan, dễ tiếp cận hơn
Trang 12Nghiên cứu của nhóm tác giả bộ môn Điện, trường Đại học Hải Phòng hiện tại vẫn đang trong quá trình phát triển và hoàn thiện để mang lại hiệu quả rất lớn về mặt kinh tế, giảm giá thành sản phNm, mang đến cho các cơ sở đào tạo một giải pháp thực hành tối
ưu nhất Hiện tại bộ thực hành này không chỉ giúp sinh viên, cơ sở đào tạo học tập học phần thực hành Vi điều khiển mà còn giúp người học học tập được rất nhiều học phần khác nhau như học phần Kỹ thuật Vi xử lý, Kỹ thuật lập trình, Công nghệ lắp rắp mạch điện tử …
Công trình thành công sẽ mở ra cơ hội phát triển và tiềm năng thực hành cho các phòng thực hành và các trung tâm đào tạo, chuyển giao công nghệ Nó hứa hẹn khả năng phát triển rất lớn đặc biệt là trong thời đại công nghệ số 4.0 ngày nay
Đề tài hiện đã chế tạo và thực nghiệm thành công tại bộ môn Điện Khoa Điện –
Cơ, trường Đại học Hải Phòng Nếu được phổ biến rộng rãi công trình sẽ là mô hình thực hành không thể thiếu ở rất nhiều địa chỉ như cơ sở đào tạo nói chung, các trung tâm dạy nghề hay các công ty, xí nghiệp muốn đào tạo đội ngũ từ thực hành lập trình
vi điều khiển điều khiển cho đến tay nghề như lắp ráp linh kiện điện tử, hàn board mạch điện tử, hiệu chỉnh sửa chữa các board mạch điện tử
7 Cấu trúc đề tài:
Ngoài phần mở đầu, tài liệu tham khảo, nội dung chính của đề tài gồm 4 chương:
Chương 1: Tổng quan về Vi điều khiển Chương 2: Đề xuất mô hình bộ thực hành Chương 3: Chế tạo bộ thực hành Vi điều khiển AT89S52 Chương 4: Bài tập ứng dụng
Trang 13CHƯƠNG 1 TỔNG QUAN VỀ VI ĐIỀU KHIỂN
Vi điều khiển là một loại chip tích hợp, đóng vai trò quan trọng trong việc điều khiển và quản lý hoạt động của các thiết bị điện tử, từ các máy móc công nghiệp, thiết
bị gia dụng, đến các thiết bị y tế và ô tô, Chúng giúp các thiết bị có khả năng điều khiển, thu thập dữ liệu và thực hiện các tác vụ tự động Nhờ vi điều khiển, các thiết bị thông minh có thể hoạt động hiệu quả, tiết kiệm năng lượng và đáp ứng nhanh chóng các nhu cầu của người dùng
Vi điều khiển tích hợp nhiều thành phần như CPU, bộ nhớ RAM, ROM, các module giao tiếp (UART, I2C, SPI, v.v.), và cả các bộ điều khiển ngắt Điều này giúp tiết kiệm không gian, giảm chi phí và điện năng tiêu thụ, làm cho chúng trở thành lựa chọn tối ưu trong các thiết bị nhỏ gọn, di động
Các dòng vi điều khiển thường có giá thành rẻ, làm giảm tổng chi phí sản xuất thiết bị Điều này rất quan trọng trong sản xuất hàng loạt các thiết bị tiêu dùng như đồng hồ thông minh, điện thoại, hay các thiết bị điều khiển gia dụng và trong công nghiệp Mặt khác vi điều khiển thường được lập trình bằng các ngôn ngữ dễ tiếp cận như Assembler hoặc C, cho phép tùy biến và tích hợp dễ dàng vào nhiều hệ thống Chúng cũng hỗ trợ các giao thức giao tiếp đa dạng, từ đó có thể điều khiển hoặc thu thập dữ liệu từ các cảm biến và thiết bị ngoại vi [4]
1.1 Các dòng vi điều khiển
Vi điều khiển là một mạch tích hợp chứa tất cả các thành phần cần thiết để điều
khiển các hệ thống điện tử hoặc cơ khí nhỏ Nó tích hợp CPU (Bộ xử lý trung tâm), RAM (Bộ nhớ truy cập ngẫu nhiên), ROM (Bộ nhớ chỉ đọc), các cổng I/O (cổng vào/ra), hệ thống ngắt, bộ đếm thời gian/bộ định thời, và nhiều chức năng khác trên
- Bộ nhớ: Có không gian địa chỉ cho ROM (cho chương trình) và RAM (cho dữ liệu) 8051 hỗ trợ thêm bộ nhớ ngoài nếu cần mở rộng
- Tốc độ: Hoạt động ở tần số từ 12 MHz đến 24 MHz, tùy thuộc vào phiên bản
- Ngôn ngữ lập trình: Dễ lập trình và phát triển với ngôn ngữ Assembly, C, và hỗ trợ nhiều công cụ phát triển
Trang 14- Ứng dụng: Thường được dùng trong các ứng dụng đơn giản như hệ thống điều
khiển thiết bị, thiết bị gia dụng, điều khiển động cơ, thiết bị đo đạc, và một số ứng
- Kiến trúc: AVR sử dụng kiến trúc RISC với 32 thanh ghi 8-bit, giúp tăng tốc độ
xử lý và hiệu suất lập trình.Có khả năng chạy với tần số cao, thường lên đến 20 MHz
- Bộ nhớ: Hỗ trợ bộ nhớ Flash cho chương trình và bộ nhớ RAM cho dữ liệu, có thể lập trình lại Dung lượng Flash và RAM đa dạng tùy theo từng dòng sản phNm, từ vài KB đến hàng trăm KB
- Tính năng: Tích hợp nhiều chức năng như bộ chuyển đổi A/D Digital), bộ định thời, và các giao thức giao tiếp như SPI, I2C, và UART Hỗ trợ lập trình trực tiếp thông qua các ngõ giao tiếp, cho phép dễ dàng cập nhật và thay đổi chương trình
(Analog-to Ứng dụng: AVR được sử dụng rộng rãi trong các thiết bị nhúng, từ đồ chơi điện
tử, hệ thống điều khiển, đến các thiết bị IoT và cảm biến
Vi điều khiển AVR với nhiều công cụ và thư viện hỗ trợ lập trình, bao gồm AVR Studio và Arduino IDE, giúp lập trình viên dễ dàng làm việc với các vi điều khiển này trong các ứng dụng điều khiển thiết bị vừa và nhỏ [6]
Vi điều khiển dòng PIC (Peripheral Interface Controller) được phát triển bởi Microchip Technology và là một trong những dòng vi điều khiển phổ biến trên thị trường nó bao gồm các đặc điểm sau:
- Kiến trúc: PIC có nhiều phiên bản với kiến trúc 8-bit, 16-bit, và 32-bit, cung cấp sự linh hoạt cho các ứng dụng khác nhau Kiến trúc RISC, giúp giảm số lượng lệnh và tăng tốc độ thực thi
- Bộ nhớ: Các vi điều khiển PIC thường có bộ nhớ Flash cho chương trình, RAM cho dữ liệu và EEPROM cho lưu trữ không bay hơi Dung lượng bộ nhớ thay đổi từ vài KB đến hàng trăm KB tùy thuộc vào loại vi điều khiển
Trang 15- Tính năng: Tích hợp nhiều tính năng như bộ chuyển đổi A/D, bộ định thời, và các giao thức giao tiếp (UART, SPI, I2C) Hỗ trợ các tính năng ngoại vi đa dạng như ngắt và điều khiển động cơ, giúp ứng dụng trong nhiều lĩnh vực khác nhau
- Ứng dụng: Thích hợp cho các ứng dụng từ đơn giản đến phức tạp, bao gồm tự động hóa công nghiệp, điều khiển thiết bị gia dụng, và các hệ thống nhúng khác.Được
sử dụng rộng rãi trong các thiết bị điện
Đối với vi điều khiển PIC Microchip cung cấp nhiều công cụ phát triển và tài liệu
hỗ trợ như MPLAB X IDE và MPLAB Code Configurator, giúp lập trình viên dễ dàng làm việc với các ứng dụng của vi điều khiển PIC [7]
1.2 Vi điều khiển AT89S52
AT89S52 là bộ vi điều khiển 8 bit họ Atmel được dùng phổ biến hiện nay Trong phần này sẽ trình bày về sơ đồ chân, tính năng, thông số kỹ thuật và ứng dụng nổi bật của AT89S52 , những thông số này được soạn thảo tóm lược gọn lại từ tài liệu của nhà sản xuất cũng như một số giáo trình về vi điều khiển [8] [9] [10]
AT89S52 là vi điều khiển 8 bit được sản xuất bởi hãng Atmel Vi điều khiển này
có công suất thấp, hiệu suất cao, sử dụng công nghệ CMOS với dải tần hoạt động lên đến 33MHz Các sản phNm vi điều khiển AT89S52 thích hợp cho những ứng dụng điều khiển trong mạch điện tử
Việc xử lý cấu trúc dữ liệu sẽ được thực hiện bằng nhiều chế độ truy xuất dữ liệu nhanh trên RAM nội Tập lệnh điều khiển cung cấp một bảng tiện dụng của những công thức số học có độ dài 8 bit gồm cả lệnh chia và lệnh nhân
Hình 1.1 Chíp AT89S52 thực tế
Trang 16AT89S52 cũng cung cấp những hỗ trợ mở rộng trên chip dùng cho những biến một bit như là kiểu dữ liệu riêng biệt cho phép quản lý và kiểm tra bit trực tiếp trong
hệ thống điều khiển AT89S52 có các đặc tính chuNn như: 8KB bộ nhớ EEPROM chỉ đọc có thể xóa và lập trình nhanh, 32 đường I/O, 128 Byte RAM, 3 TIMER/COUNTER 16 Bit, 5 vector ngắt có cấu trúc 2 mức ngắt, một cổng nối tiếp bán song công, 1 mạch để tạo xung Clock và bộ dao động ON-CHIP
Với nhiều đặc tính nổi bật, AT89S52 là dòng vi điều khiển được dùng khá phổ biến trong mạch điện tử hiện nay
Sơ đồ khối của vi điều khiển AT89S52
Hình 1.2 Sơ đồ khối của vi điều khiển AT89S52
Trang 17Sơ đồ chân của vi điều khiển AT89S52
Hình 1.3 Sơ đồ chân của vi điều khiển AT89S52
AT89S52 có cấu hình 40 chân được biểu thị như hình bên trên:
Chân số 32 – 39 (Port 0): 8 chân Địa chỉ và Dữ liệu/GPIO
Chân số 1 – 8 (Port 1): 8 chân GPIO
Chân số 21 – 28 (Port 2): 8 chân GPIO
Chân số 10-17 (Port 3): 8 chân GPIO
Chân số 9 (RST): Chân Reset
Chân số 18 (XTAL2): Chân đầu ra của bộ tạo dao động bên ngoài
Chân số 19 (XTAL1): Chân đầu vào bộ tạo dao động bên ngoài
Chân số 20 (GND: Chân nối đất
Chân số 40 (VCC): Chân cấp nguồn
Chân số 31 (EA / VPP): Chân cấp nguồn kích hoạt Flash/Kích hoạt truy xuất bên ngoài
Chân số 30 (ALE/PROG): Chân lập trình flash/Chân chốt địa chỉ
Chân số 29 (PSEN): Chân cho phép lưu chương trình
Giải thích chức năng các Port của AT89S52
Tất cả các Port của AT89S52 có 8 chân đa chức năng để thực hiện nhiệm vụ: Chân Port 0: Các chân đầu vào và đầu ra có thể được cấu hình cho các chức năng khác bằng việc cấu hình các thanh ghi
Ở trạng thái mức thấp, chúng hoạt động như các chân đầu vào trở kháng cao hai chiều Nhưng khi ở mức cao, chúng lại được dùng để làm chân đầu ra digital
Các chân của Port 0 cũng được dùng để cập nhật các byte thấp trong code đến bộ nhớ chương trình bên trong của vi điều khiển AT89S52 và cũng được dùng để xác
Trang 18nhận khi cập nhật code Khi bạn dùng các chân này để lập trình thì cần phải kết nối các chân này với các điện trở kéo lên bên ngoài
Chân Port 1: Port 1 cũng sử dụng các chân dữ liệu 2 chiều 8 bit với các điện trở kéo lên ở bên trong Một số chân GPIO này được dùng để giao tiếp lập trình hệ thống trong mạch và một số chân lại làm chức năng thay thế cho ba chân bộ định thời hoặc
bộ đếm 16 bit Chức năng cụ thể từng chân như sau:
Bộ định thời hoặc Bộ đếm 16 bit
Các chân Port 2 cũng được dùng để cập nhật các byte cao trong code lên bộ nhớ chương trình bên trong của vi điều khiển AT89S52 và cũng được sử dụng để xác nhận khi cập nhật code Khi dùng các chân Port 2 để lập trình, chúng ta cần kết nối các chân này với các điện trở kéo lên bên ngoài
Chân port 3: Port 3 cũng là một cổng 8-bit và có 8 chân GPIO Ngoài chức năng nhập hoặc xuất, các chân này còn có một số tính năng đặc biệt khác
Port 3 cũng được sử dụng để ngắt ngoài, truyền dữ liệu nối tiếp với giao tiếp UART và thực hiện các thao tác đọc hoặc ghi bộ nhớ dữ liệu bên ngoài Chức năng từng chân của Port 3 như sau:
Trang 19Số lượng chân chức năng: 40
Dung lượng RAM: 256 byte
Tần số dao động bên ngoài tối đa: 23 MHz
Độ phân giải của PWM: Không
Số bộ hẹn giờ 16 bit: 3
Loại bộ nhớ chương trình: Flash
Số module kết nối UART: 1
Cờ ngắt nguồn: Có
Cặp con trỏ dữ liệu: Có
Điện áp hoạt động: Từ 4V đến 5,5 V
Nhiệt độ hoạt động: Từ -55 đến 125 độ C
Các tính năng của AT89S52
Bộ vi điều khiển sử dụng công nghệ CMOS hiệu suất cao có tích hợp công nghệ Flash
Dải điện áp hoạt động rộng từ 4 – 5.5V, vì vậy nó là một IC công suất thấp Tốc độ CPU lên đến 33MHz nhưng có thể thay đổi để tiết kiệm năng lượng Thiết bị hỗ trợ lập trình bên trong ở cả chế độ page và byte của bộ nhớ Flash Module có thời gian lập trình nhanh với chu kỳ đọc/ghi lên đến 10.000
Bộ nhớ RAM 256 byte x 8 bit
Sử dụng giao tiếp nối tiếp UART song công
AT89S52 có hai chế độ nguồn Chế độ nhàn rỗi đó là thiết bị xử lý dừng hoạt động trong khi ngoại vi vẫn tiếp tục hoạt động Thứ hai là chế độ tắt nguồn sẽ tạm dừng bộ dao động và các chức năng khác, lưu nội dung RAM
Bộ đếm thời gian Watchdog khởi động thiết bị từ chế độ ngủ và có thể được kích hoạt hoặc hủy kích hoạt thông qua việc lập trình bộ vi xử lý
AT89S52 có một chân reset, ba bộ định thời 16 bit và tám bộ ngắt để thực hiện chức năng khác nhau [7]
1.3 Đánh giá tổng quan về các bộ kit thực hành vi điều khiển
Trang 20Trong các trường Đai học, có rất nhiều các bộ kít phát triển dùng để thí nghiệm
và thực hành các dòng vi điều khiển, tuy nhiên mỗi bộ lại đơn lẻ cho mỗi dòng vi điều khiển và cố định các kết nối sẵn trên board mạch in, tạo nên sự áp đặt về mặt kết nối giao tiếp ngoại vi, gây khó khăn trong việc lập trình điều khiển để xây dựng những ứng dụng giải quyết các bài toán điều khiển đa dạng trong thực tế
Các công trình nghiên cứu ở một số nước phát triển đa số là các bộ thực hành vi điều khiển cao cấp, được chuyển giao với mức kinh phí tương đối lớn, nên các cơ sở giáo dục trong nước và người học ít có khả năng tiếp cận
Công trình khoa học của nhóm tác giả khi hoàn thiện đáp ứng được các yêu cầu giảng dạy và người làm khoa học có thể xây dựng và giải quyết các bài toán điều khiển
đa dạng trong thực tiễn, đồng thời với mức chi phí thấp và hợp lý sẽ tạo điều kiện cho người học và người làm khoa học có nhiều cơ hội tiếp cận với bộ thực hành vi điều khiển của nhóm tác giả
Sản phNm của nhóm tác giả với đầy đủ các thông số từ lý thuyết cơ sở liên quan đến các bản vẽ mạch điện ghép nối các khối giao tiếp ngoại vi ở dạng chân cắm chờ,
để người học và người làm khoa học có thể linh hoạt và sáng tạo khi xây dựng mạch điện ghép nối theo yêu cầu, sau mới đến lập trình để giải quyết các bài toán về điều khiển đa dạng trong thực tế
Kết luận chương 1
Sau phần mở đầu nhóm nghiên cứu trình bày cơ sở lý thuyết về một số các dòng
vi điều khiển, có sự đánh giá tổng quan về một số bộ kít thực hành vi điều khiển trên thị trường hiện nay Đây chính là tiền đề cho đề xuất chế tạo mô hình bộ thực hành vi điều khiển trong phần chương 2
Trang 21CHƯƠNG 2 ĐỀ XUẤT MÔ HÌNH BỘ THỰC HÀNH 2.1 Đặt vấn đề
Công nghiệp hóa - hiện đại hóa đang diễn ra trên toàn cầu, xu thế tất yếu này của
xã hội đòi hỏi sự phát triển các nền kinh tế của các nước trên thế giới phải đồng bộ về tất cả các lĩnh vực: Công nghiệp, nông nghiệp, dịch vụ Điểm nổi bật của nền kinh tế hiện nay có thể nhìn thấy đó là sự phát triển không ngừng và ngày càng hiện đại của các ngành công nghiệp, đặc biệt là ngành công nghiệp điện tử Nó khẳng định vị thế, sức mạnh khả năng nhạy bén của một quốc gia trong việc áp dụng các thành tựu khoa học
kĩ thuật và việc sản xuất các sản phNm có chất lượng cao, hoạt động hiệu quả
Ngành công nghiệp trẻ đóng vai trò to lớn trong nền kinh tế quốc dân, là ngành sản xuất vật chất tạo ra khối lượng sản phNm lớn cho xã hội và đáp ứng nhu cầu ngày càng cao của con người Nó đòi hỏi các ngành ngày càng đổi mới không chỉ về phương thức sản xuất mà còn phải đổi mới cách thức sản xuất Cũng giống như các ngành khác, công nghiệp điện tử là một ngành công nghiệp trẻ, hết sức nhạy cảm với tiến bộ khoa học kỹ thuật và là một trong những ngành kỹ thuật tinh vi của thế giới Nó không chỉ sử dụng thiết bị hiện đại mà còn có phương pháp tổ chức, quản lý sản xuất tiên tiến nhằm tạo ra sản phNm có chất lượng cao, giá thành hạ
Để đáp ứng nhu cầu thực tiễn và yêu cầu của nhà tuyển dụng trong các nhà máy khu công nghiệp, Sinh viên khi ra trường cần nắm vững các kiến thức lý thuyết đồng thời cũng cần phải thành thạo tay nghề chuyên môn về lĩnh vực điều khiển Chính vì vậy, hiện nay tại Bộ môn Điện, Khoa Điện - Cơ, Trường Đại học Hải phòng đang từng bước chỉnh sửa thay đổi chương trình đào tạo nhằm nâng cao chất lượng giáo dục, trong
đó việc phân bổ thời gian học thực hành được trú trọng, chính vì vậy nhu cầu về thiết bị dạy học thực hành học phần Vi điều khiển là cấp thiết Tuy nhiên để đầu tư một phòng thực hành vi điều khiển thì cần nhiều thời gian và tốn nhiều kính phí
Chính vì vậy, sản phNm khoa học của nhóm tác giả sẽ giúp Sinh viên và các Giảng viên làm nghiên cứu khoa học sớm được tiếp cận với bộ thực hành Vi điều khiển AT89S52
Với ý nghĩa đó, đề tài NCKH “Nghiên cứu, chế tạo bộ thực hành Vi điều
khiển AT89S52 phục vụ giảng dạy và nghiên cứu khoa học cho ngành Điện Trường Đại học Hải Phòng” là một đề tài thiết thực, có tính ứng dụng cao
2.2 Đề xuất chế tạo bộ thực hành vi điều khiển AT89S52
Bộ thực hành được thiết kế chế tạo để thực hiện được các bài tập trong học phần thực hành vi điều khiển, giao tiếp với các khối ngoại vi như: nút nhấn, led đơn, led 7 thanh, mà
Trang 22hình LCD 16x2 và điều khiển đèn giao thông ngã tư, trên cơ sở đó, nhóm tác giả đề xuất sơ
đồ khối ghép nối như sau:
Hình 2.1 Sơ đồ khối bộ thực hành vi điều khiển AT89S52
2.3 Các linh kiện chính sử dụng trong bộ thực hành
2.3.1 IC thời gian thực DS 12887
IC thời gian thực DS12C887 IC DS12C887 thiết kế để thay thế trực tiếp cho DS1287 DS12C887 tạo ra đồng hồ về thời gian và lịch, bộ nhơ 113 bytes, điều chỉnh cho những năm nhuân, chon chế độ hiển thị 12H hay 24H
Hình 2.2 IC thời gian thực 12C887
Một số đặc trưng cơ bản:
− Thay thế trực tiếp cho máy tính IBM đồng hồ/lịch
− Pin tương thích với MC146818B và DS1287
− Hoàn toàn không có nguy cơ hỏng hóc khi hơn 10 năm không hoạt động
− Hệ thống con khép kín bao gồm lithium, thạch anh, và mạch hỗ trợ
Trang 23− Đếm giây, phút, giờ, ngày, ngày của tuần, ngày, tháng và năm đến năm 2100
− Biểu diễn nhị phân hoặc BCD của thời gian, lịch và báo thức
− Đồng hồ 12 hoặc 24 giờ với AM và PM trong chế độ 12 giờ
− Tùy chọn Giờ tiết kiệm ánh sáng ban ngày
− Có thể lựa chọn giữa bus Motorola và Intel thời gian
− Giao tiếp với phần mềm như 128 RAM địa điểm:
+ 15 byte đồng hồ và thanh ghi điều khiển
+ 113 byte RAM mục đích chung
− Tín hiệu đầu ra sóng vuông có thể lập trình
− Bus-tín hiệu ngắt tương thích (IRQ)
− Ba ngắt là phần mềm riêng biệt có thể che giấu và có thể kiểm tra
+ Báo thức thời gian trong ngày một lần/giây đến một lần một ngày
+ Tốc độ định kỳ từ 122 ms đến 500 ms
+ Kết thúc chu kỳ cập nhật đồng hồ
Sơ đồ đấu nối:
Hình 2.3 Sơ đồ đấu nối của 12C887
Sơ đồ khối IC thời gian thực:
Trang 24Hình 2.4 Sơ đồ khối của 12C887
− Nguồn GND, VCC - DC được cung cấp cho thiết bị trên các chân này VCC là
đầu vào +5V Khi 5V là được áp dụng trong giới hạn bình thường, thiết bị có thể truy cập đầy đủ và có thể ghi và đọc dữ liệu
− MOT (Chế độ chọn) – Chân MOT cung cấp sự linh hoạt để lựa chọn giữa hai
loại bus Khi được kết nối với VCC, định thời bus Motorola được chọn
− SQW (Đầu ra sóng vuông) – Chân SQW có thể xuất tín hiệu
− AD0-AD7 (Bus địa chỉ/dữ liệu hai chiều đa kênh) – Bus đa kênh tiết kiệm
chân vì thông tin địa chỉ và thời gian thông tin dữ liệu chia sẻ cùng một đường dẫn tín hiệu Các địa chỉ có mặt trong phần đầu tiên của chu kỳ bus và các chân và đường dẫn tín hiệu tương tự được sử dụng cho dữ liệu trong phần thứ hai phần của chu kỳ
− AS (Address Strobe Input) – Một xung nhấp nháy địa chỉ tích cực phục vụ để
tách kênh bus Các cạnh xuống của AS/ALE làm cho địa chỉ được chốt trong DS12C887 Cạnh tăng tiếp theo mà xảy ra trên bus AS sẽ xóa địa chỉ bất kể CS có được xác nhận hay không Lệnh truy cập nên được gửi theo cặp
− DS (Data Strobe or Read Input) – Chân DS/RD có 2 chế độ hoạt động tùy theo
mức độ của chân MOT Khi chân MOT được kết nối với VCC, định thời bus Motorola được chọn trong chế độ này DS là một xung dương trong phần sau của chu kỳ bus và
Trang 25được gọi là Nhấp nháy dữ liệu Trong khi đọc chu kỳ, DS biểu thị thời gian mà DS12C887 điều khiển xe buýt hai chiều
− R/W (Đầu vào Đọc/Ghi) – Chân R/W cũng có hai chế độ hoạt động Khi chân
MOT là được kết nối với VCC để định thời Motorola, R/W ở mức cho biết liệu chu kỳ hiện tại có phải là chu kỳ đọc hoặc viết Một chu kỳ đọc được biểu thị với mức cao trên R/W trong khi DS ở mức cao Một chu kỳ ghi là được chỉ báo khi R/W ở mức thấp trong DS
− CS (Chip Select Input) – Tín hiệu Chip Select phải được khẳng định ở mức
thấp cho một chu kỳ bus trong DS12C887 để được truy cập CS phải được giữ ở trạng thái hoạt động trong thời gian DS và AS cho Motorola và trong thời gian RD và WR cho thời gian của Intel
− IRQ (Đầu ra yêu cầu ngắt) - Chân IRQ là đầu ra mức thấp đang hoạt động của
DS12C887 có thể được được sử dụng làm đầu vào ngắt cho bộ xử lý Đầu ra IRQ vẫn ở mức thấp miễn là bit trạng thái gây ra có ngắt và bit kích hoạt ngắt tương ứng được thiết lập Để xóa chân IRQ bộ xử lý chương trình thường đọc thanh ghi C
− RESET (Đặt lại đầu vào) – Chân RESET không ảnh hưởng đến đồng hồ, lịch
hoặc RAM Khi bật nguồn chân RESET có thể được giữ ở mức thấp trong một thời gian
để cho phép nguồn điện ổn định số lượng thời gian mà RESET được giữ ở mức thấp phụ thuộc vào ứng dụng Tuy nhiên, nếu RESET được sử dụng khi bật nguồn, thời gian RESET ở mức thấp phải vượt quá 200 ms để đảm bảo rằng bộ hẹn giờ bên trong điều khiển DS12C887 khi bật nguồn đã hết thời gian chờ Khi RESET ở mức thấp và VCC trên 4,25V, như sau xảy ra:
A Bit Kích hoạt Ngắt Định kỳ (PEI) bị xóa về 0
B Bit Kích hoạt Ngắt Cảnh báo (AIE) bị xóa về 0
C Bit Update Ended Interrupt Flag (UF) bị xóa về 0
D Bit Cờ trạng thái yêu cầu ngắt (IRQF) bị xóa về 0
E Bit cờ ngắt định kỳ (PF) bị xóa về 0
F Không thể truy cập thiết bị cho đến khi RESET trở về mức cao
G Bit Cờ báo ngắt (AF) bị xóa về 0
H IRQ ở trạng thái trở kháng cao
I Bit Kích hoạt đầu ra sóng vuông (SQWE) bị xóa về 0
J Kích hoạt ngắt kết thúc cập nhật (UIE) bị xóa thành 0
Trong một ứng dụng điển hình, RESET có thể được kết nối với VCC Kết nối này
sẽ cho phép DS12C887 vào và mất điện không thành công mà không ảnh hưởng đến bất kỳ thanh ghi điều khiển nào
Trang 26Hình 2.5 Led 7 thanh
Sơ đồ chân:
Hình 2.6 Sơ đồ chân led 7 đoạn
Cấu tạo và nguyên lý làm việc
Mỗi đèn led 7 đoạn có chân đưa ra khỏi hộp hình vuông Mỗi một chân sẽ được gán cho một chữ cái từ a đến g tương ứng với mỗi led Những chân khác được nối lại với nhau thành một chân chung
Như vậy bằng cách phân cực thuận (forward biasing) các chân của led theo một thứ tự cụ thể, một số đoạn sẽ sáng và một số đoạn khác không sáng cho phép hiển thị
Trang 27ký tự mong muốn Điều này cho phép chúng ta hiển thị các số thập phân từ 0 đến 9 trên cùng một led 7 đoạn.
Chân chung được sử dụng để phân loại led 7 đoạn Vì đèn led có 2 chân, 1 chân là anode và 1 chân là cathode nên có 2 loại led 7 đoạn là cathode chung (CC) và anode chung (CA)
Sự khác nhau giữa 2 loại có thể thấy ngay ở tên gọi của nó Loại CC là các chân cathode được nối chung với nhau Còn loại CA là các chân anode được nối chung với nhau Cách chiếu sáng mỗi loại như sau:
+ Loại CC (common cathode): Tất cả các chân cathode được nối với nhau và nối đất, hay logic là 0 Mỗi phân đoạn được chiếu sáng bằng cách sử dụng điện trở đặt tín hiệu logic 1 (hay mức cao) để phân cực thuận từng cực anode (từ a đến g)
Hình 2.7 Led 7 đoạn có K chung
Loại CA (common anode): Tất cả các chân anode được nối với nhau với logic là
1 Mỗi phân đoạn được chiếu sáng bằng cách sử dụng điện trở tín hiệu logic 0 (hay low) vào các cực cathode (từ a đến g)
Hình 2.8 Led 7 đoạn có A chung
Nói chung loại CA phổ biến hơn trong 2 loại Loại CA không thay thế được cho loại CC trong mạch điện, và ngược lại vì cách nối đèn led bị đảo ngược
Trang 28Tùy vào chữ số thập phân nào được hiển thị mà một bộ đèn led cụ thể sẽ được phân cực thuận Ví dụ để hiển thị chữ số 0, cần phải chiếu sáng 6 đoạn tương ứng là a,
b, c, d, e và f Như vậy các số từ 0 đến 9 có thể hiển thị bằng 1 led 7 đoạn như hình bên dưới
Hình 2.9 Hiển thị chữ số trên led 7 thanh
2.3.3 Màn hình LCD 16x2
Màn hình LCD1602 xanh lá sử dụng driver HD44780, có khả năng hiển thị 2
dòng với mỗi dòng 16 ký tự Màn hình LCD có độ bền cao, rất phổ biến, và dễ sử dụng
Hình 2.10 Màn hình LCD 16x2
Thông Số Kỹ Thuật Màn hình LCD16x2:
Điện áp hoạt động: 5V
Kích thước của màn hình LCD 16x2: 8 x 3.6 x 0.8 cm
Màu nền: xanh lá hoặc xanh dương
Màu chữ: Màu đen
Khoảng cách giữa hai chân kết nối: 0.1 inch
Tiện dụng khi kết nối với Breadboard
Hình 2.11 Kích thước của màn hình LCD16x2
Trang 29Ưu Điểm Của Màn hình LCD1602:
Tên các chân được ghi ở mặt sau của màn hình LCD hổ trợ việc kết nối, đi dây điện
Có đèn led nền, có thể dùng biến trở hoặc PWM điều chình độ sáng để sử dụng
ít điện năng hơn
Có thể được điều khiển với 6 dây tín hiệu
Có bộ ký tự được xây dựng hổ trợ tiếng Anh và tiếng Nhật
Hình 2.12: Mặt sau của màn hình LCD16x2
Sơ đồ kết nối của màn hình LCD16x2:
Chân số 1 - VSS: Chân nối đất cho LCD được nối với GND của mạch điều khiển
Chân số 2 - VDD: Chân cấp nguồn cho LCD, được nối với VCC 5V của mạch điều khiển
Chân số 3 - VE: Điều chỉnh độ tương phản của LCD
Chân số 4 - RS: chân chọn thanh ghi, được nối với logic "0" hoặc logic "1": Logic “0”: Bus DB0 - DB7 sẽ nối với thanh ghi lệnh IR của LCD (ở chế độ
“ghi” - write) hoặc nối với bộ đếm địa chỉ của LCD (ở chế độ “đọc” - read)
Logic “1”: Bus DB0 - DB7 sẽ nối với thanh ghi dữ liệu DR bên trong LCD Chân số 5 - R/W : chân chọn chế độ đọc/ghi (Read/Write), được nối với logic
“0” để ghi hoặc nối với logic “1” đọc
Chân số 6 - E : chân cho phép (Enable) Sau khi các tín hiệu được đặt lên bus DB0-DB7, các lệnh chỉ được chấp nhận khi có 1 xung cho phép của chân này như sau:
Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào thanh ghi bên trong khi phát hiện một xung (high-to-low transition) của tín hiệu chân E
Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát hiện cạnh lên (low-to-high transition) ở chân E và được LCD giữ ở bus đến khi nào chân E xuống mức thấp
Trang 30Chân số 7 đến 14 - D0 đến D7: 8 đường của bus dữ liệu dùng để trao đổi thông tin với MPU Có 2 chế độ sử dụng 8 đường bus này là: Chế độ 8 bit (dữ liệu được truyền trên cả 8 đường, với bit MSB là bit DB7) và Chế độ 4 bit (dữ liệu được truyền trên 4 đường từ DB4 tới DB7, bit MSB là DB7)
Chân số 15 - A : nguồn dương cho đèn nền
Chân số 16 - K : nguồn âm cho đèn nền
Hình 2.13 Sơ đồ kết nối của màn hình LCD16x2
Với A-B > 200mV sẽ tạo mức logic 1
Với B-A>200mV sẽ tạo mức logic 0
Hình 2.14 IC giao tiếp MAX485
Trang 31Max485 gồm bộ lái và bộ thu, tín hiệu vào bộ lái D logic TTL đổi thành 2 tín hiệu
A và B, khi tín hiệu điều khiển DE mức thấp thì 2 chân AB cách ly với vi mạch Tín hiệu vào bộ thu là A và B, tín hiệu ra R logic TTL tùy thuộc hiệu điện áp giữa A và B, khi RE llogic 1 thì R cách ly với vi mạch
2.4 Các khối ghép nối ngoại vi
Khối nút nhấn: Lập trình nhận biết các nút được nhấn để thực hiện việc rẽ nhánh các chương trình lập trình có điều kiện để thực hiện một nhiệm vụ cụ thể
Khối led đơn: Lập trình điều khiển các Led đơn sáng tắt theo đúng các yêu cầu đặt ra của bài toán, đó cũng là cơ sở để lập trình điều khiển bật tắt các động cơ 1 pha và 3 pha thông qua việc bật tắt các zơle trung gian và các contacter để đóng mở các tiếp điểm công suất lớn
Khối led 7 thanh và màn hình LCD: Lập trình hiển thị các dữ liệu được nhập từ bàn phím hoặc kết quả của của các phép tính toán trên khối hiển thị led 7 thanh hoặc trên màn hình LCD 16x2
Khối IC thời gian thực: Ứng dụng trong bộ thực hành là lập trình giao tiếp với IC đồng hồ thời gian thực DS 12C887, thời gian thực được hiển thị trên led 7 thanh hoặc màn hình LCD 16x2
Khối mô hình đèn giao thông: ở cấp độ chuyển sâu là việc lập trình truyền thông đa
xử lý, chíp mater giao tiếp truyền thông với các chíp slave thông qua giao thức modbus RTU bằng chuNn truyền thông 485 để điều khiển hệ thống đèn giao thông ngã tư
Kết luận chương 2
Từ yêu cầu thực hiện các giao tiếp vi điều khiển với thiết bị ngoại vi, đó là cơ sở
để đề xuất mô hình bộ thực hành vi điều khiển, qua đó giới thiệu một số các linh kiện điện tử chính, tính toán lựa chọn linh kiện cho bộ thực hành, chíp vi điều khiển, đèn led đơn, led 7 thanh, màn hình LCD 16x2, IC Max 485 Là tiền đề thiết kế board mạch điện tử cho bộ thực hành, với khả năng ghép nối với các khối ngoại vi trong chương 3
Trang 32CHƯƠNG 3 CHẾ TẠO BỘ THỰC HÀNH VI ĐIỀU KHIỂN
3.1 Thiết kế và sản xuất mạch in
Quá trình thiết kế vẽ sơ đồ nguyên lý và vẽ sơ đồ mạch in PCB được thực hiện trên phần mềm thiết kế board mạch điện tử EAGLE 6.6.0
3.1.1 Khối vi điều khiển AT89S52
Hình 3.1 Sơ đồ nguyên lý khối vi điều khiển AT89S52
Nguyên lý hoạt động của khối vi điều khiển được thể hiện như trong hình 3.1 Chân 29, 31, 40 nối với nguồn VCC, chân 20 nối GND Tụ điện 10uF kết hợp với điện trở 10k đảm nhiệm chức năng tạo tín hiệu reset lúc cấp nguồn ban đầu cho vi điều khiển, chu kỳ xung nhịp của vi điều khiển được cung cấp bởi bộ dao động thạch anh 11,0592MHz từ bên ngoài và kết hợp 2 tụ lá 33pF để dập nhiễu cho bộ dao động, jắc cắm SL1 gồm các chân MOSI MISO SCK RST GND cho phép nạp chương trình từ máy tính đến vi điều khiển AT89S52 ngay trên mạch bằng bộ nạp USBISP Đầu vào và đầu ra của vi điều khiển được kết nối bởi các cổng P0, P1, P2 và P3 nối đến các chân chờ, các chân cắm chờ này được dùng để kết nối tới các chân đầu vào và đầu ra của các khối giao tiếp ngoại vi
Trang 33Từ sơ đồ nguyên lý hình 3.1 của khối vi điều khiển có thể thiết kế thành board mạch điện tử khối trung tâm, các linh kiện được bố trí như trong hình 3.2 và thiết kế đường nối dây các chân linh kiện cho mạch in lớp dưới như trong hình 3.3
Hình 3.2 Sơ đồ bố trí linh kiện trên mạch khối vi điều khiển AT89S52
Hình 3.3 Sơ đồ mạch in lớp dưới khối vi điều khiển AT89S52
3.1.2 Khối nút nhấn
Khối nút nhấn gồm 5 nút nhấn dạng tiếp điểm thường mở, một đầu của tiếp điểm thường mở được nối sẵn xuống GND, đầu còn lại của tiếp điểm thường mở được nối đến các chân chờ, các chân cắm chờ này có thể được dùng để kết nối tới các chân đầu vào của vi điều khiển nào là tùy thuộc vào từng yêu cầu cụ thể Các nút nhấn được bố trí và nối dây trên mạch in như trong hình 3.5 và hình 3.6
Trang 34Hình 3.4 Sơ đồ mạch nguyên lý khối nút nhấn
Hình 3.5 Sơ đồ bố trí linh kiện trên mạch lớp trên khối nút nhấn
Hình 3.6: Sơ đồ mạch in lớp dưới khối nút nhấn
Trang 353.1.3 Khối IC thời gian thực DS 12C887
Hình 3.7 Sơ đồ mạch nguyên lý khối DS 12C887
Khối IC thời gian thực này sử dụng DS12C887 Đây là một IC tích hợp chứa đồng
hồ thời gian thực cùng với bộ nhớ RAM, dữ liệu lưu trong bộ nhớ RAM này không bị mất khi mất nguồn cung cấp, các chân của IC này cũng được nối đến các chân chờ, bố trí DS12C887 và nối dây trên mạch in như trong hình 3.8 và hình 3.9
Hình 3.8 Sơ đồ bố trí linh kiện trên mạch lớp trên khối DS 12887
Hình 3.9 Sơ đồ mạch in lớp dưới khối DS 12887
Trang 363.1.4 Khối IC đệm 74HC245
Hình 3.10 Sơ đồ mạch nguyên lý khối khối IC đệm 74HC245
IC số 74HC245 là một IC thuộc dòng logic CMOS với 8 chân vào/ra và thường được sử dụng như một bộ đệm tín hiệu đầu ra của bộ vi điều khiển, các chân vào/ra của
IC 74HC245 này cũng được nối đến các chân chờ, hình 3.11 và hình 3.12 thể hiện việc
bố trí và nối dây chân IC này trên mạch in
Hình 3.11 Sơ đồ bố trí linh kiện trên mạch lớp trên khối IC đệm 74HC245
Hình 3.12 Sơ đồ mạch in lớp dưới khối khối IC đệm 74HC245
3.1.5 Khối đèn led đơn
Trang 37Hình 3.13 Sơ đồ mạch nguyên lý khối đèn led đơn
Khối đèn LED đơn là một phần quan trọng trong các bộ thực hành vi điều khiển, được sử dụng để học và thực hành các nguyên lý cơ bản trong điện tử và vi điều khiển Đây là những ứng dụng cơ bản giúp người học hiểu cách điều khiển và lập trình các thiết bị điện tử, trong khối đèn led đơn, các chân k tốt được nối chung với nhau và nối đến GND, đầu A nốt còn lại đấu qua điện trở hạn dòng 330 Ω và nối đến chân chờ như trong hình 3.13, vì vậy để điều khiển đèn led sáng thì điện áp cấp đến các chân chờ là 5v và tương ứng mức 1, đèn led tắt là 0v tương ứng với mức 0 Khối đèn led đơn này được xắp xếp và nối dây trên mạch in như trong hình 3.14 và 3.15
Hình 3.14 Sơ đồ bố trí linh kiện trên mạch lớp trên khối đèn led đơn
Hình 3.15 Sơ đồ mạch in lớp dưới khối đèn led đơn
Trang 383.1.6 Khối Led 7 thanh
Đèn Led 7 thanh là một loại đèn led đặc biệt được thiết kế để hiển thị các chữ số
và một số ký tự khác bằng cách sử dụng 7 led đơn lẻ sắp xếp thành hình chữ "8" và một led nữa có thể tùy chọn để tạo thành một ký tự "chấm" Các chân a, b, c, d, e, f, g của Led 7 thanh tương ứng với các thanh khác nhau trên màn hình để tạo ra các số từ 0 đến
9 và một sô ký tự khác
Hình 3.16 Sơ đồ mạch nguyên lý khối Led 7 thanh
Trong sơ đồ nguyên lý của khối 6 Led 7 thanh loại K chung như trong hình 3.16, tất các các chân a b c d e f g và dấu chấm được nối chung với nhau, việc kết nối chung các chân này giúp đơn giản hóa mạch và giảm số lượng chân điều khiển cần thiết từ vi điều khiển, đặc biệt hữu ích trong các ứng dụng hiển thị trên nhiều Led 7 thanh, việc giao tiếp và hiển thị trên nhiều Led 7 thanh này được thực hiện theo phương thức quét led, việc bố trí xắp xếp các Led 7 thanh và nối dây các chân trong mạch in được thể hiện trong hình 3.17 và hình 3.18
Hình 3.17 Sơ đồ bố trí linh kiện trên mạch lớp khối Led 7 thanh
Trang 39Hình 3.18 Sơ đồ mạch in lớp dưới khối Led 7 thanh
3.1.7 Khối màn hình LCD 16x2
Khối màn hình LCD 16x2 là một loại màn hình hiển thị dùng công nghệ LCD có kích thước 16 ký tự x 2 dòng Nó được sử dụng trong các dự án vi điều khiển để hiển thị thông tin như văn bản, dữ liệu cảm biến, hoặc các trạng thái hệ thống Màn hình LCD 16x2 có giao tiếp đơn giản với vi điều khiển bằng giao tiếp song song
Hình 3.19 Sơ đồ mạch nguyên lý khối màn hình LCD 16x2
Khối màn hình LCD có các chân chờ để kết nối với vi điều khiển như trong hình 3.19, trong đó các chân:
- GND: Nối mát 0v
- VCC: Cung cấp nguồn điện 5v
- CONTRAST : Điều chỉnh độ tương phản của màn hình
- RS (Register Select): Chân chọn chế độ.(0: Chế độ lệnh, 1: Chế độ dữ liệu)
- R/W (Read/Write): Chân đọc/ghi 0: Ghi dữ liệu, 1: Đọc dữ liệu
- E (Enable): Chân kích hoạt Khi chân này được kích hoạt, dữ liệu được gửi đến màn hình
Trang 40- D0-D7: Chân dữ liệu (có thể dùng 4-bit hoặc 8-bit để truyền dữ liệu) dùng để kết nối với một cổng P0 của vi điều khiển
- Chân 15 và 16 là chân A và K (hoặc LED+ và LED-): là đèn nền, giúp làm sáng màn hình
Hình 3.20 Sơ đồ bố trí linh kiện trên mạch lớp trên khối màn hình LCD 1602
Hình 3.21 Sơ đồ mạch in lớp dưới khối màn hình LCD 1602
3.1.8 Khối RS-485
Hình 3.22 Sơ đồ mạch nguyên lý khối RS 485