BÁO CÁO ĐỒ ÁN 2
Đề tài:
KHÓA SỐ ĐIỆN TỬ
MỤC LỤC
DANH MỤC CÁC HÌNH VẼ
DANH MỤC CÁC TỪ VIẾT TẮT
ROM
Read Only Memory
LCD
Liquid Crystal Display
PIN
Personalised Identity Number
ĐỒ ÁN 2
Trang 3/25
CHƯƠNG 1: GIỚI THIỆU CHUNG
1. Giới thiệu
Mạch khóa số điện tử có chức năng đóng mở theo mã số, nó có thể được sử dụng trong
các hệ thống cửa ra vào thay thế cho các ổ khóa truyền thống.
Để có thể đảm bảo cho khả năng khóa và mở khóa, mạch khóa số cần bảo mật được mã
số, có thể thay đổi mã số, dễ dàng sử dụng.
2. Chức năng
Mạch khóa số có chức năng chính là điều khiển các tiếp điểm relay, giao tiếp với người
sử dụng thông qua một bàn phím và hiển thị trên một màn hình LCD.
Bàn phím gồm 16 nút nhấn, mỗi nút nhấn có chức năng:
Phím số: 0 – 9 dùng nhập mật mã.
PIN: thay đổi mã số khóa của hệ thống.
Lock: Khóa hệ thống.
Unlock: Mở khóa hệ thống.
OK: Xác nhận thao tác.
Clear: Xóa mã số vừa nhập.
Cancel: Hủy bỏ thao tác đang thực hiện.
Màn hình LCD: hiển thị thông tin thao tác đang thực hiện với người sử dụng.
3. Khả năng của hệ thống
Mạch sẽ yêu cầu nhập mật mã để có thể mở khóa. Nhưng có thể khóa bất kỳ lúc nào.
Trong quá trình nhập mật mã, người dùng có thể nhập lại từ đầu, hoặc hùy bỏ thao tác.
Nếu nhập sai quá số lần cho phép, hệ thống sẽ phát ra tiếng bíp liên tục, đồng thời
ngừng mọi hoạt động cho đến khi mạch được reset.
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 4/25
Người dùng cũng có thể thay đổi mã số của hệ thống nhằm nâng cao tính bảo mật. Để
thực hiện, cần nhập vào mã số hiện tại.
Nếu nhập sai quá số lần cho phép, mạch cũng sẽ báo động tương tự trường hợp mở
khóa.
Nếu nhập đúng, người dùng có thể nhập vào mã mới thay cho mã cũ. Hệ thống sẽ phát
tiếng bíp khi mã đã được đổi hoặc đã nhập đúng mã cũ nhưng không muốn thay đổi mã
mới.
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 5/25
CHƯƠNG 2: CÁC LINH KIỆN CƠ BẢN
1. Vi điều khiển AT89C51:
Có khả năng điều khiển linh hoạt theo chương trình nạp vào. Giúp giảm kích thước so
với việc dùng IC, tăng độ ổn định của hệ thống.
Thuộc họ vi xử lý 8051, có 32 cổng I/O, với 4KB Flash ROM.
Hình 2.1 Vi điều khiển AT89C51
Hình 2.2 Sơ đồ chân AT89C51
Chức năng các chân:
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 6/25
-
Port 0 (P0.0 – P0.7) có số chân từ 32 đến 39. Có 2 chức năng là port xuất
nhập dữ liệu hoặc bus địa chỉ byte thấp và bus dữ liệu đa hợp (AD0 – AD7).
-
Port 1 (P1.0 – P1.7) có số chân từ 1 đến 8. Có chức năng xuất nhập dữ liệu.
-
Port 2 (P2.0 – P2.7) có số chân từ 21 đến 28. Có 2 chức năng là port xuất
nhập dữ liệu hoặc bus địa chỉ byte thấp và bus dữ liệu đa hợp (A8 – A15).
-
Port 3 (P3.0 – P3.7) có số chân từ 10 đến 17. Có 2 chức năng là port xuất
nhập dữ liệu hoặc các tín hiệu điều khiển.
-
PSEN: Chân số 29, cho phép bộ nhớ chương trình.
-
ALE: Chân số 30, cho phép chốt địa chỉ.
-
EA: Chân số 31, truy xuất ngoài. Phải được nối lên Vcc nếu sử dụng ROM
nội hoặc nối GND nếu sử dụng ROM ngoài.
-
XTAL1 – 2: Chân 18, 19. Dùng để nối với thạch anh hoặc mạch dao động
tạo xung clock, cung cấp cho chip hoạt động.
-
RST: Chân số 9. Thiết lập lại trạng thái ban đầu cho hệ thống, là tín hiệu
nhập, tích cực mức cao.
-
Vcc và GND số chân lần lượt là 40 và 20. Có chức năng cung cấp nguồn
hoạt động cho chip. Điện áp hoạt động tối đa 6,6 v và dòng tiêu thụ 20 mA.
2. Bàn phím:
Bàn phím được tạo thành từ 16 nút nhấn 4 chân, nối với nhau theo dạng ma trận phím,
vì thế có thể giảm còn 8 kết nối tới vi điều khiển.
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 7/25
Hình 2.3 Nút nhấn 4 chân
Hình 2.4 Cấu tạo nút nhấn 4 chân
Hình 2.5 Cách nối nút nhấn thành bàn phím
3. LCD 16X2:
LCD có thể hiển thị thông tin tốt hơn nhiều so với LED 7 đoạn hoặc LED ma trận. Vì
được tích hợp module điều khiển cho LCD, nên việc điều khiển không quá phức tạp. LCD
16x2 hiển thị được 2 dòng với 16 ký tự ở mỗi dòng.
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 8/25
Hình 2.5 LCD 16x2
Hình 2.6 Sơ đồ chân LCD 16x2
a) Chức năng các chân:
-
Vcc và GND: Nguồn cung cấp cho LCD hoạt động.
-
VEE: Điều chỉnh độ tương phản.
-
RS: Chọn thanh ghi lệnh hoặc dữ liệu.
-
RW: Chọn thanh ghi đọc hoặc ghi dữ liệu.
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 9/25
-
E: Cho phép.
-
DB0 – DB7: Các bit dữ liệu.
b) Tập lệnh điều khiển LCD:
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 10/25
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 11/25
c) Giao tiếp giữa vi điều khiển và LCD:
LCD cần 7 hoặc 11 đường I/O để giao tiếp, phụ thuộc vào chế độ dữ liệu của LCD 4
hoặc 8 bit.
Để thiết lập lệnh hoặc gửi dữ liệu, cần tạo 1 xung cạnh xuống trên trân E của LCD.
Ngược lại, để đọc dữ liệu hoặc trạng thái, cần tạo một xung cạnh lên trên chân E. Mỗi khi
LCD thực hiện một lệnh đều cần một khoảng thời gian để hoàn thành, phụ thuộc vào từng
loại LCD, vì thế cần kiểm tra trạng thái bạn của LCD từ cờ báo bận (Busy Flag) hoặc tạo
một thời gian delay đủ để hoàn thành lệnh.
Để hiển thị ký tự tại một vị trí bất kỳ, cần đặt chế độ LCD nhận lệnh, và gửi địa chỉ con
trỏ vị trí đó đến bus dữ liệu LCD. Địa chỉ con trỏ:
80
81
82
…
8F
C0
C1
C2
…
CF
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 12/25
CHƯƠNG 3: THIẾT KẾ MẠCH
1. Sơ đồ khối tổng quát:
Bàn phím
Hiển thị
Xử lý
Nguồn
Âm thanh
KHÓA SỐ ĐIỆN TỬ
Đóng mở
ĐỒ ÁN 2
Trang 13/25
2. Sơ đồ nguyên lý:
a) Khối nguồn:
Ngõ vào là điện áp AC được giảm áp qua máy biến áp trước khi vào mạch. Cầu diode
để chỉnh lưu dòng điện xoay chiều sang một chiều. IC 7805 và 7812 tạo điện áp cố định
cho ngõ ra mạch.
Ngõ ra có hai mức điện áp là 5 và 12 v.
Hình 3.1 Khối nguồn
b) Khối xử lý:
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 14/25
Hình 3.2 Khối xử lý
Mạch gồm:
- AT89C51 điều khiển hệ thống.
- Port 0 nối với bàn phím 4x4.
- Port 1 nối với bus dữ liệu LCD.
- P2.0 nối với mạch đóng mở.
- P2.1 nối với mạch âm thanh.
- Mạch dao động thạch anh cho AT89C51 hoạt động.
- Chân RST nối với mạch reset.
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 15/25
c) Khối bàn phím:
Hình 3.3 Sơ đồ nguyên lý bàn phím
Bàn phím được tạo thành từ các nút nhấn nối với nhau thành các hàng và cột.
d) Khối hiển thị:
Hình 3.4 Sơ đồ nguyên lý khối hiển thị
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 16/25
Mạch hiển thị gồm LCD 16x2, biến trở chỉnh độ tương phản hiển thị và mạch nối
LED đèn nền trên LCD.
e) Khối âm thanh:
Hình 3.5 Sơ đồ nguyên lý khối âm thanh
Gồm linh kiện chính là Buzzer và khuếch đại BJT giúp tín hiệu từ mạch xử lý đủ
mạnh cho Buzzer tạo ra âm thanh.
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 17/25
f) Khối đóng mở:
Hình 3.6 Khối đóng mở
Mạch cũng gồm khuếch đại BJT cho tín hiệu điều khiển đủ mạnh để điều khiển các
tiếp điểm của relay.
Relay có cặp tiếp điểm NO và NC. Ở trạng thái mở, COM sẽ nối với NC. Ở trạng
thái đóng, khi có dòng điện đi qua cuộn dây, COM sẽ nối với NO.
3. Lưu đồ giải thuật:
Bắt đầu
Nhấn
Nhấnphím
phím
Lock?
PIN?
Nhấn
Unlock?
Thiết phím
lập trạng
thái
KHÓA SỐ ĐIỆN TỬ
bantrình
đầu
Chương
GọiQuét
chương
phím
trình
chính
Sai
khóa
Sai
Sai
Gọi chương trình
Đúng
đổi
mở
khóa
mật
khóa
mã
ĐỒ ÁN 2
Trang 18/25
Chương trình
mở khóa
Đặt chế độ hiển thị cho
LCD, quét phím
Nhập phím số?
Thực hiện lệnh từ các
Lưu vào bộ nhớ
phím chức năng
tạm thời
Kiểm tra mã PIN
Đếm số lần
Kiểm tra số ký tự
nhập sai
Mở khóa
Về chương trình chính
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 19/25
trình
đổi
CHƯƠNG 4: KẾT Chương
QUẢ MÔ
PHỎNG
VÀ THỰC TẾ
mật mã
Chương trình khóa
1. Kết quả mô phỏng:
Mô phỏng hệ thống trên Proteus:
Đặt chế độ hiển thị cho
LCD, quét phím
Đúng
Sai
Kiểm
tra trạng
Nhập
phím thái
số? khóa
Thực hiện lệnh từ các
phím chức năng
Sai
Sai
Sai
Khóa
Quá số lần sai cho phép?
Sai
Đếm số lần
Đúng
Sai
nhập sai
Báo động
Đúng
Đã khóa?
Lưu vào bộ nhớ
tạm thờiĐúng
So sánh với mật mã cũ
Đúng
Hiện LCD, quét
phím nhập
Hình 4.1Hiện
MạchLCD
mô phỏng
Đúng
Sai quá số lần cho phép?
mật mã mới
Về chương trình chính
Lưu mật mã mới
Sai
Đúng
Báo động
KHÓA SỐ ĐIỆN TỬ
Về chương trình chính
ĐỒ ÁN 2
Trang 20/25
Hình 4.2 Mô phỏng LCD
2. Mạch thực tế:
Hình 4.3 Mặt trên mạch thực tế
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 21/25
Hình 4.3 Mặt dưới mạch thực tế
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 22/25
CHƯƠNG 5: KẾT LUẬN
1. Ưu và khuyết điểm:
a) Ưu điểm:
-
Bảo mật được mật mã.
-
Dễ dàng sử dụng.
-
Chi phí thiết kế thấp.
b) Khuyết điểm:
-
Độ dài mật mã cố định.
-
Khi reset hoặc mất nguồn, hệ thống sẽ dùng mật mã cố định.
2. Hướng phát triển:
-
Dùng ROM ngoài lưu mật mã.
-
Tăng độ bảo mật bằng cách thêm lớp bảo mật.
-
Cần chỉnh sửa chương trình cho hệ thống hoạt động ổn định hơn.
-
Thêm khối báo động thay cho việc dùng chung với mạch âm thanh.
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 23/25
TÀI LIỆU THAM KHẢO
Nguyễn Tăng Cường, Phan Quốc Thắng (2004), Cấu trúc và lập trình họ vi điều
khiển 8051, Nhà xuất bản khoa học và kỹ thuật.
KHÓA SỐ ĐIỆN TỬ
ĐỒ ÁN 2
Trang 24/25
PHỤ LỤC
Mã nguồn chương trình:
KHÓA SỐ ĐIỆN TỬ
ORG 00H
SCAN_KEY:
KEYPORT
EQU P0
CLR FLAG_KEY
COL1
EQU P0.4
LJMP MAIN_SCAN
COL2
EQU P0.5
KEYPAD:
COL3
EQU P0.6
DB 07H,08H,09H,0FH
COL4
EQU P0.7
DB 04H,05H,06H,0EH
DATABUS
EQU P1
DB 01H,02H,03H,0DH
KEYVAL EQU 20H
DB 0AH,00H,0BH,0CH
FLAG
RET
EQU 21H
FLAG_KEY
EQU FLAG.0
SCAN:
RS
EQU P3.2
MOV KEYVAL,#0
RW
EQU P3.1
MOV KEYPORT,#11111110B
EN
EQU P3.0
CALL READ_COL
RELAY
EQU P2.0
JB FLAG_KEY,EXIT_SCAN
SPK
EQU P2.1
MOV KEYVAL,#4
;=====FIRST-INITIALIZING=====
MOV KEYPORT,#11111101B
MOV 40H,#00H
CALL READ_COL
MOV 41H,#00H
JB FLAG_KEY,EXIT_SCAN
MOV 42H,#00H
MOV KEYVAL,#8
MOV 43H,#00H
MOV KEYPORT,#11111011B
MOV 44H,#00H
CALL READ_COL
MOV 45H,#00H
JB FLAG_KEY,EXIT_SCAN
MOV P2,#01H
MOV KEYVAL,#12
LCALL LCD_INIT
MOV KEYPORT,#11110111B
LCALL PROJECT_INFO
CALL READ_COL
LCALL DELAY_1S
LCALL DELAY_1S
LCALL DELAY_1S
EXIT_SCAN:
RET
READ_COL:
LCALL LOCK
CLR FLAG_KEY
CLR SPK
JB COL1,NEXTCOL
LJMP MAIN
JNB COL1,$
;========SCAN_KEY======
SETB FLAG_KEY