MẠCH QUÉT MA TRẬN PHÍM 4x4 (có code) .................... MẠCH QUÉT MA TRẬN PHÍM 4x4 (có code) .................... MẠCH QUÉT MA TRẬN PHÍM 4x4 (có code) .................... MẠCH QUÉT MA TRẬN PHÍM 4x4 (có code) ....................
Trang 2CHƯƠNG 2 THIẾT KẾ THI CÔNG 7
2.1 NGUYÊN LÝ HOẠT ĐỘNG CỦA MẠCH 7
2.2 SƠ ĐỒ KHỐI CỦA MẠCH8
2.3 SƠ ĐỒ NGUYÊN LÝ 8
2.3.1 Sơ đồ nguyên lý mạch nguồn 8
2.3.2 Sơ đồ nguyên lý mạch quét ma trận phím 4x49 2.3.3 Mạch in 10
CHƯƠNG 3 GIẢI THUẬT ĐIỀU KHIỂN 11
3.1 LƯU ĐỒ GIẢI THUẬT 11
3.2 TRÌNH BIÊN DỊCH MIKROC PRO 11
3.3 KẾT QUẢ MÔ PHỎNG 12
CHƯƠNG 4 NHẬN XÉT 12
Trang 4DANH MỤC CÁC HÌNH VẼ
Hình 1- 1 Sơ đồ chân AT89C51 2
Hình 1- 2 Module ma trận phím 4x4 5
Hình 1- 3 Sơ đồ nguyên lý ma trận phím 4x4 5
Hình 1- 4 Sơ đồ chân Led 7 đoạn đôi 6
Hình 1- 5 Sơ đồ chân IC7404 7
Hình 2- 1 Sơ đồ khối của mạch quét bàn phím 4x4 8
Hình 2- 2 Sơ đồ nguyên lý mạch nguồn 8
Hình 2- 3 Sơ đồ nguyên lý mạch quét ma trận phím 4x4 9
Hình 2- 4 Mạch in 10
Hình 3- 1 Lưu đồ thuật toán điều khiển chương trình 11
Hình 3- 2 Mạch mô phỏng nhấn phím hiển thị số lên Led 7 Đoạn 12
Trang 6DANH MỤC CÁC TỪ VIẾT TẮT
IC Integrated Circuit
Led Light Emitting Diode
RAM Random Access Memory
ROM Read Only Memory
Trang 7CHƯƠNG 1 GIỚI THIỆU ĐỀ TÀI
- Viết chương trình điều khiển ma trận phím 4x4 hiển thị lên Led 7 đoạn
- Thiết kế mạch nguồn cấp cho các thiết bị hoạt động
Trang 8Trang 2/17
1.2 Các thành phần chính trong mạch
1.2.1 Vi điều khiển AT89C51
Hình 1- Sơ đồ chân AT89C51
1.2.1.1 Cấu trúc chung
- 4 Kbyte bộ nhớ FLASH ROM bên trong dùng để lưu chương trình điềukhiển
- 128 RAM nội
- 4 Port xuất nhập dữ liệu I/O 8 bit
- 64 KByte vùng nhớ mã ngoài
- 64 KByte vùng nhớ dữ liệu ngoài
- Có thể có 210 bit sử dụng để truy xuất từng bit và có các lệnh xử lý bit
Mạch quét ma trận phím 4x4
Trang 91.2.1.2 Chức năng các chân
Nhóm chân nguồn nuôi
- Chân số 20 (Nối đất)
- Chân số 40 (Nguồn nuôi 5V Một chiều)
Nhóm chân tín hiệu vào điều khiển
- Chân số 1: tín hiệu vào đếm cho Timer2 / Counter2
- Chân số 2 :tín hiệu vào ngắt ngoài 2
- Chân số 9 :nối chuyển mạch dùng cho việc xóa về trạng thái ban đầu hoặc khởi động lại
- Chân số 12 :tín hiệu vào gây ngắt ngoài 0
- Chân số 13 : tín hiệu vào gây ngắt ngoài 1
- Chân số 14 : tín hiệu vào đếm cho Timer0/ Counter0
- Chân số 15 : tín hiệu vào đếm cho Timer1/ Counter1
- Chân số 18 , Chân số 19 : nối tinh thể thạch anh cho máy phát xung nhịp chu trình
- Chân số 31 : chọn nhớ ngoài (nối đất) hay chọn nhớ trong (nối nguồn nuôi 5V một chiều)
Nhóm chân tín hiệu ra điều khiển
- Chân số 16 : để đưa tín hiệu ghi dữ liệu vào bộ nhớ ngoài
- Chân số 17 : đưa tín hiệu đọc dữ liệu từ bộ nhớ ngoài
Trang 10 Nhóm chân tín hiệu địa chỉ, dữ liệu
- Chân số (39-32) : sử dụng cho việc trao đổi tin tức về dữ liệu D0-D7, hay đưa ra các địa chỉ thấp (A0-A7) theo chế độ dồn kênh (kết hợp với tín hiệu chốt địa chỉ ALE)
- Chân số (21-28): sử dụng để trao đổi tin tức song song về dữ liệu (D0-D7) hay đưa ra địa chỉ cao (A8-A15)
- Chân số (1-8) : dùng cho việc trao đổi tin song song dữ liệu (D0-D7)
- Chân số (10-17) :
- Chân số 10 : đưa vào tín hiệu nhận tin nối tiếp RXD
- Chân số 11 : đưa ra tín hiệu truyền tin nối tiếp TXD
- Chân số 12 : tín hiệu vào gây ngắt 0 của vi điều khiển
- Chân số 13 : tín hiệu vào gây ngắt 1 của vi điều khiển
- Chân số 14 : tín hiệu vào đếm cho Timer0/ Counter0 cho vi điều khiển
- Chân số 15 : tín hiệu vào đếm cho Timer1/ Counter1 cho Vi điều khiển
- Chân số 16 : dùng để đưa tín hiệu ghi dữ liệu vào bộ nhớ ngoài
- Chân số 17 : để đưa tín hiệu đọc dữ liệu từ bộ nhớ ngoài
Mạch quét ma trận phím 4x4
Trang 12Trang 6/17
1.2.3 Led 7 Đoạn
Hình 1- Sơ đồ chân Led 7 đoạn đôi
- 7 led đơn tạo ra hình chữ nhật 日 và mỗi led được đặt tên là A, B, C, D, E, F, G.
Việc tắt mở các led này sẽ tạo ra các con số
- Trong mạch sử dụng led 7 đoạn đôi, có 10 chân.Gồm :
2 chân điều khiển DIG.1, DIG.2
1 chân DP hiển thị dấu chấm
7 chân còn lại tương ứng với 7 led đơn
1.2.4 IC74HC04
- Là IC cổng NOT.Có 6 cổng NOT hoạt động độc lập Trên bất kỳ cổng NOTnào nếu đầu vào là ‘Thấp’ sau đó ngõ ra sẽ là ‘Cao’ Tương tự như vậy nếu ngõvào là ‘Cao’ thì sau đó ngõ ra sẽ là ‘Thấp’
Mạch quét ma trận phím 4x4
Trang 13Hình 1- Sơ đồ chân IC7404
Bảng 1- Bảng Sự thật Cổng NOT
CHƯƠNG 2 THIẾT KẾ THI CÔNG
2.1 Nguyên lý hoạt động của mạch
- 4 Cột của ma trận phím được nối với 4 bit thấp của PORT1 Vi điều khiển
- 4 hàng của ma trận phím được nối với 4 bit cao của PORT1 Vi điều khiển
- Ma trận phím hoạt động theo nguyên lý quét phím theo cột
- Khi cấp nguồn , không có phím nào được nhấn thì Led 7 đoạn hiển thị số 00
- Khi nhấn phím bất kỳ thì Led 7 đoạn hiển thị số tương ứng
- Nhấn nút reset trên Board điều khiển , Led 7 đoạn hiển thị lại số 00 ban đầu
2.2 Sơ đồ khối của mạch
Nguồn
Trang 14Trang 8/17
Hình 2- Sơ đồ khối của mạch quét bàn phím 4x4
- Khối nguồn 5V một chiều ổn định cấp cho Vi điều khiển
- Khối ma trận phím 4x4 điều khiển mạch
- Khối Vi điều khiển
- Khối hiển thị lên Led 7 Đoạn
2.3 Sơ đồ nguyên lý
2.3.1 Sơ đồ nguyên lý mạch nguồn
Hình 2- Sơ đồ nguyên lý mạch nguồn
Mạch quét ma trận phím 4x4
Led 7 Đoạn
Vi ĐiềuKhiểnKeyPad 4x4
Trang 152.3.2 Sơ đồ nguyên lý mạch quét ma trận phím 4x4
Hình 2- Sơ đồ nguyên lý mạch quét ma trận phím 4x4
Trang 17CHƯƠNG 3 GIẢI THUẬT ĐIỀU KHIỂN
3.1 Lưu đồ giải thuật
Sai
Đúng
Hình 3- Lưu đồ thuật toán điều khiển chương trình
3.2 Trình biên dịch MikroC PRO
Với mikroC PRO thì sẽ có được công cụ đầy đủ tính năng và mạnh mẽ, đồng thờirất trực quan và thuận tiện cho việc viết chương trình điều khiển trên 8051
Cộti=0 (i=1-4)Bắt đầu
Hàngi=0(i=1-4)
Xuất kết quả hiển thịlên Led 7 đoạn
Trang 19CHƯƠNG 5 KẾT LUẬN
5.1 Kết luận
5.1.1 Ưu điểm
- Thao tác vận hành đơn giản
- Các linh kiện dễ dàng tìm kiếm và chi phí không cao
- Sử dụng nguồn 5V một chiều nên có thể đảm bảo an toàn
Có thể điều khiển được nhiều phím hơn, tối ưu hóa kích thước mạch thực
Đưa vào các ứng dụng khóa số điện tử hoặc hoặc điều khiển các thiết bị từ xa
Trang 20http://dientuphuongdung.com/pd/shops/led-7-thanh-doi/led-7-thanh-0-56-x2-[5] https://vi.wikipedia.org/
[6] http://alldatasheet.com/
[7] http://www.machungdung.com/ban-phim-4x4
Mạch quét ma trận phím 4x4
Trang 21PHỤ LỤC
Chương trình điều khiển:
Chương trình chính:
#include "main.h "
#include " \ libe \delay.h "
#include " \ libe \keyport4x4.h"