Khi mới cấp nguồn password mặc định là 111111 (do người lập trình cung cấp,password chỉ dùng 6 số
Đồ án khóa số dùng ram ngoài PHẦN I: NỘI DUNG 1. SƠ ĐỒ NGUYÊN LÝ Sơ đồ khối các khối chức năng RS RW EN VDDVSS VDDP3.3 P3.4 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 VEE P3.4 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 30 30 3.7 3.6 3.7 3.6 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 P3.3 P3.5 P3.5 P2.7 P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 P2.4 P2.5 P2.6 P2.3 P2.2 P2.1 P2.0 D7 D0 D1 D2 D3 D4 D5 D6 D7 D6 D5 D4 D3 D2 D1 D0 EN RW RS VEE VDD VSS XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32 P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.7/RD 17 P3.6/WR 16 P3.5/T1 15 P2.7/A15 28 P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27 U1 AT89C51 C3 10uF R1 10k +5V D7 14 D6 13 D5 12 D4 11 D3 10 D2 9 D1 8 D0 7 E 6 RW 5 RS 4 VSS 1 VDD 2 VEE 3 LCD1 16 CHARACTERS X 2 LINES RV1 1k +5V RL1 5V D7 LED-RED R11 220 +5V 2 3 4 5 6 7 8 9 1 RP1 RESPACK-8 +5V R2 10k R3 10k X1 12M 0 1 2 3 4 5 6 7 8 9 Open Close No Start Change OOK A B C D 1 2 4 3 A0 10 A1 9 A2 8 A3 7 A4 6 A5 5 A6 4 A7 3 A8 25 A9 24 A10 21 A11 23 A12 2 CE 20 CS 26 WE 27 OE 22 D0 11 D1 12 D2 13 D3 15 D4 16 D5 17 D6 18 D7 19 U2 6264 D0 3 Q0 2 D1 4 Q1 5 D2 7 Q2 6 D3 8 Q3 9 D4 13 Q4 12 D5 14 Q5 15 D6 17 Q6 16 D7 18 Q7 19 OE 1 LE 11 U3 74LS373 R4 10k D1 LED-RED Sơ đồ nguyên lý các khối chức năng 2. HOẠT ĐỘNG - 1 - Khối vi điều khiển 8051 Khối báo độngKhối nguồn Khối mở cửaKhối hiển thị Khối RAM Đồ án khóa số dùng ram ngoài - Khi mới cấp nguồn password mặc định là 111111 (do người lập trình cung cấp,password chỉ dùng 6 số. - Nếu không dùng password do người lập trình cung cấp thì ta thay đổi password bằng cách: Nhấn phím CHANGE nhập password mặc định(hay password củ) nhấn phím Yes nhập password mới (gồm 6 số) nhấn phím Yes. - Muốn mở : nhập password nhấn phím OPEN thì khóa sẽ mở. - Muốn khóa : nhấn phím CLOSE. - Trong quá trình thay đổi password hay mở khóa nếu muốn thoát ra thì nhấn phím START. 3. GIỚI THIỆU VỀ CÁC KHỐI VÀ CÁC IC TRONG SƠ ĐỒ NGUYÊN LÝ Mạch điện gồm có: - Khối nguồn - Vi điều khiển AT89V51 - Ram CY6264 và IC 74LS373 - Một bàn phím ma trận 4 x 4 - Khối hiển thị là mội LCD 16 characters x 2 Line - Khối mở khóa - Khối báo động. 3.1. Khối nguồn - 2 - Đồ án khóa số dùng ram ngoài U 2 L 7 8 0 5 / T O 2 2 0 1 2 3 V I N G N D V O U T C 1 1 0 0 0 u C 4 1 0 4 - + D 2 D B 1 0 1 1 2 3 4 J 1 N g u o n A C 1 2 V 1 2 R 1 1 k 5 C 1 1 0 0 0 u J 4 1 2 V 1 2 3 C 5 4 7 0 u C 3 1 0 4 C 5 4 7 0 u S W 1 N U T N H A N C 4 1 0 4 D 4 L E D U 2 L 7 8 1 2 / T O 2 2 0 1 2 3 V I N G N D V O U T J 2 5 V 1 2 3 C 3 1 0 4 Hình 3.1: Sơ đồ nguyên lý của khối nguồn. Bao gồm: Cầu diode để biến điện AC thành DC Tụ 1000 uF, 470 uF và tụ gốm 104 lọc nguồn IC ổn áp 7805, 7812 để tạo ra nguồn điện áp 5v, 12v cung cấp cho vi xử lý. 3.2. Vi điều khiển AT89V51 Là một chíp AT89V51 thuộc họ vi điều khiển 8051 có nhiện vụ điều khiển ra lệnh cho khối hiển thị (LCD) thông qua các phím nhấn của người sử dụng. 3.2.1. Một số nét đặc trưng − Tương thích với sản phẩm MCS-51 − Bộ nhớ chương trình bên trong: 4KB (ROM) − Bộ nhớ dữ liệu bên trong: 128 KB (RAM) − Port xuất nhập (I/O port) :32 − 2 bộ định thời 16 bit − Ngắt :6 - 3 - Đồ án khóa số dùng ram ngoài − Nguồn cấp :Vcc =5V − 3 vị trí khoá bộ nhớ chương trình. − Mạch giao tiếp nối tiếp. − Hoạt động tĩnh: từ 0 Hz đến 24 MHz − Chạy không nguồn thấp và chế độ giảm nguồn. − Số chân IC :40 3.2.2. Sơ đồ chân và chức năng các chân của vi điều khiển AT89V51 3.2.2.1. Sơ đồ chân: Hình 3.1: Sơ đồ nguyên lý của khối nguồn. Hình 3.2.2.1: Sơ đồ chân của vi điều khiển 8051 3.2.2.2. Chức năng: Vcc: nguồn cấp (chân số 40) - 4 - U 1 A T 8 9 C 5 1 9 1 8 1 9 2 0 2 9 3 0 3 1 4 01 2 3 4 5 6 7 8 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 3 9 3 8 3 7 3 6 3 5 3 4 3 3 3 2 R S T X T A L 2 X T A L 1 G N D P S E N A L E / P R O G E A / V P P V C CP 1 . 0 P 1 . 1 P 1 . 2 P 1 . 3 P 1 . 4 P 1 . 5 P 1 . 6 P 1 . 7 P 2 . 0 / A 8 P 2 . 1 / A 9 P 2 . 2 / A 1 0 P 2 . 3 / A 1 1 P 2 . 4 / A 1 2 P 2 . 5 / A 1 3 P 2 . 6 / A 1 4 P 2 . 7 / A 1 5 P 3 . 0 / R X D P 3 . 1 / T X D P 3 . 2 / I N T 0 P 3 . 3 / I N T 1 P 3 . 4 / T 0 P 3 . 5 / T 1 P 3 . 6 / W R P 3 . 7 / R D P 0 . 0 / A D 0 P 0 . 1 / A D 1 P 0 . 2 / A D 2 P 0 . 3 / A D 3 P 0 . 4 / A D 4 P 0 . 5 / A D 5 P 0 . 6 / A D 6 P 0 . 7 / A D 7 Đồ án khóa số dùng ram ngoài GND: Nối đất (chân số 20 ) Port 0: Port 0 (P0.0 – P0.7) có số chân từ 32- 39 Port 0 là port xuất nhập 8bit 2 chiều. Port 0 được định hình làm bus địa chỉ (byte thấp) và làm bus dữ liệu đa hợp trong khi truy xuất bộ nhớ dữ liệu ngoài và bộ nhớ chương trình ngoài. Port 0 nhận các byte mã trong khi lập trình cho Flash và xuất các byte mã trong khi kiểm tra chương trình. Port 1 : Port 1 (P1.0 – P1.7) có số chân từ 1 – 8. Port 1 là một port xuất nhập 8bit có các điện trở kéo lên bên trong.khi các logic 1 được đặt lên các chân của port 1, các chân này được kéo lên mức cao bởi các điện trở kéo lên bên trong và có thể được sử dụng như là các ngõ vào. Khi thực hiện là các port nhập, các chân của port 1 được kéo xuống mức thấp do tác động bên ngoài sẽ cấp dòng cho các điện trở kéo lên bên trong. Port 2 : Port 2 (P2.0 – P2.7) có số chân từ 21 -28 Port 2 là port xuất nhập 8bit 2 chiều có các điện trở kéo lên bên trong. Khi các logic 1 được đặt lên các chân của port 2, các chân này được sử dụng như là các ngõ vào. Khi thực hiện chức năng port nhập, các chân port 2 được kéo xuống mức thấp do tác động bên ngoài sẽ cấp dòng do có các điện trở kéo lên bên trong. Port 2 tạo ra byte cao của bus địa chỉ trong thời gian tìm nạp lệnh từ bộ nhớ chương trình ngoài và trong thời gian truy xuất bộ nhớ dữ liệu ngoài sử dụng các địa chỉ 16 bit. Port 3 : Port 3 (P3.0 - P3.7) có số chân từ 10 – 17 Port 3 là port xuất nhập 8 bit 2 chiều có các điện trở kéo lên bên trong. Khi các logic 1 được đặt lên các chân của port 3 các chân này được đưa lê mức cao bởi các điện trở kéo lên bên trong và có thể được sử dụng như là các ngõ vào. Khi làm chức năng port nhập, các chân port 3 được kéo xuống - 5 - Đồ án khóa số dùng ram ngoài mức thấp do tác động bên ngoài cấp dòng do có các điện trở kéo lên bên trong. Port 3 còn được sử dụng làm các chức năng khác của AT89C51. Chức năng của các chân được mô tả qua bảng sau : Bit Tên Địa chỉ bit Chức năng P3.0 RxD B0H Chân nhận dữ liệu của port nối tiếp P3.1 TxD B1H Chân phát dữ liệu của port nối tiếp P3.2 INTO\ B2H Ngõ vào ngắt ngoài 0 P3.3 INT1\ B3H Ngõ vào ngắt ngoài 1 P3.4 T0 B4H Ngõ vào của bộ định thời/đếm 0 P3.5 T1 B5H Ngõ vào của bộ định thời/đếm 1 P3.6 WR\ B6H Điều khiển ghi vào RAM ngoài P3.7 RD\ B7H Điều khiển đọc từ RAM ngoài RST : Thiết lập lại ( chân 9). Mức cao trên chân này trong 2 chu kì máy trong khi bộ dao động đang hoạt động sẽ Reset AT89V51. - 6 - Đồ án khóa số dùng ram ngoài Mạch reset Mạch Reset tự động khi khởi động máy. Ở đây chúng ta thực hiện Reset bằng cách nối chân 9 của 8951 với nguồn 5V. Chân ALE (Address Latch Enable) / PROG : chân số 3 Là một xung ngõ ra cho phép chốt địa chỉ, cho phép chốt byte thấp của địa chỉ trong thời gian truy xuất bộ nhớ ngoài. Chân này cũng được dùng làm ngõ vào xung lập trình ( PROG ) trong thời gian lập trình cho Flash. Khi hoạt động bình thường, xung của ngõ ra ALE luôn luôn có tần số bằng 1/6 tần số của mạchdao động trên chip, có thể được sử dụng cho các mục đích định thời từ bên ngoài và tạo xung Clock. Tuy nhiên cần lưu ý là một xung ALE sẽ bị bỏ qua trong mỗi chu kì truy xuất của bộ nhớ dữ liệu ngoài. Khi cần hoạt động cho phép chốt byte thấp của địa chỉ sẽ được vô hiệu hoá bằng cách set bit 0 của thanh ghi chức năng đặc biệt (SFR) có địa chỉ byte là 8EH. Khi bit này được set, ALE chỉ tích cực trong thời gian thực hiện lệnh MOVX hoặc MOVC. Ngược lại chân này sẽ được đưa lên mức cao. Việc set bit không cho phép hoạt động chốt byte thấp của địa chỉ sẽ không có tác dụng nếu bộ điều khiển đang ở chế độ thực thi chương trình ngoài. Chân PSEN (Program Store Enable):cho phép đọc bộ nhớ chương trình, chân số 29 Khi 8951 thực thi mã từ bộ nhớ chương trình ngoài, PSEN được hoạt động 2 lần trong mỗi chu kỳ máy ngoại trừ hoạt của PSEN được bỏ qua trong mỗi bộ nhớ dữ liệu ngoài. Chân EA / V pp (External Access): truy xuất ngoài , chân số 31 EA phải đươc nối với GND cho phép xuất mã từ vị trí bộ nhớ chương trình ngoài bắt đầu tại 0000H đến FFFFH. Chú ý: Nếu khoá bit 1 được lập trình, EA sẽ được chốt bên trong lúc Reset. - 7 - Đồ án khóa số dùng ram ngoài EA nối V cc để thực hiện chương trình bên trong. Chân này nhận điện áp cho phép lập trình là 12V (Vpp) trong khi lập trình Flash Chân XTAL 1 (Crysral), chân 18 Ngõ vào mạch khuếch đại đảo của mạch dao động và ngõ vào mạch tạo xung Clock bên trong chip Chân XTAL 2(chân 19) Ngõ ra mạch khuếch đại đảo của mạch dao động. Để tạo dao động cho vi điều khiển AT89V51 hoạt động, chúng em chọn mạch dao động như hình vẽ sau với các giá trị của linh kiện: C1= C2=33pF,thạch anh dao động có tần số 12MHz Hình 3.2.2.2: mạch tạo dao động cho vi điều khiển - 8 - Đồ án khóa số dùng ram ngoài - 9 - Cách mắc của mạch dao động Đồ án khóa số dùng ram ngoài 3.3. Khối bàn phím Gồm 1 bàn phím ma trận 4 dòng và 4 cột, A, B, C, D : các hàng của ma trận phím, 1 - 4: các cột của ma trận phím. 8 9 654 1 2 CH 0 A B C D 1 2 4 3 NO START 3 7 OPEN YES CLOSE Để điều khiển bàn phím ma trận ta sử dụng phương quét phím. Để điều khiển quét phím thì phải xuất dữ dữ liệu 4 bit ( trong đó có 1 bit ở mức logic thấp và 3 bit còn lại ở mức logic cao) ra các cột của ma trận phím vào để kiểm tra xem có phím nào được nhấn hay không. Nếu có phím nhấn thì trong 4 bít đọc vào sẽ có 1 bit ở mức logic thấp và dựa trên cơ sở đó để thiết lập ma trận phím. Nếu không có phím nhấn thì 4 bit đọc vào đều ở mức cao,khi đó ta chuyển mức logic thấp sang cột kế tiếp để dò tìm phím khác. Ứng dụng: Thí nghiệm phương pháp kết nối bàn phím được thiết kế theo kiểu ma trận với vi điều khiển. Thí nghiệm ứng dụng điều khiển thiết bị bằng bàn phím. Thí nghiệm các phương pháp quét phím và nhận dạng phím nhấn. - 10 - [...]... án khóa số dùng ram ngoài 3.4 Khối Ram ngoài Khối Ram ngoài dùng để lưu password, gồm IC chốt 74LS373 và Ram 6264 dung lượng 64k Sơ đồ chân 74LS373 và CY6264 3.4.1 74LS373 - 11 - Đồ án khóa số dùng ram ngoài H: tích cực mức cao L: tích cực mức thấp X: không xác định Q0: The Level of the output befor steady-state input conditions were established Z: High Impedance 3.4.2 CY6264 Trong mạch này ta dùng Ram. .. chương trình PROG2 - 19 - Change Đồ án khóa số dùng ram ngoài Open So sanh pass ram sai Tăng R6 đúng Correct đúng R6 = 3 Open the Safe sai Welcome Pass_ sai: Relay đóng Thông báo Quet_phim Phím close Begin Hình 4:Sơ đồ giải thuật chương trình OPEN - 20 - Báo động Đồ án khóa số dùng ram ngoài - 21 - Đồ án khóa số dùng ram ngoài Change Nhap password cu 6 so: So sanh pass ram voi pass rom Doi_pass Nhấn Key... trình điều khiển 4.1 Lưu đồ giải thuật - 17 - Đồ án khóa số dùng ram ngoài Hình 1: giải thuật chương trình chính START PROG1 NẠP PASS MẶC ĐỊNH TEST RAM= 0 Đúng HIEN THI LCD Sai PROG2 PROG1 Hủy CHAGE_PAS S Đồng ý PROG2 NHAP_PASS OPEN Hình 2: Sơ đồ giải thuật chương trình PROG1 - 18 - Đồ án khóa số dùng ram ngoài PROG2 Hiển thị dòng chữ chạy Nhập Password 6 Số: Quet_phim: Quet_phim_Func: Nhấn Key Open Open... 2 1 G N D 16 1 3 LCD L C D D 7 D 6 D 5 D 4 D 3 D 2 D 1 D 0 E V C C R W R S V C C R 1 3 3 0 V C C R 3 Q 1 C 1 8 1 5 1 0 K LCD_BLOCK - 14 - Đồ án khóa số dùng ram ngoài Bảng mô tả chức năng các chân của các modul LCD ký tự - 15 - Đồ án khóa số dùng ram ngoài Số Mức Tên Chức năng 1 Vss Nguồn cấp cho LCD 2 Vdd 3 Vee - - GND Nguồn cấp cho LCD - - +5V Chỉnh độ tương phản - - 0 - Vdd I D0 - D7 đóng vai trò... 34 - Đồ án khóa số dùng ram ngoài PUSH ACC PUSH 04H LCALL DELAY MOV R4,#46 MOV DPTR,#STRINGCODE LOVE2: MOV A,R4 MOVC A,@A+DPTR LCALL GUI_DATA INC R4 CJNE R4,#62,LOVE2 ;DA MO CUA LCALL AAAA EXIT_OPEN: LCALL QUET_PHIM CJNE A,#11,EXIT_OPEN ; TRO VE LAN NHAP GIA TRI BAN DAU POP 04H POP ACC LJMP BEGIN ; SAI -PASS_SAI: INC R6 ;R3 CHO PHEP SO LAN NHAP PASS SAI - 35 - Đồ án khóa số dùng ram ngoài CJNE R6,#3,HOME... Nguồn cung cấp cho LED nền - - 0V Dữ liệu / Lệnh - 16 - Đồ án khóa số dùng ram ngoài 3.6 Khối đóng mở khóa Tín hiệu mở khóa được điều khiển ở mức logic cao Khi mở khóa thì chân p3.4 ở mức 1 điều khiển transistor dẫn, có dòng qua relay VC C J2 K1 D 1 5 3 D IO D E 1 4 1 2 2 Q 1 R 3 R ELAY SPD T 8k2 N AM C H AM Q 2SC 1047 Sơ đồ khối của khối mở khóa Khi đó, relay chuyển sang tiếp điểm thường hở, làm ngắt... án khóa số dùng ram ngoài PHIMDATA: PUSH ACC MOV A,50H CJNE A,#6,HIENTHI POP ACC LJMP QUET_PHIM_FUNC ;WHEN YOU INPUT PASS THEN DISPLAY HIENTHI: INC 50H POP ACC MOV @R1,A ORL A,#30H LCALL DELAY MOV DATABUS,#'*' SETB RS ;RS = 1-SEND DATA NOP PULSE_EN12: CLR RW ;RW = 0-WRITING MODE CLR EN ;MAKE AN ENABLE PULSE NOP SETB EN NOP MOV TH0,#HIGH(-1000) MOV TL0,#LOW(-1000) LCALL DELAY_2 - 32 - Đồ án khóa số dùng. .. vào cho phép xuất dữ liệu WR\ ( Write ): ngõ vào cho phép ghi dữ liệu CS\ ( chip select ): ngõ vào cho phép RAM hoạt động - 13 - Đồ án khóa số dùng ram ngoài 3.5 Khối hiển thị Khối này sử dụng một LCD để hiển thị các thông tin khi sử dụng khóa và được điều khiển bởi khối vi điều khiển Thông số của LCD : + Kích thước hiển thị : 16 ký tự x 2 dòng + Màu hiển thị: đen/trắng + Chế độ giao tiếp : 8 bít và... established Z: High Impedance 3.4.2 CY6264 Trong mạch này ta dùng Ram CY6264 chỉ để lưu password nên cần dung lượng ít,ta chỉ dùng 8 đường địa chỉ từ A0 đến A7, A8 đến A12 nối xuống 0V Tức là ta chỉ sử dụng 256 byte của Ram có địa chỉ từ 00H đến FFH - 12 - Đồ án khóa số dùng ram ngoài 0 6 7 2 V C C 0 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 C C W O S 1 S 2 E E 6 2 6 4 D D D D D D D D 0 1 2 3 4 5 6 7 1 1 1 1 1 1... sanh Đúng Nhap password moi 6 so: Hình 5:Sơ đồ giải thuật chương trình CHAGE_PASS - 22 - Begin Đồ án khóa số dùng ram ngoài 4.2 Chương trình $MOD51 ;**************************************************************** ; TRUONG DAI HOC CONG NGHIEP THANH PHO HO CHI MINH ; //\\*******//\\ ; DO AN KHOA SO DUNG RAM NGOAI ; THUC HIEN: NGUYEN VAN HIEU - NGUYEN HOAI SANG ;========================================================= . án kh a s d ng ram ngo i PHẦN I: N I DUNG 1. S ĐỒ NGUYÊN LÝ S đồ kh i các kh i chức n ng RS RW EN VDDVSS VDDP3.3 P3.4 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7. Kh i báo độngKh i nguồn Kh i mở cửaKh i hiển thị Kh i RAM Đồ án kh a s d ng ram ngo i - Khi m i cấp nguồn password mặc định là 111111 (do ng ời