Luận văn Hệ thống điểm danh bằng vân tay ứng dụng vi điều khiển ARM (Phần 1)
Bạn đang xem 20 trang mẫu của tài liệu "Luận văn Hệ thống điểm danh bằng vân tay ứng dụng vi điều khiển ARM (Phần 1)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
luan_van_he_thong_diem_danh_bang_van_tay_ung_dung_vi_dieu_kh.pdf
Nội dung text: Luận văn Hệ thống điểm danh bằng vân tay ứng dụng vi điều khiển ARM (Phần 1)
- BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA ĐIỆN - ĐIỆN TỬ ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ - TRUYỀN THÔNG HỆ THỐNG ĐIỂM DANH BẰNG VÂN TAY ỨNG DỤNG VI ĐIỀU KHIỂN ARM GVHD: ThS. NGUYỄN ĐÌNH PHÚ SVTH: TRẦN ANH ĐỀ MSSV: 12141058 SVTH: TRẦN SƠN LÀNH MSSV: 12141574 S K L 0 0 4 3 4 7 Tp. Hồ Chí Minh, tháng 7/2016
- TRƯỜNG ĐH. SƯ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TP. HỒ CHÍ MINH ĐỘC LẬP - TỰ DO - HẠNH PHÚC KHOA ĐIỆN-ĐIỆN TỬ Tp. HCM, ngày 08 tháng 07 năm 2016 NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: Trần Anh Đề MSSV: 12141058 Trần Sơn Lành MSSV: 12141574 Chuyên ngành: Điện Tử Công Nghiệp Mã ngành: D510302 Hệ đào tạo: Đại học chính quy Mã hệ: 1 Khóa: 2012 Lớp: 12141DT2A I. TÊN ĐỀ TÀI: “HỆ THỐNG ĐIỂM DANH BẰNG VÂN TAY ỨNG DỤNG VI ĐIỀU KHIỂN ARM” II. NHIỆM VỤ 1. Các số liệu ban đầu: Mô hình xử lý dựa trên files Excel mà người dùng đã định dạng theo 1 mẫu sẵn được lưu trữ trong thẻ nhớ SD. 2. Nội dung thực hiện: Thiết kế mô hình máy điểm danh sử dụng vi điều khiển ARM STM32F103VET6 giao tiếp với: - SD card thông qua chuẩn SPI. - Cảm biến vân tay R305 qua chuẩn USART. - Màn hình TFT 320x240. Qua chuẩn truyền dữ liệu song song (GLCD), SPI (ADS7843). III. NGÀY GIAO NHIỆM VỤ: 23/02/2016 IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 06/07/2016 V. HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: Ths. Nguyễn Đình Phú CÁN BỘ HƯỚNG DẪN BM. ĐIỆN TỬ CÔNG NGHIỆP GVC.THS. NGUYỄN ĐÌNH PHÚ i
- TRƯỜNG ĐẠI HỌC SPKT TPHCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Khoa Điện - Điện Tử Độc lập - Tự do - Hạnh phúc Bộ Môn Điện Tử Công Nghiệp Tp. Hồ Chí Minh, ngày 03 tháng 04 năm 2016 LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên 1: Trần Anh Đề Lớp:12141DT2A MSSV:12141058 Họ tên sinh viên 2: Trần Sơn Lành Lớp:12141DT2A MSSV:12141574 Tên đề tài: Hệ Thống Điểm Danh Bằng Vân Tay Ứng Dụng Vi Điều Khiển ARM. Tuần/ngày Nội dung Xác nhận GVHD Tuần 04 Tìm hiểu về KIT VĐK STM32F103VET6. 4/3/2016 Tuần 06 Tìm hiểu về cảm biến vân tay R305. 18/3/2016 Tuần 08 Giao tiếp giữa R305 với VĐK ARM. 01/04/2016 Tuần 10 Giao tiếp (đọc ghi dữ liệu) giữa VĐK ARM và 15/4/2016 Sdcard để xây dựng CSDL cho hệ thống. Tuần 12 Trao đổi dữ liệu giữa R305 và SDcard thông qua 29/04/2016 VĐK ARM Tuần 14 Xây dựng giao diện sử dụng cho hệ thống. 13/05/2016 Tuần 16 Lắp ráp các khối chức năng vào mô hình. 27/05/2016 Tuần 18 Chạy thử nghiệm hệ thống. 10/06/2016 Tuần 20 Cân chỉnh hệ thống. 24/06/2016 GV HƯỚNG DẪN (Ký và ghi rõ họ và tên) GVC.THS. NGUYỄN ĐÌNH PHÚ ii
- LỜI CAM ĐOAN Nhóm chúng tôi xin cam đoan: Tất cả các số liệu và dữ liệu ghi chép trong luận văn này đều do nhóm chúng tôi tìm hiểu không có sự sao chép ở bất kì tài liệu có sẵn nào, nếu có chúng tôi sẽ trích dẫn nguồn đầy đủ. Tp Hồ Chí Minh, ngày 08 tháng 07 năm 2016 Nhóm thực hiện đề tài Trần Anh Đề Trần Sơn Lành iii
- LỜI CẢM ƠN Nhóm xin chân thành gửi lời cảm ơn đến quý Thầy Cô khoa Điện-Điện tử, và nhất là quý Thầy Cô thuộc bộ môn Điện Tử Công Nghiệp đã tận tình chỉ dạy những kiến thức cơ bản để nhóm có thể tiến hành và hoàn tất đồ án này. Đặc biệt chúng em gửi lời cảm ơn sâu sắc nhất đến Thầy Nguyễn Đình Phú. Thầy đã trực tiếp giảng dạy và tận tình hướng dẫn đồng thời tạo điều kiện tốt nhất cho nhóm trong thời gian thực hiện đồ án. Đồng cảm ơn đến các anh chị, các bạn cùng khóa đã cùng nhau san sẻ giúp đỡ và hợp tác cùng nhau trong quá trình thực hiện để đồ án, để đồ án có thể hoàn thành nhanh nhất và đúng thời gian quy định. Mặc dù trải qua và giải quyết những khó khăn và thử thách nhưng do kiến thức còn hạn chế nên trong đồ án này chúng em còn nhiều thiếu sót về nội dung và hình thức. Nhóm chúng em hy vọng quý Thầy Cô thông cảm và tận tình đóng góp ý kiến quý báu để chúng em có thể tiến hành cải tiến những mô hình về sau sao cho toàn diện nhất. Một lần nữa chúng em xin chân thành cảm ơn! Nhóm thực hiện đề tài Trần Anh Đề Trần Sơn Lành iv
- MỤC LỤC NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP i LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP ii LỜI CAM ĐOAN iii LỜI CẢM ƠN iv MỤC LỤC v LIỆT KÊ HÌNH viii LIỆT KÊ BẢNG x TÓM TẮT xi Chương 1. TỔNG QUAN 1 1.1 ĐẶT VẤN ĐỀ 1 1.2 MỤC TIÊU NGHIÊN CỨU 1 1.3 NỘI DUNG NGHIÊN CỨU 2 1.4 GIỚI HẠN 2 1.5 BỐ CỤC 2 Chương 2. CƠ SỞ LÝ THUYẾT 4 2.1 GIỚI THIỆU VỀ VI XỬ LÝ ARM 4 2.1.1 Lịch sử phát triển của ARM 4 2.1.2 Kiến trúc của ARM 5 2.1.3 Giới thiệu ARM Cortex 6 2.1.4 Giới thiệu ARM Cortex M3 7 2.1.5 Giới thiệu dòng chip STM32 8 2.1.6 Giới thiệu về chip STM32F103XXX 8 2.1.7 Kiến trúc chip ARM STM32F103XXX 9 2.1.8 Cấp xung Clock cho STM32 10 2.1.9 Cấu hình BOOT cho STM32 13 2.1.10 Các chuẩn giao tiếp 14 2.2 CÔNG NGHỆ SINH TRẮC HỌC VÀ CẢM BIẾN VÂN TAY 19 2.2.1 Giới thiệu công nghệ sinh trắc học 19 2.2.2 Lịch sử công nghệ sinh trắc học 20 2.2.3 Ứng dụng công nghệ sinh trắc học 21 2.3 CẢM BIẾN VÂN TAY 25 2.3.1 Giới thiệu cảm biến vân tay 25 2.3.2 Giao tiếp phần cứng 26 2.3.3 Tài nguyên hệ thống trong cảm biến vân tay 27 2.3.4 Giao thức truyền thông giao tiếp 30 v
- 2.3.5 Giới thiệu các tập tin giao tiếp giữa Module và MCU 32 2.4 SD Card 35 2.4.1 Sơ lược về SD Card 35 2.4.2 Cấu trúc thẻ nhớ SD 36 2.4.3 Cấu trúc file ghi trong thẻ nhớ SD 37 2.5 PL2303 CHUYỂN ĐỔI CHUẨN USB SANG CHUẨN NỐI TIẾP 42 2.5.1 Giới thiệu 42 2.5.2 Đặc điểm 42 2.5.3 Sơ đồ khối 42 2.5.4 Mô tả chân linh kiện 43 2.5.5 Thông số kỹ thuật 45 2.5.6 Định dạng dữ liệu, tốc độ xung clock và tốc độ truyền 45 2.5.7 Mở rộng bộ nhớ và cấu hình thiết bị 45 2.6 MÀN HÌNH TFT LCD TOUCH SCREEN 46 2.6.1 Giới thiệu 46 2.6.2 Giao tiếp 47 2.6.3 Khảo sát các vi mạch điều khiển màn hình Touch 48 2.7 EEPROM 51 2.7.1 Giới thiệu 51 2.7.2 Mô tả chi tiết 51 Chương 3. TÍNH TOÁN VÀ THIẾT KẾ 54 3.1 GIỚI THIỆU 54 3.2 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG 54 3.2.1 Sơ đồ khối 54 3.2.2 Tính toán và thiết kế mạch 55 3.2.3 Khối giao tiếp máy tính 61 3.2.4 Sơ đồ nguyên lý toàn mạch 62 Chương 4. THI CÔNG HỆ THỐNG 63 4.1 THI CÔNG HỆ THỐNG 63 4.1.1 Thi công mạch in 63 4.1.2 Lắp ráp và kiểm tra 66 4.2 ĐÓNG GÓI THI CÔNG MÔ HÌNH 68 4.3 LẬP TRÌNH HỆ THỐNG 69 4.3.1 Lưu đồ giải thuật 69 4.3.2 Phần mềm lập trình 79 4.4 TÀI LIỆU HƯỚNG DẪN SỬ DỤNG VÀ THAO TÁC 87 4.4.1 Tài liệu hướng dẫn sử dụng 87 vi
- 4.4.2 Quy trình thao tác 88 Chương 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ 90 5.1 KẾT QUẢ 90 5.2 NHẬN XÉT – ĐÁNH GIÁ 96 5.3 GIỚI HẠN 96 Chương 6. KẾT LUẬN - HƯỚNG PHÁT TRIỂN 97 6.1 KẾT LUẬN 97 6.2 HƯỚNG PHÁT TRIỂN 97 TÀI LIỆU THAM KHẢO 98 vii
- LIỆT KÊ HÌNH Hình 2.1. Một số ứng dụng của ARM 4 Hình 2.2. Kiến trúc ARM 6 Hình 2.3. Sơ đồ khối ARM Cortex-M3 8 Hình 2.4. Mô tả chân và hình ảnh thực tế của STM32F103VET6 9 Hình 2.5. Kiến trúc của ARM STM32F103XXX 10 Hình 2.6. Cách kết nối nguồn xung 8Mhz cho HSE 11 Hình 2.7. Sơ đồ cây xung Clock 12 Hình 2.8. Kết nối nguồn xung cho RTC 13 Hình 2.9. Cấu trúc SPI trong ARM 15 Hình 2.10. Giao thức Master – Slave trong giao tiếp SPI 15 Hình 2.11 Ghép nối một thiết bị 16 Hình 2.12. Ghép nối nhiều thiết bị 16 Hình 2.13. Cấu trúc USART trong ARM 17 Hình 2.14. Hỗ trợ giao tiếp ở chế độ hafl-duplex dựa trên một đường truyền 18 Hình 2.15. Giao tiếp smartcard và hồng ngoại 18 Hình 2.16. Hỗ trợ giao tiếp đồng bộ SPI 19 Hình 2.17. Giao tiếp I2C 19 Hình 2.18. Ứng dụng của công nghệ sinh trắc học 20 Hình 2.19. Sinh trắc học vân tay 22 Hình 2.20. Sinh trắc học bàn tay 22 Hình 2.21. Sinh trắc học khuôn mặt 23 Hình 2.22. Sinh trắc học dựa vào hành vi của người dùng 23 Hình 2.23. Dựa vào nhịp tim để thanh toán các hóa đơn 24 Hình 2.24. Sinh trắc học mắt. Nhận diện võng mạc 24 Hình 2.25. Cảm biến vân tay R305 25 Hình 2.26. Các ngõ ra giao tiếp của cảm biến R305 26 Hình 2.27. Khung dữ liệu truyền đi của cảm biến R305 27 Hình 2.28. Cấu trúc thẻ nhớ SD 36 Hình 2.29. Sơ đồ khối của PL2303 43 Hình 2.30. Sơ đồ chân linh kiện PL2303 43 Hình 2.31. Mô tả kích thước của GLCD 46 Hình 2.32. Mô tả chân của ADS7843 48 Hình 2.33. Sơ đồ khối IC 7843 50 Hình 2.34. Mô tả chân của EEPROM 51 Hình 2.35. Lưu đồ khối trong EEPROM 24C02 52 Hình 2.36. Trạng thái START và STOP khi truyền nhận dữ liệu I2C 53 Hình 3.1. Sơ đồ khối hệ thống 54 Hình 3.2. Sơ đồ kết nối với LCD Touch Screen 55 Hình 3.3. Sơ đồ kết nối với SD Card 56 Hình 3.4. Sơ đồ kết nối khối xử lý trung tâm STM32F103VET6 58 Hình 3.5. Sơ đồ kết nối khối EEPROM 59 Hình 3.6. Sơ đồ kết nối với các module: cảm biến vân tay, buzzer 60 Hình 3.7. Khối nguồn của toàn bộ hệ thống 61 Hình 3.8. Mạch PL2303 chuyển đổi USB sang UART 61 Hình 3.9. Sơ đồ nguyên lý toàn mạch 62 Hình 4.1. Mạch in lớp Top 63 viii
- Hình 4.2. Mạch in lớp Bottom 63 Hình 4.3. Sơ đồ bố trí linh kiện mặt trên 64 Hình 4.4. Sơ đồ bố trí linh kiện mặt dưới 64 Hình 4.5. Lắp hoàn tất linh kiện 67 Hình 4.6. Mặt trước mô hình máy điểm danh 68 Hình 4.7. Mặt dưới mô hình máy điểm danh 68 Hình 4.8. Lưu đồ chương trình chính 69 Hình 4.9. Lưu đồ chương trình Menu chính 70 Hình 4.10. Chương trình cài đặt trong máy 71 Hình 4.11. Lưu đồ lấy mẫu vân tay 72 Hình 4.12. Lưu đồ xáo Admin 73 Hình 4.13. Lưu đồ thêm SV và thêm Admin cho hệ thống 74 Hình 4.14. Lưu đồ chỉnh thời gian hệ thống 74 Hình 4.15. Lưu đồ và chi tiết lần đầu sử dụng máy 75 Hình 4.16. Lưu đồ và giải thích quá trình điểm danh tự động 76 Hình 4.17. Lưu đồ và giải thích quá trình điểm danh thủ công 77 Hình 4.18. Chương trình giao tiếp máy tính 78 Hình 4.19. Chạy file setup MDK520 79 Hình 4.20. Giao diện cài đặt phần mềm MDK 520 79 Hình 4.21. Giao diện cài đặt MDK520 80 Hình 4.22. Chọn nơi lưu file cài đặt MDK 80 Hình 4.23. Quá trình cài đặt đang được thực hiện 81 Hình 4.24. Quá trình cài đặt kết thúc 81 Hình 4.25. Bắt đầu với Keli C 82 Hình 4.26. Tạo 1 Project 82 Hình 4.27. Tạo 1 file tên của Project 83 Hình 4.28. Chọn chip muốn viết chương trình 83 Hình 4.29. Tạo file .c để viết chương trình 84 Hình 4.30. Add thêm file .c trong thư mục gốc để tiến hành biên dịch 84 Hình 4.31. Biên dịch và kiểm tra lỗi 85 Hình 4.32. Chọn mạch nạp 85 Hình 4.33. Ngôn ngữ lập trình C# 86 Hình 4.34. Giao diện phần mềm Visual Studio 87 Hình 4.35. Quy trình thao tác của mô hình 89 Hình 5.1. Mô hình máy điểm danh hoàn thành 90 Hình 5.2. Màn hình điểm danh 91 Hình 5.3. File quản lý các lớp học trong 1 tuần 91 Hình 5.4. File quản lý 6 sinh viên trong 15 tuần 92 Hình 5.5. File riêng quản lý việc chuyên cần của một sinh viên 93 Hình 5.6. Giao diện phần mềm được xây dựng bằng C# 93 Hình 5.7. Chế độ Setup file 94 Hình 5.8. Chế độ Load File 95 ix
- LIỆT KÊ BẢNG Bảng 2.1. Các dòng phát triển của ARM 5 Bảng 2.2. Các chế độ BOOT trong STM32 13 Bảng 2.3. Kết nối phần cứng của R305 26 Bảng 2.4. Thanh ghi trạng thái của Module. 29 Bảng 2.5. Định dạng gói dữ liệu truyền và nhận của cảm biến vân tay. 30 Bảng 2.6. Ý nghĩa của gói dữ liệu truyền của cảm biến vân tay.[4] 30 Bảng 2.7. Mã xác nhận gửi về từng Module khi tiến hành giao tiếp. 31 Bảng 2.8. 23 mã Introduction code của các gói dữ liệu.[4] 32 Bảng 2.9. Các gói dữ liệu tương ưng với từng mã Introduction Code. 33 Bảng 2.10. Định dạng gói trả về từ cảm biến về MCU. 34 Bảng 2.11. Các mã Confirmation code mở rộng. 34 Bảng 2.12. Mô tả chức năng các chân của SD card. 36 Bảng 2.13. Các thanh ghi trong thẻ nhớ SD. 37 Bảng 2.14. Cấu trúc của một ổ đĩa. 37 Bảng 2.15. MBR trong SD card 38 Bảng 2.16. Thông tin của một phân vùng. 38 Bảng 2.17. Cấu trúc chung của mỗi phân vùng. 39 Bảng 2.18. Thông tin chứ trong 1 Boot secsor. 39 Bảng 2.19. Giá trị của các mục nhập trong FAT. 41 Bảng 2.20. Cấu trúc của Directory Table. 41 Bảng 2.21. Mô tả chân cho chip PL2303. 44 Bảng 2.22. Thông số điện áp, dòng điện và xung clock dùng cho PL2303. 45 Bảng 2.23. Mã hóa dữ liệu. 45 Bảng 2.24. Các thông số chính của màn hình LCD. 47 Bảng 2.25. Mô tả chức năng các chân của GLCD. 47 Bảng 2.26. Chức năng của ADS7843. 49 Bảng 2.27. Chức năng các chân của EEPROM 24C02 52 Bảng 4.1. Danh sách linh kiện. 65 x
- TÓM TẮT Đề tài sử dụng công nghệ sinh trắc học vân tay để tiến hành điểm danh sinh viên mỗi buổi học. Việc quản lý sinh viên do giáo viên phụ trách lớp đảm nhiệm. Mỗi lớp sẽ được quản lý trên 1 file excel, và mỗi học sinh đều có một file excel riêng để kiểm tra chính xác khi cần. Tất cả các thông tin về lớp và thời gian vào ra của các sinh viên đều được lưu trữ trong thẻ nhớ SD. Hệ thống sẽ tự động thống kê để kể giáo viên phụ trách biết chính xác tình hình lớp học. Hệ thống sẽ tự động mở máy để điểm danh và tắt máy không cho điểm danh nữa khi đến một thời điểm đã được định sẵn trong máy. Tất cả các thao tác này đều do chip STM32F103VET6 đảm nhận và thực hiện thông qua các chuẩn giao tiếp. xi
- CHƯƠNG 1. TỔNG QUAN Chương 1. TỔNG QUAN 1.1 ĐẶT VẤN ĐỀ Công nghệ bán dẫn ngày càng phát triển kéo theo đó là hàng loạt chip xử lý được các công ty phát triển. Song song với sự phát triển của chip xử lý thì công nghệ cảm biến cũng tạo ra một cuộc cách mạng. Các cảm biến ra đời đảm nhiệm các chức năng thay cho con người trong các quy trình công nghiệp và dân dụng đòi hỏi sự chính xác, tốc độ và khả năng làm việc liên tục mà con người không làm được. Kết hợp vi xử lý và cảm biến không chỉ nhằm giám sát các quá trình công nghiệp mà song song đó còn dùng để theo dõi tình hình sức khỏe hoặc dùng để giám sát chính những người đã tạo ra chúng. Ứng dụng tiêu biểu nhất để giám sát người đó chính là máy chấm công hay là máy điểm danh. Vấn đề lớn nhất của máy chấm công từ trước đến nay là làm sao tạo ra được một thiết bị có khả năng nhận biết chính xác đối tượng mình cần quản lý, tránh sai sót hoặc gian lận. Giải pháp nghĩ đến đó chính là sử dụng công nghệ nhận biết riêng biệt của từng cá nhân để tiến hành kiểm soát, và công nghệ được nghĩ đến đầu tiên là công nghệ sinh trắc học để giải quyết vấn đề điểm danh. Vì mỗi người có mỗi đặc điểm sinh trắc học khác nhau. Việc ứng dụng máy điểm danh trong công nghiệp từ đó đã được ra đời và ứng dụng rộng rãi cho tới hiện nay nhưng việc ứng dụng trong trường lớp lại được bỏ trống. Ấp ủ từ những yêu cầu trên nhóm chúng đã quyết định chọn đề tài: “Hệ thống điểm danh bằng vân tay ứng dụng Vi điều khiển ARM” ứng dụng điểm danh trong lớp học. 1.2 MỤC TIÊU NGHIÊN CỨU Tìm hiểu về dòng chip STM32 cùng các ngoại vi giao tiếp, song song đó là tìm hiểu về cảm biến vân tay. Kết hợp cả hai thứ lại cùng với sự điều khiển từ màn hình LCD TOUCH nhằm tạo ra một thiết bị có khả năng điểm danh, ban đầu sẽ áp dụng thí điểm ở trong lớp học thực tập tại Trường Đại Học Sư Phạm Kỹ Thuật HCM để điểm danh sinh viên mỗi buổi, sau đó cải tiến để áp dụng cho toàn trường rồi xa hơn sẽ đưa ra thị trường để cạnh tranh. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 1
- CHƯƠNG 1. TỔNG QUAN 1.3 NỘI DUNG NGHIÊN CỨU NỘI DUNG 1: Tìm hiểu và nắm vững các giao tiếp với Kit STM32F103VET6. NỘI DUNG 2: Tìm hiểu và giao tiếp được với cảm biến vân tay R305 thông qua UART của chip STM32 NỘI DUNG 3: Thiết kế mô hình máy điểm danh. NỘI DUNG 4: Đánh giá kết quả thực hiện mô hình. NỘI DUNG 5: Cải tiến mô hình nhằm tạo ra sản phẩm thương mại. 1.4 GIỚI HẠN Sử dụng được 2 cảm biến vân tay R305 để tiến hành điểm danh. Giao tiếp giữa cảm biến vân tay R305 và chip STM32 thông qua USART. Kết hợp thẻ nhớ SD để mở rộng khả năng lưu trữ và xử lý thông tin của mô hình. Giao diện được xây dựng và xử lý trên màn hình cảm ứng TFT 3.2inch. Xử lý việc điểm danh bằng file Excel lưu sẵn trong thẻ nhớ. 1.5 BỐ CỤC Gồm có 6 chương: Chương 1: Tổng Quan. Chương 2: Cơ Sở Lý Thuyết. Chương 3: Tính Toán Và Thiết Kế. Chương 4: Thi Công Hệ Thống Máy Điểm Danh. Chương 5: Kết Quả_Nhận Xét_Đánh Giá. Chương 6: Kết Luận và Hướng Phát Triển Nội dung các chương: Chương 1: Tổng Quan Chương này trình bày vấn đề lý do tại sao chọn đề tài, mục đích nghiên cứu khi làm để tài này, đồng thời nêu giới hạn và bố cục của toàn bộ đề tài. Chương 2: Cơ Sở Lý Thuyết Chương này sẽ tìm hiểu về dòng vi xử lý ARM, lịch sử phát triển và sự đa dạng của vi xử lý dòng này, tìm hiểu về thẻ nhớ SD, thiết bị chuyển USB sang UART, màn hình BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 2
- CHƯƠNG 1. TỔNG QUAN LCD TFT, và các chuẩn giao tiếp, đồng thời tìm hiểu về công nghệ sinh trắc học nói chung và công nghệ sinh trắc học vân tay nói riêng. Chương 3: Tính Toán Và Thiết Kế Trình bày sơ đồ khối chức năng các khối, đồng thời thiết kế tính toán để thiết kế mạch điều khiển mô hình. Trình bày sơ đồ toàn mạch. Chương 4: Thi Công Hệ Thống Máy Điểm Danh Thi công hàn linh kiện lên mạch, lắp ráp kiểm tra toàn bộ mạch, đồng thời test bằng 1 chương trình cơ bản. Sau đó lắp ráp thành mô hình. Trình bày lưu đồ giải thuật đồng thời giải thích cách hoạt động của toàn bộ hệ thống. Chương 5: Kết Quả Nhận Xét và Đánh Giá Trình bày kết quả của của thiết kế mô hình và lập trình. Nhận xét đánh giá mức độ hoàn thiện của mô hình đồng thời nêu những giới hạn của mô hình. Chương 6: Kết Luận và Hướng Phát Triển Tổng kết kết quả của toàn bộ mô hình, đưa ra các hướng phát triển cho sản phẩm sau này. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 3
- CHƯƠNG 2. CƠ SỞ LÝ THUYẾT Chương 2. CƠ SỞ LÝ THUYẾT 2.1 GIỚI THIỆU VỀ VI XỬ LÝ ARM Cấu trúc ARM (Acorn RISC Machine) là một loại cấu trúc vi xử lý 32 bit kiểu RISC được sử dụng rộng rãi trong thiết kế nhúng. Do đặc điểm tiết kiệm năng lượng, các bộ CPU ARM chiếm được ưu thế trong các sản phẩm điện tử di động, mà các sản phẩm này việc tiêu tán công suất thấp là một mục tiêu thiết kế hàng đầu. Ngày nay ARM được ứng dụng rộng rãi trên mọi lĩnh vực của đời sống: Robot, máy tính, điện thoại, máy giặt, máy bay, xe hơi .[2] [Nguồn: ] Hình 2.1. Một số ứng dụng của ARM 2.1.1 Lịch sử phát triển của ARM Việc thiết kế ARM được bắt đầu từ năm 1983 trong một dự án phát triển của công ty máy tính Acorn. Nhóm thiết kế hoàn thành việc phát triển mẫu gọi là ARM1 vào năm 1985, và vào năm sau, nhóm hoàn thành sản phẩm “thực’’ gọi là ARM2 với thiết kế đơn giản chỉ gồm 30,000 transistor. ARM2 có tuyến dữ liệu 32 bit, không gian địa chỉ 26 bit tức cho phép quản lý đến 64 Mbyte địa chỉ và 16 thanh ghi 32 bit. Thế hệ sau, ARM3, được tạo ra với 4KB cache và có chức năng được cải thiện tốt hơn nữa. Vào những năm cuối thập niên 80, hãng máy tính Apple Computer và hãng VLSI Technology bắt đầu hợp tác với Acorn để phát triển các thế hệ lõi ARM mới. Kết quả sự BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 4
- CHƯƠNG 2. CƠ SỞ LÝ THUYẾT hợp tác này là ARM6. Mẫu đầu tiên được công bố vào năm 1992 và Apple đã sử dụng bộ vi xử lý ARM 610 dựa trên ARM6 làm cơ sở cho PDA hiệu Apple Newton. Vào năm 1994, Acorn dùng ARM 610 làm CPU trong các máy vi tính RiscPC của họ. Bảng 2.1. Các dòng phát triển của ARM Kiến trúc Số bit Tên lõi ARMv1 32/26 ARM1 ARMv2 32/26 ARM2, ARM3 ARMv3 32 ARM6, ARM7 ARMv4 32 ARM8 ARM v4T 32 ARM7TDMI, ARM9TDMI ARMv5 32 ARM7EJ, ARM9E, ARM10E ARMv6 32 ARM11 ARMv6-M 32 ARM-Cortex-M0, ARM-Cortex-M0+, ARM-Cortex-M1 ARMv7-M 32 ARM-Cortex-M3 ARMv7E-M 32 ARM-Cortex-M4 ARMv7-R 32 ARM-Cortex-R4, ARM-Cortex-R5, ARM-Cortex-R7 ARM-Cortex-A5, ARM-Cortex-A7, ARM-Cortex-A8, ARM- ARMv7-A 32 Cortex-A9, ARM-Cortex-A12, ARM-Cortex: A15 và A17 ARMv8A 64/32 ARM-Cortex-A53, ARM-Cortex-A57 [Nguồn: Tài liệu số (2)] Trải qua nhiều thế hệ nhưng lõi ARM gần như không thay đổi kích thước. ARM2 có 30,000 transistors trong khi ARM6 chỉ tăng lên đến 35,000. Ý tưởng của nhà sản xuất lõi ARM là sao cho người sử dụng có thể ghép lõi ARM với một số bộ phận tùy chọn nào đó để tạo ra một CPU hoàn chỉnh, một loại CPU mà có thể tạo ra trên những nhà máy sản xuất bán dẫn cũ và vẫn tiếp tục tạo ra sản phẩm với nhiều tính năng mà giá thành vẫn thấp.[2] 2.1.2 Kiến trúc của ARM BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 5
- CHƯƠNG 2. CƠ SỞ LÝ THUYẾT [Nguồn: ] Hình 2.2. Kiến trúc ARM 2.1.3 Giới thiệu ARM Cortex Như chúng ta đã thấy trong phần giới thiệu lịch sử phát triển các dòng ARM thì lõi Cortex là lõi nhúng kế thừa các ưu điểm từ các thế hệ lõi ARM11 về trước đó. Để phù hợp với nhu cầu sử dụng, ARM Cortex được chia làm 3 dòng: Cortex-A: Bộ xử lý dành cho hệ điều hành và các ứng dụng phức tạp. Hỗ trợ tập lệnh ARM, thumb, và thumb-2. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 6
- CHƯƠNG 2. CƠ SỞ LÝ THUYẾT Cortex-R: Bộ xử lý dành cho hệ thống đòi hỏi khắc khe về đáp ứng thời gian thực. Hỗ trợ tập lệnh ARM, thumb, và thumb-2. Cortex-M: Bộ xử lý dành cho dòng vi điều khiển, được thiết kế để tối ưu về giá thành. Hỗ trợ tập lệnh Thumb-2. Dòng ARM STM32 có lõi Cortex-M. Giá trị số nằm cuối tên của 1 dòng ARM (ví dụ ARM Cortex-M3) cho biết về mức độ hiệu suất tương đối của dòng đó. Theo đó dòng ARM mang số 0 sẽ có hiệu suất thấp nhất.[2] 2.1.4 Giới thiệu ARM Cortex M3 ARM Cortex-M3 được thiết kế đặc biệt để nâng cao hiệu suất hệ thống kết hợp với tiêu thụ năng lượng thấp. ARM Cortex-M3 được thiết kế trên nền kiến trúc mới do đó chi phí sản xuất đủ thấp để cạnh tranh với các dòng vi điều khiển 8 và 16 bit truyền thống. Sơ đồ khối của ARM Cortex-M3. Một số đặc điểm của ARM Cotex-M3 như sau: ARM Cortex – M3 được xây dựng dựa trên kiến trúc ARMv7-M 32 bit. Kiến trúc Harvard tách biệt Bus dữ liệu và lệnh. Đơn vị bảo vệ bộ nhớ (MPU-Memory Protection Unit): Hỗ trợ bảo vệ bộ nhớ thông qua việc phân quyền thực thi và truy xuất. Bộ vi xử lý Cortex-M3 hỗ trợ kiến trúc tập lệnh Thumb-2. Hỗ trợ kỹ thuật Bit Band giúp cho phép truy xuất dữ liệu theo bit đồng thời giảm thời gian truy xuất. Cho phép truy cập dữ liệu không xếp hàng (unaligned data accesses) đặc điểm này cho phép sử dụng hiệu quả SRAM nội. SysTick timer 24 bit hỗ trợ cho việc chạy hệ điều hành thời gian thực. Hỗ trợ lập trình và gỡ rối qua cổng JTAG truyền thống cũng như chuẩn 2 dây nhỏ gọn SWD (Serial Wire Debug). Khối quản lý vector ngắt lồng nhau (NVIC-Nested Vectored Interrupt Controller) cho phép rút ngắt thời gian đáp ứng yêu cầu ngắt. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 7
- CHƯƠNG 2. CƠ SỞ LÝ THUYẾT [Nguồn: ] Hình 2.3. Sơ đồ khối ARM Cortex-M3 2.1.5 Giới thiệu dòng chip STM32 Những đặc điểm nổi trội của dòng ARM Cortex đã thu hút các nhà sản xuất IC, hơn 240 dòng vi điều khiển dựa vào nhân Cortex đã được giới thiệu. Không nằm ngoài xu hướng đó, hãng sản xuất chip ST Microelectronic đã nhanh chóng đưa ra dòng STM32. STM32 là vi điều khiển dựa trên nền tảng lõi ARM Cortex-M3 thế hệ mới do hãng ARM thiết kế. Lõi ARM Cortex-M3 là sự cải tiến từ lõi ARM7 truyền thống từng mang lại thành công cho công ty ARM.[2] 2.1.6 Giới thiệu về chip STM32F103XXX Chip STM32F103xxx thuộc nhóm thứ 3 High-density trong 5 nhóm thuộc dòng ARM STM31F1, với bộ nhớ Flash là 512Kbytes, 11 timers, USB, CAN, ADC và các chuẩn giao tiếp khác. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 8
- CHƯƠNG 2. CƠ SỞ LÝ THUYẾT Với mô hình máy điểm danh sử dụng vi xử lý ARM này thì nhóm tôi quyết định chọn con chip STM32F103VET6 chính bởi vì chúng có tốc độ và dung lượng lưu trữ phù hợp với yêu cầu đặt ra, nhưng quan trọng nhất là chúng tôi đã được tiếp xúc trong quá trình học tập tại trường. [Nguồn: www.AllDataSheet.com] Hình 2.4. Mô tả chân và hình ảnh thực tế của STM32F103VET6 Do thuộc dòng High density cùng với 512Kbytes Flash STM32F103VET6 là chip xử lý mạnh mẽ với: 72Mhz xung nội đem lại một tốc độ xử lý đáng kể. 5 chuẩn giao tiếp UART và USART. 4x16 bit timers, 2 basic timers. 3 x SPI, 2 x I2Ss, 2 x I2Cs. USB, CAN, 2 x PWM timers. 3 × ADCs, 2 × DACs, 1 × SDIO.[2] 2.1.7 Kiến trúc chip ARM STM32F103XXX Icode bus: Kết nối lõi Cortex™-M3 với bộ nhớ Flash để truyền mã lệnh. Dcode bus: Kết nối lõi Cortex™-M3 với bộ nhớ Flash để truyền dữ liệu. System bus: Kết nối lõi Cortex™-M3 với BusMatrix và BusMatrix sẽ phân quyền sử dụng bus giữa lõi ARM và khối DMA. DMA bus: Kết nối DMA với BusMatrix và BusMatrix sẽ quản lý việc truy xuất dữ liệu của CPU, DMA tới SRAM, Flash và các ngoại vi. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 9
- S K L 0 0 2 1 5 4



