việc ứng dụng vi điều khiển ngày sử dụng rộng rãi lĩnh vực dân dụng công nghiệp, thiết bị điện tử phần gắn với sống người xã hội đại, hệ thống kiểm soát bảo vệ an ninh xu đó, phần lớn khóa sử dụng chủ yếu khóa khí, cơng việc có bảo mật , giám sát an ninh giới hạn người vào, việc ứng dụng khóa điện tử vào quan, nhà máy phương án có hiệu cao Ở chúng em xin giới thiệu đề tài khóa điện tử với số yêu cầu thiết bị khóa thơng dụng: - Tính an tồn: phải có chức bảo mật cao - Dễ sử dụng - Hệ thống vận hành ổn định, tuổi thọ cao Trên sở đó, chúng em đưa phương án thiết kế khóa điều khiển với chức sau: Hệ thống gồm chuỗi mã số từ đến 9, độ dài mật mã không 10 số có người phân quyền sử dụng biết Hệ thống hiển thị trực quan qua LCD 16x2, có đèn chiếu sáng điều kiện mơi trường tối Trong q trình học tập chúng em có hội làm quen với vi điều khiển qua mơn học lớp tìm hiểu thêm thông qua tài liệu sách báo internet, em nhận thấy: “Ứng dụng vi điều khiển vào sống điều thú vị trình sáng tạo” Trong báo cáo mơn thiết kế mạch điện sử dụng máy tính này,chúng em chọn đề tài: “Thiết bị khóa số điện tử”
HỌC VIỆN KỸ THUẬT MẬT MÃ KHOA ĐIỆN TỬ - VIỄN THƠNG Báo cáo mơn: THIẾT KẾ MẠCH SỬ DỤNG MÁY TÍNH Đề tài: Mạch khóa số điện tử sử dụng vi điều khiển 8051 Giảng viên hướng dẫn: Lại Hồng Nhung Sinh viên thực hiện: Vũ Thị Nguyệt – DT030232 Nguyễn Công Tùng – DT030247 Hà Nội, 2022 Mục lục Lời nói đầu CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG KHÓA SỐ ĐIỆN TỬ .4 1.1 Sơ đồ khối chức khối .4 1.2 Nguyên lý hoạt động CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Tổng quan vi điều khiển 8051 2.2 Tổng quan LCD 12 2.2.1 Cấu tạo .12 2.2.2 Chức chân 13 2.3 Tổng quan bàn phím 18 CHƯƠNG 3: THIẾT KẾ MẠCH VÀ THI CÔNG 19 3.1 Lưu đồ thuật toán .19 3.2 Mạch mô .20 3.4 Mạch in 23 3.5 Mạch 3D 24 3.6 Code 25 3.7 Kết luận 33 Lời nhận xét thầy cô: 34 Nhó m: 10 Page Lời nói đầu Ngành công nghệ kỹ thuật không ngừng phát triển, việc ứng dụng vi điều khiển ngày sử dụng rộng rãi lĩnh vực dân dụng công nghiệp, thiết bị điện tử phần gắn với sống người xã hội đại, hệ thống kiểm soát bảo vệ an ninh xu đó, phần lớn khóa sử dụng chủ yếu khóa khí, cơng việc có bảo mật , giám sát an ninh giới hạn người vào, việc ứng dụng khóa điện tử vào quan, nhà máy phương án có hiệu cao Ở chúng em xin giới thiệu đề tài khóa điện tử với số yêu cầu thiết bị khóa thơng dụng: - Tính an tồn: phải có chức bảo mật cao - Dễ sử dụng - Hệ thống vận hành ổn định, tuổi thọ cao Trên sở đó, chúng em đưa phương án thiết kế khóa điều khiển với chức sau: Hệ thống gồm chuỗi mã số từ đến 9, độ dài mật mã không 10 số có người phân quyền sử dụng biết Hệ thống hiển thị trực quan qua LCD 16x2, có đèn chiếu sáng điều kiện mơi trường tối Trong q trình học tập chúng em có hội làm quen với vi điều khiển qua mơn học lớp tìm hiểu thêm thông qua tài liệu sách báo internet, em nhận thấy: “Ứng dụng vi điều khiển vào sống điều thú vị trình sáng tạo” Trong báo cáo mơn thiết kế mạch điện sử dụng máy tính này,chúng em chọn đề tài: “Thiết bị khóa số điện tử” Sau thời gian học tập rèn luyện, với bảo tận tình giáo Lại Hồng Nhung trợ giúp anh chị khóa trên, bạn lớp tài liệu có liên quan, chúng em hoàn thành xong đề tài Báo cáo hoàn thành xong, khơng thể tránh nhiều thiếu sót mong quý thầy cô giáo thông cảm bảo thêm để đề tài ứng dụng rộng rãi thực tế Em xin chân thành cảm ơn thầy cơ! Nhó m: 10 Page CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG KHÓA SỐ ĐIỆN TỬ 1.1 Sơ đồ khối chức khối KHỐI NGUỒN DC KHỐI XỬ LÝ TRUNG TÂM KHỐI HIỂN THỊ LCD MẠCH ĐIỀU KHIỂN ĐỘNG CƠ KHĨA VÀ MỞ CỬA BÀN PHÍM Hình 1: Sơ đồ khối Khối xử lý trung tâm Chức năng: Đóng vai trị đầu não hệ thống, tiếp nhận tín hiệu từ bàn phím so sánh mã đưa thông tin hiển thị LCD thông báo cho người dùng Từ đưa tín hiệu điều khiển đến cho khối mạch điều khiển động Sử dụng chip: AT89C51 Bàn phím Bàn phím gồm nút Mỗi nút phận đóng mở khí Các mã bàn phím tạo tạo trực tiếp phép quét hàng quét cột Bàn phím gồm 16 phím xắp xếp theo kiểu 4x4( với cột dòng) Thực chức nhập liệu đưa đến vi điều khiển bao gồm thao tác nhập mật khẩu, thay đổi mật khẩu, mở cửa, khóa cửa Khối hiển thị Dùng LCD 16x2 có chức để giao tiếp người dùng với vi điều khiển Nhó m: 10 Page Ưu điểm: - Hiển thị rõ ràng có kèm theo dẫn - Thay đổi nội dung linh hoạt Xử lý lập trình đơn giản LED7 ma trận điểm Nhược điểm: Giá thành đắt Khối nguồn Chức năng: cung cấp nguồn hoạt động cho hệ thống vi điều khiển Khối mạch điều khiển động đóng ,mở cửa Chức năng: Đóng mở cửa có tín tương ứng từ xử lý trung tâm Mạch sử dụng mạch cầu H để điều khiển động sử dụng động DC 1.2 Nguyên lý hoạt động Nhập mật mã đưa tới khối giao tiếp hiển thị thông tin tới người dùng Rồi khối điều khiển gửi tín hiệu tới thiết bị chấp hành đóng/ngắt điều khiển cho đóng mở mật mã đưa thông báo có mật sai, Ban đầu: o Trên hình LCD hiển thị “ KHOA SO DIEN TU DT3 HVKTMM”,“NHAP MAT KHAU” Nhập mật khẩu: o LCD hiển thị nhập mật khẩu, người sử dụng nhập mã thông qua bàn phím, nhập LCD hiển thị “ CHINH XAC, MO CUA SAU 5S”, nhập sai LCD hiển thị: “ NHAP SAI MAT KHAU, K MO DUOC CUA” Nhó m: 10 Page CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Tổng quan vi điều khiển 8051 Hình 2: Sơ đồ khối vi điều khiển Kiến trúc vi xử lý điều khiển 8051 IC vi điều khiển 8051/8031 thuộc họ MCS51 có đặt điểm sau : - kbyte ROM (được lập trình nhà sản xuất có 8051) - 128 byte RAM - port I/0 bit - Hai định thời 16 bits - Giao tiếp nối tiếp - 64KB không gian nhớ chương trình ngồi - 64 KB khơng gian nhớ liệu ngồi - Bộ xử lí luận lí (thao tác bit đơn) - 210 bit địa hóa - Bộ nhân / chia 4μs Nhó m: 10 Page Hình 3: Sơ đồ cấu tạo 89C51 Phần vi điều khiển 8051 xử lí trung tâm (CPU: central processing unit ) bao gồm : - Thanh ghi tích lũy A - Thanh ghi tích lũy phụ B, dùng cho phép nhân phép chia - Đơn vị logic học (ALU : Arithmetic Logical Unit ) - Từ trạng thái chương trình (PSW : Prorgam Status Word) - Bốn băng ghi - Con trỏ ngăn xếp - Ngồi cịn có nhớ chương trình, giải mã lệnh, điều khiển thời gian logic EA\ RST\ PSEN\ ALE\ P0\ P1\ P2\ P3 Nhó m: 10 Page - Bộ nhớ liệu (RAM) tồn độc lập so với nhớ chương trình Họ vi điều khiển 8051 có nhớ liệu tích hợp chip nhỏ 128byte mở rộng với nhớ liệu ngồi lên tới 64 kByte Hình Sơ đồ chân 8051 Vi điều khiển 8051 có 32 40 chân có chức cổng I/O, đoa 24 chân sử dụng với hai mục đích Nghĩa ngồi chức cổng I/O, chân có cơng dụng kép đường điều khiển Bus địa hay Bus liệu chân hoạt động cách độc lập để giao tiếp với thiết đơn bit công tắc, LED, transistor… ❖ Port 0: - Port (P0.0 – P0.7) có số chân từ 32 – 39 - Port có hai chức năng: • Port xuất nhập liệu (P0.0 - P0.7) −> không sử dụng nhớ ngồi • Bus địa byte thấp bus liệu đa hợp (AD0 – AD7) −> có sử dụng nhớ ngồi Lưu ý: Khi Port đóng vai trị port xuất nhập liệu phải sử dụng điện trở kéo lên bên - Ở chế độ mặc định (khi reset) chân Port (P0.0 - P0.7) cấu hình port xuất liệu Muốn chân Port làm port nhập liệu cần phải lập Nhó m: 10 Page trình lại, cách ghi mức logic cao (mức 1) đến tất bit port truớc bắt đầu nhập liệu từ port (vấn đề trình bày phần kế tiếp) - Khi lập trình cho ROM chip Port đóng vai trò ngõ vào liệu (D0 – D7) ❖ Port 1: port I/O chuyên dụng chân 1-8 MC8051 Chúng sử dụng với múc đích giao tiếp với thiết bị cần thiết ❖ Port 2: - Port (P2.0 – P2.7) có số chân từ 21 – 28 - Port có hai chức năng: • Port xuất nhập liệu (P2.0 – P2.7) −>không sử dụng nhớ ngồi • Bus địa byte cao (A8 – A15) ,Có sử dụng nhớ ngồi - Ở chế độ mặc định (khi reset) chân Port (P2.0 – P2.7) cấu hình port xuất liệu Muốn chân Port làm port nhập liệu cần phải lập trình lại, cách ghi mức logic cao (mức 1) đến tất bit port truớc bắt đầu nhập liệu từ port (vấn đề trình bày phần kế tiếp) - Khi lập trình cho ROM chip Port đóng vai trị ngõ vào địa byte cao (A8 – A11) tín hiệu điều khiển ❖ Port 3: - Port (P3.0 – P3.7) có số chân từ 10 – 17 - Port có hai chức năng: • Port xuất nhập liệu (P3.0 – P3.7) −> không sử dụng nhớ chức đặc biệt.Các chức đặc biệt Port ghi bảng sau: Bit Nhó m: 10 Tên Chức Page ❖ P3.0 RXD Dữ liệu nhận cho Port nối tiếp P3.1 TXD Dữ liệu truyền cho Port nối tiếp P3.2 INT0 Ngắt bên P3.3 INT1 Ngắt P3.4 TO Ngõ vào Timer/counter0 P3.5 T1 Ngõ vào Timer/counter1 P3.6 /WR Xung ghi nhớ liệu P3.7 /RD Xung đọc nhớ liệu Chân (Program Store Enable ) : 8051 có tín hiệu điều khiển PSEN tín hiệu chân 29 Nó tín hiệu điều khiển phép truy xuất nhớ chương trình mở rộng thường nối đến chân OE (Output Enable) EPROM phép đọc byte mã lệnh chương trình Tín hiệu PSEN mức thấp suốt phạm vi trình lệnh.PSEN mức thấp thời gian lấy lệnh Các mã nhị phân chương trình đọc từ EPROM qua bus chốt vào ghi lệnh 8051 để giải mã lệnh Khi thi hành chương trình ROM nội PSEN mức cao ❖ Chân ALE (Address Latch Enable ) : ALE tín hiệu để chốt địa vào ghi bên đầu chu kỳ nhớ Sau đó, đường Port dùng để xuất nhập liệu sau chu kỳ chu kỳ nhớ.Các xung tín hiệu ALE có tốc độ 1/6 lần tần số dao động chip dùng nguồn xung nhịp cho hệ thống Nếu xung 8051 12MHz ALE có tần số 2MHz Chân làm ngõ vào cho xung lập trình cho EPROM 8051 ❖ Chân (External Access) : Tín hiệu vào EA chân 31 thường nối lên mức cao (+5V) mức thấp (GND) Nhó m: 10 Page 10 3.2 Mạch mô h4 h3 h2 h1 U2 VCC C7 R2 10µF 10µΩ C5 1µF C6 X1 VCC P0B0AD0 P0B1AD1 P0B2AD2 P0B3AD3 P0B4AD4 P0B5AD5 P0B6AD6 P0B7AD7 EAVPP ALEPROG PSEN P2B7A15 P2B6A14 P2B5A13 P2B4A12 P2B3A11 P2B2A10 P2B1A9 P2B0A8 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 D7 D6 D5 D4 D3 D2 D1 D0 5.0V U1 P1B0T2 P1B1T2EX P1B2 P1B3 P1B4 P1B5MOSI P1B6MISO P1B7SCK RST P3B0RXD P3B1TXD P3B2INT0 P3B3INT1 P3B4T0 P3B5T1 P3B6WR P3B7RD XTAL2 XTAL1 GND E RS RW 5.0V 10 11 12 13 14 15 16 17 18 19 20 VCC CV GND c4 c3 c2 c1 VDD R1 3kΩ VCC 5.0V 8051 R3 220Ω 1µF HC-49/U_15MHz led K1 c4 c3 c2 c1 h4 h3 h2 h1 LED1 + - * C = / NUMERIC_KEYPAD_4X4 Khối trung tâm Khối xử lý trung tâm với 8051 có nhiệm vụ nhận biết tín hiệu thu từ bàn phím Sau xử lý tín hiệu xuất tín hiệu điều khiển thích hợp để điều khiển hệ thống theo chương trình lập sẵn Nhó m: 10 Page 20 Địa chức kết nối hệ thống xử lý trung tâm sau: P3.0- RS P3.1-RW P34 - Tín hiệu đóng,mở cửa P2 nối với D0-D7 LCD P1.0- Hàng P1.1- Hàng P1.2- Hàng P1.3- Hàng P1.4- Cột P1.5- Cột P1.6- Cột P1.7- Cột Bộ dao động thạch anh có tác dụng tạo xung nhịp với tần số 12MHz cho VĐK hoạt động Hai đầu nối vào 2chân XTAL1 XTAL2 VĐK Bộ RESET có tác dụng đưa vi điều khiển trạng thái ban đầu Khi nút Reset ấn điện áp +5V từ nguồn nối vào chân Reset vi điều khiển chạy thẳng xuống đất lúc điện áp chân vi điều khiển thay đổi đột ngột 0, VĐK nhận biết thay đổi khởi động lại trạng thái ban đầu cho hệ thống Khối hiển thị LCD Nhó m: 10 Page 21 LCD sử dụng 16x2 với dòng hiển thị 4x4 Các chân nối: P3.0- RS P3.1-RW P34- Tín hiệu đóng, mở P2 nối với D0-D7 LCD Bàn phím K1 c4 c3 c2 c1 h4 h3 h2 h1 + - * C = / NUMERIC_KEYPAD_4X4 Người dùng nhập mã thơng qua bàn phím bàn phím thiết bị đầu vào kết nối với vi điều khiển, cung cấp tín hiệu cho xử lý trung tâm, sau phân tích tính hiệu so sánh cho tín hiệu điều khiển tương ứng Bàn phím dùng phương pháp quét phím theo hàng cột Dùng bàn phím với cột hàng Xắp xếp hàng cột bảng: Cột Cột Cột Cột Hàng + Hàng - Hàng 3 * Hàng C = / Được ghép nối với vi điều khiển Port P1 Với : Nhó m: 10 Page 22 P1.0- Hàng P1.4- Cột P1.1- Hàng P1.5- Cột P1.2- Hàng P1.6- Cột P1.3- Hàng P1.7- Cột 3.4 Mạch in Nhó m: 10 Page 23 3.5 Mạch 3D Mặt trước Mặt sau Nhó m: 10 Page 24 3.6 Code #include #include /********Khai bao chan giao tiep LCD************/ #define RS P30 #define E P31 #define lcd_data P2 // khai bao chan giao tiep phim #define row0 P10 #define row1 P11 #define row2 P12 #define row3 P13 #define col0 P14 //hang //cot #define col1 P15 #define col2 P16 #define col3 P17 #define led P34 #define bat #define tat void delay_ms(unsigned int t); void mocua(); void dongcua(); void mocua() { int sv; Nhó m: 10 Page 25 for(sv=0;sv