Lý do chọn đề tài Vi điều khiển microcontroller và màn hình LCD, Led đơn, Led 7 đoạn, Động cơ DC, nút nhấn là các thành phần phổ biến trong nhiều thiết bg điện tử ngày nay.. Việc nghiên
Trang 1BỘ CÔNG THƯƠNG
TRƯỜNG ĐẠI HỌC CÔNG THƯƠNG TP HỒ CHÍ MINHKHOA CÔNG NGHỆ ĐIỆN – ĐIỆN TỬ
TIỂU LUẬN CUỐI KỲ
MÔN HỌC: VI ĐIỀU KHIỂN
TÊN ĐỀ TÀI: MẠCH TỔNG HỢP
GVHD: TS ĐÀO THANH LIÊM
TÊN SINH VIÊN: TRẦN THANH TIẾN
MSSV: 2032224399 LỚP: 13DHTDH01
THÀNH PHỐ HỒ CHÍ MINH, THÁNG 6 NĂM 2024
Trang 2BỘ CÔNG THƯƠNG
TRƯỜNG ĐẠI HỌC CÔNG THƯƠNG TP HỒ CHÍ MINHKHOA CÔNG NGHỆ ĐIỆN – ĐIỆN TỬ
TIỂU LUẬN CUỐI KỲ
MÔN HỌC: VI ĐIỀU KHIỂN
TÊN ĐỀ TÀI: MẠCH TỔNG HỢP
GVHD: TS ĐÀO THANH LIÊM
TÊN SINH VIÊN: TRẦN THANH TIẾN
MSSV: 2032224399 LỚP: 13DHTDH01
THÀNH PHỐ HỒ CHÍ MINH, THÁNG 6 NĂM 2024
Trang 3LỜI CẢM ƠN
Trên thực tế không có sự thành công nào mà không gắn liền với sự hỗ trợ, giúp
đỡ dù ít hay nhiều, dù trực tiếp hay gián tiếp của mọi người xung quanh
Trong quá trình làm đồ án 1 em nhận được nhiều sự giúp đỡ, đóng góp ý kiến và chỉ bảo nhiệt tình của các giảng viên thầy cô và bạn bè
Đầu tiên em xin gửi lời cảm ơn sâu sắc đến thầy Th.S Lê Lương Hương Thảo là giảng viên hướng dẫn đề tài đồ án 1 của em, thầy đã tận tình giải đáp thắc mắc cũng như
đã hỗ trợ em về mọi mă [t trong thời gian em thực hiện đề tài này
Thầy đã giải đáp, cung cấp cho em những thông tin kiến thức quý báu, luôn thúc đẩy em cố gắng hoàn thành đề tài Em thật sự cảm ơn thầy!
Em cũng xin cảm ơn các thầy cô giảng viên trong khoa Công nghệ Điện-Điện tử chỉ bảo cho em những kinh nghiệm bổ ích cũng như những bài học quý báu được rút ra
te đó không chỉ giúp em thực hiện thành công đồ án 1 mà còn là kiến thức được trang
bg cho hành trang cho sự nghiệp của em trong tương lai
TP Hồ Chí Minh, tháng 06 năm 2023
Sinh viên Trần Thanh Tiến
Trang 4LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi và được sự hướng dẫncủa Thầy Đào Thanh Liêm Các nội dung nghiên cứu, kết quả trong đề tài này là trungthực và chưa công bố dưới bất kỳ hình thức nào trước đây Những số liệu trong các bảngbiểu phục vụ cho việc phân tích, nhận xét, đánh giá được chính tác giả thu thập te cácnguồn khác nhau có ghi rõ trong phần tài liệu tham khảo
Ngoài ra, trong bài còn sử dụng một số nhận xét, đánh giá cũng như số liệu củacác tác giả khác, cơ quan tổ chức khác đều có trích dẫn và chú thích nguồn gốc
Nếu phát hiện có bất kỳ sự gian lận nào tôi xin hoàn toàn chịu trách nhiệm về nội dung Khóa luận tốt nghiệp của mình Trường Đại học Công Thương Thành Phố
Hồ Chí Minh không liên quan đến những vi phạm tác quyền, bản quyền do tôi gây ratrong quá trình thực hiện (nếu có)
TP Hồ Chí Minh, tháng 06 năm 2023
Sinh viên
Trang 5MỤC LỤC
LỜI CẢM ƠN 1
LỜI CAM ĐOAN 2
MỤC LỤC 3
DANH MỤC HÌNH 5
CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI 6
1.1 Lý do chọn đề tài 6
1.2 Mục đích 6
1.3 Đối tượng nghiên cứu 6
1.4 Phương pháp nghiên cứu 6
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 7
2.1 CƠ SỞ LÝ LUẬN 7
2.1.1 Giới thiệu về AT89C51 7
Hình 2.1 Sơ đồ chân AT89C51 7
2.1.2 Các linh kiện điện tử 8
2.1.2.1 Điều khiển LCD qua I2C 8
2.1.2.2 Giao tiếp I2C 8
Hình 2.2 Module I2C 9
Hình 2.3: Điều kiện hoạt động 9
Hình 2.4: Acknowledgment on the I2C 9
2.1.2.3 LCD LM016L 10
Hình 2.5 LCD 10
2.1.2.4 LED đơn 11
Hình 2.6 Led đơn 11
2.1.2.5 LED 7 đoạn 11
Hình 2.7 Led 7 đoạn 4 số 12
2.1.2.6 Động cơ DC 12
Trang 62.1.2.7 L298 Mini (Mạch cầu H) 12
Hình 2.9: Module L298 Mini 13
2.1.2.8 Nút nhấn 13
Hình 2.10: Nút nhấn 13
2.2 CÁC VẤN ĐỀ 14
2.2.1 Tối ưu hóa số lượng chân I/O 14
2.2.2 Điều khiển nhiều thiết bg đồng thời 14
2.2.3 Không đủ dòng để động cơ có thể hoạt động 14
2.3 HƯỚNG GIẢI QUYÉT 14
2.3.1 Sử dụng giao tiếp I2C cho LCD 14
2.3.2 Sử dụng L298 Mini 14
2.4 Tối ưu hóa code 14
CHƯƠNG 3: THIẾT KẾ MẠCH 14
3.1 MẠCH MÔ PHỎNG 15
Hình 3.1 Mạch mô phỏng 15
3.2 MẠCH THỰC TẾ 15
Hình 3.2 Mạch thực tế 15
CHƯƠNG 4: CODE 16
TÀI LIỆU THAM KHẢO 29
Trang 7DANH MỤC HÌNH
Hình 2.1 Sơ đồ chân AT89C51 7
Hình 2.2 Module I2C 9
Hình 2.3: Điều kiện hoạt động 9
Hình 2.4: Acknowledgment on the I2C 9
Hình 2.5 LCD 10
Hình 2.6 Led đơn 11
Hình 2.7 Led 7 đoạn 4 số 12
Hình 2.8 Động cơ DC 12
Hình 2.9: Module L298 Mini 13
Hình 2.10: Nút nhấn 13
Hình 3.1 Mạch mô phỏng 15
Hình 3.2 Mạch thực tế 15
Trang 8CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI
1.1 Lý do chọn đề tài
Vi điều khiển (microcontroller) và màn hình LCD, Led đơn, Led 7 đoạn, Động cơ DC, nút nhấn là các thành phần phổ biến trong nhiều thiết bg điện tử ngày nay Việc nghiên cứu về cách kết hợp những linh kiện với vi điều khiển không chỉ có ý nghĩa lý thuyết mà còn mang lại giá trg thực tiễn lớn trong việc hiểu sâu hơn về cách hoạt động của các thiết
bg điện tử
1.2 Mục đích
Việc chọn đề tài này cũng có thể phát triển thành việc xây dựng các sản phẩm hoặc ứng dụng cá nhân như một dự án thú vg hoặc như một phần của việc học tập và phát triển bản thân
1.3 Đối tượng nghiên cứu
Đối tượng: Giao tiếp Chip at89S51 với module LCD, Led đơn, Led 7 đoạn, nút nhấn, động cơ DC
1.4 Phương pháp nghiên cứu
Dựa trên lý thuyết đã học được trên trường và các yêu cầu te thực tiễn để áp dụng vàobài báo tiểu luận cá nhân Qua quá trình thực nghiệm trực tiếp trên sản phẩm thật, chạy thử và hoàn thiện chương trình
Trang 9CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1 CƠ SỞ LÝ LUẬN
2.1.1 Giới thiệu về AT89C51
AT89C51 là một vi điều khiển 8-bit thuộc dòng 8051 của Atmel Nó là một chip phổ biến trong các ứng dụng nhúng nhờ vào sự đơn giản và tính ổn đgnh AT89C51 có các tính năng chính như:
Bộ giao tiếp nối tiếp UART
Hình 2.1 Sơ đồ chân AT89C51
Trang 102.1.2 Các linh kiện điện tử
2.1.2.1 Điều khiển LCD qua I2C
LCD là một loại màn hình hiển thg phổ biến, thường dùng để hiển thg thông tin te vi điều khiển Khi kết nối LCD qua I2C, vi điều khiển chỉ cần sử dụng hai dây SDA và SCL, giúp giảm số lượng chân I/O cần thiết
2.1.2.2 Giao tiếp I2C
I2C (Inter-Integrated Circuit) là một giao thức truyền thông nối tiếp, cho phép các vi điều khiển giao tiếp với các thiết bg ngoại vi thông qua hai dây: SDA (dữ liệu) và SCL (xung clock) I2C có các đặc điểm:
Hỗ trợ nhiều thiết bg trên cùng một bus
Tốc độ truyền dữ liệu te 100kbps đến 3.4Mbps
Giao thức truyền thông song công đơn giản và hiệu quả
Hình 2.2: Điều kiện hoạt động
Hình 2.3 Địa chỉ của Slave
Trang 12Đợi một khoảng thời gian ngắn một khoảng thời gian ngắn, đủ để thiết bg nhận đọc giá trg của bit trên SDA thì thiết bg phát kéo SCL xuống mức thấp để chuẩn bg truyền bit dữ liệu tiếp theo.
CÁC CHÂN I2C KẾT NỐI VỚI LCD
CÁCH GHI DỮ LIỆU: NẠP 4 BIT CAO TRƯỚC, NẠP 4 BIT THẤP SAU
* Ở đây ta muốn ghi giá trg 28h te vđk lên lcd ta phải thực hiện 4 lần
LCD 1602 là một màn hình hiển thg 16x2 ký tự Khi sử dụng giao tiếxp I2C, chỉ cần 2 dây (SDA
và SCL) để giao tiếp với vi điều khiển
Trang 13Hình 2.7 LCD
Chức năng của teng chân LCD 1602:
- 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 đga 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 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 high transition) ở chân E và được LCD giữ ở bus đến khi nào chân E xuống mức thấp
(low-to Chân số 7 đến 14 (low-to 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 te 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
Trang 142.1.2.4 LED đơn
LED đơn: Thường được dùng để hiển thg trạng thái, thông báo tín hiệu Việc điều
khiển LED đơn rất đơn giản, chỉ cần dùng một Port I/O để cấp nguồn hoặc ngắt nguồn
Hình 2.8 Led đơn
2.1.2.5 LED 7 đoạn
LED 7 đoạn là một loại màn hình hiển thg số sử dụng 7 đèn LED để tạo thành các chữ số te 0 đến 9
7 đoạn (a, b, c, d, e, f, g): Các đèn LED được sắp xếp để tạo thành các chữ số.
Cathode chung hoặc Anode chung: Kiểu kết nối của các đèn LED (chung cực
âm hoặc chung cực dương)
Điện trở hạn dòng: Được sử dụng để bảo vệ LED khỏi quá dòng.
Trong mạch này led 7 đoạn sẽ đếm phút giây
Hình 2.9 Led 7 đoạn 4 số
2.1.2.6 Động cơ DC
Động cơ DC (Direct Current Motor) là một thiết bg điện cơ chuyển đổi năng lượng điện te nguồn
DC (dòng điện một chiều) thành năng lượng cơ học
Trang 15Hình 2.10 Động cơ DC
2.1.2.7 L298 Mini (Mạch cầu H)
L298 Mini là một mạch cầu H (H-Bridge) dùng để điều khiển chiều quay và tốc độ của động cơ DC
Cầu H: Cấu trúc mạch cho phép điều khiển chiều dòng điện qua động cơ, te đó
điều khiển chiều quay của động cơ
Input pins (IN1, IN2): Điều khiển chiều dòng điện qua động cơ.
Output pins (A, B): Đầu vào động cơ
Enable pin (ENA): Chân cho phép động cơ hoạt động bằng cách bật/tắt dòng
điện
Diode bảo vệ: Bảo vệ mạch khỏi dòng ngược khi động cơ quay.
Hình 2.11: Module L298 Mini
2.1.2.8 Nút nhấn
Trang 16 Nút 2: Động cơ chạy nghgch và led sáng lần lượt te phải sang trái
Nút 3: Động cơ deng, led đơn sáng lần lượt te trái sang phải
Nút 4: Bật tất cả led đơnx
Hình 2.12: Nút nhấn
2.2 CÁC VẤN ĐỀ
2.2.1 Tối ưu hóa số lượng chân I/O
Vì AT89C51 có giới hạn về số chân I/O, việc kết nối nhiều thiết bg như LCD, LED đơn, LED 7 đoạn và động cơ DC đòi hỏi phải tối ưu hóa việc sử dụng các chân I/O
2.2.2 Điều khiển nhiều thiết bị đồng thời
Việc điều khiển đồng thời nhiều thiết bg khác nhau (LCD, LED, động cơ DC) có thể gây khó khăn do cần phải xử lý nhiều tín hiệu và dữ liệu cùng lúc
2.2.3 Không đủ dòng để động cơ có thể hoạt động
Động cơ DC yêu cầu dòng điện lớn hơn so với khả năng cung cấp của vi điều khiển
2.3 HƯỚNG GIẢI QUYÉT
2.3.1 Sử dụng giao tiếp I2C cho LCD
Sử dụng module chuyển đổi I2C cho LCD sẽ giảm số chân I/O cần thiết xuống chỉ còn hai chân, giúp giải phóng các chân I/O khác cho các thiết bg khác
2.3.2 Sử dụng L298 Mini
L298 Mini sẽ nhận các tín hiệu điều khiển te vi điều khiển và cung cấp dòng điện cầnthiết cho động cơ DC Điều này giúp bảo vệ vi điều khiển khỏi quá tải dòng và đảm bảođộng cơ hoạt động ổn đgnh
Trang 172.4 Tối ưu hóa code
Lập trình điều khiển cần tối ưu hóa xử lý đồng thời các tác vụ, gọi hàm, sử dụng vòng lặpchính để quét và điều khiển các thiết bg và các sự kiện ngay lập tức
CHƯƠNG 3: THIẾT KẾ MẠCH
3.1 MẠCH MÔ PHỎNG
Hình 3.13 Mạch mô phỏng
3.2 MẠCH THỰC TẾ
Trang 22SEPARATE: // ghi lenh
MOV R2,A // a = 28h = 00101000bANL A,#11110000B // ket qua A = 00100000bORL A,#00001100B // ket qua A = 00101100bMOV 30H,A
Trang 23CJNE BIEN_1,#60,THOAT MOV BIEN_1,#0
INC BIEN_2
CJNE BIEN_2,#60,THOAT MOV BIEN_2,#0
INC BIEN_3
CJNE BIEN_3,#24,THOAT MOV BIEN_3,#0
Trang 28TÀI LIỆU THAM KHẢO
[1] Lê Thành Tới, Hoàng Đắc Huy, Trần Trọng Hiếu – VI ĐIỀU KHIỂN, Trường Đại họcCông thương TP Hồ Chí minh, năm 2023
[1] PCF8574T Datasheet (PDF) - NXP Semiconductors.https://www.alldatasheet.com/datasheet-pdf/pdf/18215/PHILIPS/PCF8574