Tải bản đầy đủ (.docx) (33 trang)

KHÓA số điện tử hiện thị LCD dùng 89c51 ( có code và mạch in )

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.11 MB, 33 trang )

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



ĐỒ Á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


×