Phần cứng của Arduino Một mạch Arduino bao gồm một vi điều khiển AVR với nhiều linh kiện bổ sung giúp dễ dàng lập trình và có thể mở rộng với các mạch khác.. Hầu hết các mạch gồm một bộ
Trang 1TRƯỜNG ĐẠI HỌC ĐIỆN LỰCKHOA ĐIỆN TỬ VIỄN THÔNG
ĐỒ ÁN ĐIỆN TỬ NÂNG CAO
Mô hình máy chấm công tự động
Người hướng dẫn: GV Hồ Mạnh Cường
Người thực hiện: Nhóm 6 – Lớp : D11-KTDTCác thành viên : 1 Nguyễn Văn Đức
2 Nguyễn Quang Huy
3 Nguyễn Thị Hương
Hà Nội, tháng 4 năm 2020
Trang 2LỜI MỞ ĐẦU
Ngày nay, khi khoa học công nghệ phát triển một cách mạnh mẽ, việc ứngdụng các thiết bị điện tử vào đời sống cũng ngày càng phổ biến hơn, nhất là vớithời đại mà các hệ thống nhúng đang lên ngôi Từ những ứng dụng đơn nhưđồng hồ kĩ thuật số, máy nghe nhạc…đến những ứng dụng cho xã hội như đèngiao thông, bộ kiểm soát trong nhà máy, cửa tự động…cho đến những ứng dụngmang tính quy mô, tầm cỡ như robot, phi thuyền không người lái, kiểm soát nhàmáy hạt nhân…
Với những kiến thức đã được học và tìm hiểu từ trường học và khoa học côngnghệ của cuộc sống hiện đại, em cũng có mong muốn góp thêm phần nào sựphát triển xã hội bằng cách học hỏi và đưa ra những sản phẩm có ích cho cuộcsống Em xin giới thiệu một sản phẩm rất thiết thực cho các văn phòng, doanhngiệp “ hệ thống chấm công sử dụng thẻ từ RFID ”
Với ý tưởng trên em mong muốn được góp phần giúp cho các doanh nghiệp dễdàng trong việc chấm công cho cán bộ công nhân trong công ty cũng như tiếtkiệm thời gian, tiền bạc Đảm bảo được sự rõ ràng, minh bạch trong công tácchấm công trả lương cho công nhân
Trang 3LỜI CẢM ƠN
Trong thời gian thực hiện Đồ án điện tử nâng cao chúng em đã tìm hiểu
bổ sung và học hỏi được nhiều kiến thức và kinh nghiệm về việc thiết kế thựchiện và thi công “Hệ thống chấm công tự động”
Do điều kiện về thời gian và kiến thức còn hạn chế nên đề tài của chúng
em chỉ dừng lại ở mức nghiên cứu, thiết kế và mô phỏng bằng mô hình Trongthời gian thực hiện đồ án, chúng em đã tham khảo ý kiến của giảng viên hướngdẫn, tìm hiểu tài liệu và sự hỗ trợ góp ý từ giảng viên cũng như bạn bè và cácanh chị đi trước Tuy nhiên do kiến thức còn hạn chế nên không thể tránh khỏisai sót, chúng em rất mong nhận được sự góp ý của quý thầy cô và các bạn để đồ
án của chúng em được hoàn thiện hơn, và tạo lập cho chúng em có một cơ sởnhìn nhận về khả năng, kiến thức, từ đó có hướng phấn tốt hơn cho các đồ ántiếp theo
Đặc biệt , chúng em xin gửi lời chân thành cảm ơn đến thầy giáo HồMạnh Cường – Giảng viên trường Đại học Điện Lực đã trực tiếp hỗ trợ, tận tìnhhướng dẫn, giúp đỡ và bổ sung kiến thức cho chúng em trong quá trình thực hiện
và hoàn thiện đồ án này
Trong quá trình thực hiện đồ án không tránh khỏi sai sót, rất mong nhận được sự góp ý của thầy cô và các bạn
Một lần nữa chúng em xin chân thành cảm ơn các thầy cô và các bạn !
NHẬN XÉT
(Của giảng viên hướng dẫn)
Trang 4………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Hà Nội, ngày tháng năm 2020
Giảng viên hướng dẫn
Trang 5MỤC LỤC
LỜI MỞ ĐẦU 2
LỜI CẢM ƠN 3
NHẬN XÉT 3
MỤC LỤC 5
CHƯƠNG I: TỔNG QUAN VỀ ĐỀ TÀI ……6
1.1 LÝ DO LỰA CHỌN ĐỀ TÀI 6
1.2.MỤC TIÊU ĐỒ ÁN 6
CHƯƠNG II: THIẾT KẾ ĐỀ TÀI 7
2.1 CHỨC NĂNG BỘ THIẾT BỊ
2.2 THIẾT KẾ PHẦN CỨNG 7
2.2.1 SƠ ĐỒ KHỐI CHỨC NĂNG 7
2.2.2 GIỚI THIỆU VỀ BOARD ARDUINO UNO R3 7
2.2.3 LỰA CHỌN LINH KIỆN & MODULE
2.2.4 THIẾT KẾ MẠCH NGUYÊN LÝ …18
2.3 THIẾT KẾ PHẦN MỀM 21
2.3.1VIẾT MÃ NGUỒN 26
2.4 KẾT QUẢ VÀ ĐÁNH GIÁ 38
2.4.1 KẾT QUẢ ĐẠT ĐƯỢC 38
2.4.2 ĐÁNH GIÁ SẢN PHẨM 39
TÀI LIỆU THAM KHẢO 39
Trang 6CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI NGHIÊN CỨU
1.1 Lý do lựa chọn đề tài
Ngày nay với sự phát triển vượt bậc của khoa học kỹ thuật, điện tử đã đượcứng dụng ở rất nhiều lĩnh vực trong thực tế để phục vụ nhu cầu của các doanhnghiệp
Khi mà các doanh nghiệp đang ngày càng cố gắng đưa doanh nghiệp củamình đơn giản hóa và minh bạch trong công tác hành chính và đặc biệt là côngtác chấm công cho nhân viên Thay vì mỗi sáng doanh nghiệp cần cử người trựctại của ra vào cầm sổ để chấm công cho các nhân viên đi làm và những ai đimuộn để kiểm soát và trả lương phù hợp với mỗi người thì ta có thể sử dụngmáy móc thay thế công tác đó có người trực chấm công đó Khi sủ dụng “Hệthống chấm công tự động” do nhóm chúng em nghiên cứu thì các doanh nghiệp
có thể tiết kiệm được nhân công và thời gian cũng như đảm bảo độ chính xáccao tránh những sai lầm do có sự châm trước của người quen
Trang 7CHƯƠNG 2: THIẾT KẾ ĐỀ TÀI
2.1 CHỨC NĂNG THIẾT BỊ
Sau khi hoàn thiện hệ thống chấm công tự dộng sẽ có các chức năng sau :
Thực hiện chức năng quét thẻ từ RFID để nhận dạng nhân viên vào 2 buổi
là buổi sáng và buổi chiều tan làm
Đối với thẻ lạ ( lần đầu tiên quét thẻ) hệ thống sẽ yêu cầu người quét thẻphải nhập mật khẩu
Khi nhân viên quét thẻ đủ 2 lần thì hệ thống sẽ tự dộng tính cho nhân viên
đó là hoàn thành 1 công
2.2 THIẾT KẾ PHẦN CỨNG
2.2.1 Sơ đồ khối chức năng
Hình 1 Sơ đồ khối chức năng của thiết bị
2.2.2 Giới thiệu về board Arduino Uno
Arduino là một board mạch vi xử lý được sinh ra tại thị trấn Ivrea ở Ý,nhằm xây dựng các ứng dụng tương tác với nhau hoặc với môi trường đượcthuận lợi hơn Phần cứng bao gồm một board mạch nguồn mở được thiết kế
Trang 8trên nền tảng vi xử lý AVR Atmel 8bit, hoặc ARM Atmel 32-bit NhữngModel hiện tại được trang bị gồm 1 cổng giao tiếp USB, 6 chân đầu vàoanalog, 14 chân I/O kỹ thuật số tương thích với nhiều board mở rộng khácnhau
a Phần cứng của Arduino
Một mạch Arduino bao gồm một vi điều khiển AVR với nhiều linh kiện
bổ sung giúp dễ dàng lập trình và có thể mở rộng với các mạch khác Mộtkhía cạnh quan trọng của Arduino là các kết nối tiêu chuẩn của nó, cho phépngười dùng kết nối với CPU của board với các module thêm vào có thể dễdàng chuyển đổi, được gọi là shield Vài shield truyền thông với boardArduino trực tiếp thông qua các chân khác nhau, nhưng nhiều shield đượcđịnh địa chỉ thông qua serial bus I²C-nhiều shield có thể được xếp chồng và
sử dụng dưới dạng song song Arduino chính thức thường sử dụng các dòngchip megaAVR, đặc biệt là ATmega8, ATmega168, ATmega328,ATmega1280, và ATmega2560 Một vài các bộ vi xử lý khác cũng được sửdụng bởi các mạch Aquino tương thích Hầu hết các mạch gồm một bộ điềuchỉnh tuyến tính 5V và một thạch anh dao động 16 MHz (hoặc bộ cộnghưởng ceramic trong một vài biến thể), mặc dù một vài thiết kế như LilyPadchạy tại 8 MHz và bỏ qua bộ điều chỉnh điện áp onboard do hạn chế về kích
cỡ thiết bị Một vi điều khiển Arduino cũng có thể được lập trình sẵn vớimột boot loader cho phép đơn giản là upload chương trình vào bộ nhớ flashon-chip, so với các thiết bị khác thường phải cần một bộ nạp bên ngoài Điềunày giúp cho việc sử dụng Arduino được trực tiếp hơn bằng cách cho phép
sử dụng 1 máy tính gốc như là một bộ nạp chương trình
-Theo nguyên tắc, khi sử dụng ngăn xếp phần mềm Arduino, tất cả cácboard được lập trình thông qua một kết nối RS-232, nhưng cách thức thựchiện lại tùy thuộc vào đời phần cứng Các board Serial Arduino có chứa mộtmạch chuyển đổi giữa RS232 sang TTL Các board Arduino hiện tại đượclập trình thông qua cổng USB, thực hiện thông qua chip chuyển đổi USB-to-serial như là FTDI FT232 Vài biến thể, như Arduino Mini và Boarduinokhông chính thức, sử dụng một board adapter hoặc cáp nối USB-to-serial cóthể tháo rời được, Bluetooth hoặc các phương thức khác (Khi sử dụng mộtcông cụ lập trình vi điều khiển truyền thống thay vì ArduinoIDE, công cụ lậptrình AVR ISP tiêu chuẩn sẽ được sử dụng.)
- Board Arduino sẽ đưa ra hầu hết các chân I/O của vi điều khiển để sửdụng cho những mạch ngoài Diecimila, Duemilanove, và bây giờ là Uno
Trang 9đưa ra 14 chân I/O kỹ thuật số, 6 trong số đó có thể tạo xung PWM (điều chế
độ rộng xung) và 6 chân input analog, có thể được sử dụng như là 6 chân I/O
số Những chân này được thiết kế nằm phía trên mặt board, thông qua cácheader cái 0.10-inch (2.5 mm) Nhiều shield ứng dụng plug-in cũng đượcthương mại hóa Các board Arduino Nano, và Arduino-compatible BareBones Board và Boarduino có thể cung cấp các chân header đực ở mặt trêncủa board dùng để cắm vào các breadboard
-Có nhiều biến thể như Arduino-compatible và Arduino-derived Một vàitrong số đó có chức năng tương đương với Arduino và có thể sử dụng đểthay thế qua lại Nhiều mở rộng cho Arduino được thực thiện bằng cáchthêm vào các driver đầu ra, thường sử dụng trong các trường học để đơngiản hóa các cấu trúc của các 'con rệp' và các robot nhỏ Những board khácthường tương đương về điện nhưng có thay đổi về hình dạng-đôi khi cònduy trì độ tương thích với các shield, đôi khi không Vài biến thể sử dụng bộ
vi xử lý hoàn toàn khác biệt, với các mức độ tương thích khác nhau
b Phần mềm của Arduino
Môi trường phát triển tích hợp (IDE) của Arduino là một ứng dụng platform (đa nền tảng) được viết bằng Java, và từ IDE này sẽ được sử dụngcho Ngôn ngữ lập trình xử lý (Processing programming language) và projectWiring Nó được thiết kế để dành cho những người mới tập làm quen vớilĩnh vực phát triển phần mềm Nó bao gồm một chương trình code editor vớicác chức năng như đánh dấu cú pháp, tự động brace matching, và tự độngcanh lề, cũng như compile(biên dịch) và upload chương trình lên board chỉvới 1 cú nhấp chuột Một chương trình hoặc code viết cho Arduino được gọi
cross-là một sketch
-Các chương trình Arduino được viết bằng C hoặc C++ Arduino IDE
đi kèm với một thư viện phần mềm được gọi là "Wiring", từ project Wiringgốc, có thể giúp các thao tác input/output được dễ dàng hơn Người dùng chỉcần định nghĩa 2 hàm để tạo ra một chương trình vòng thực thi (cyclicexecutive) có thể chạy được:
VD :
setup(): hàm này chạy mỗi khi khởi động một chương trình, dùng để thiết
lập các cài đặt
loop(): hàm này được gọi lặp lại cho đến khi tắt nguồn board mạch
-Một chương trình điển hình cho một bộ vi điều khiển đơn giản chỉ là
Trang 10làm cho một bóng đèn Led sáng/tắt Trong môi trường Arduino, ta sẽ phảiviết một chương trình giống như sau:
digitalWrite (LED_PIN, HIGH); // Bật LED on
delay (1000); // chờ trong 1 giây (1000 mili giây)
digitalWrite (LED_PIN, LOW); // Tắt LED off
delay (1000); // chờ trong 1s
}
- Một đặc điểm của hầu hết các board Arduino là chúng có một đèn LED
và điện trở nối giữa chân 13 với đất; một đặc điểm thuận tiện cho nhiều ứngdụng đơn giản Đoạn code ở trên không thể đọc được bởi một compiler C++chuẩn như là một chương trình đúng, vì vậy khi ta click vào nút "Upload toI/O board" trong IDE này, một bản copy của đoạn code này sẽ được ghi vàomột file tạm với một extra include header ở phía trên cùng và một hàm main() đơn giản nằm ở phía đáy, để làm cho thàn một chương trình C++ khả dụng.-Arduino IDE này sử dụng GNU toolchain và AVR Libc để biên dịchchương trình, và sử dụng avrdude để upload chương trình lên board
-Vì nền tảng của Arduino là các vi điều khiển của Atmel, cho nên môitrường phát triển của Atmel, AVR Studio hoặc các phiên bản Atmel Studiomới hơn, cũng có thể được sử dụng để làm phần mềm phát triển cho Arduino
Trang 11Hình 2 Board Arduino Uno
Mạch Arduino Uno là dòng mạch Arduino phổ biến, khi mới bắt đầulàm quen, lập trình với Arduino thì mạch Arduino thường nói tới chính làdòng Arduino UNO Hiện dòng mạch này đã phát triển tới thế hệ thứ 3 Arduino Uno R3 là dòng cơ bản, linh hoạt, thường được sử dụng chongười mới bắt đầu Bạn có thể sử dụng các dòng Arduino khác như:Arduino Mega, Arduino Nano, Arduino Micro Nhưng với những ứngdụng cơ bản thì mạch Arduino Uno là lựa chọn phù hợp nhất
Thông số cơ bản của Mạch Arduino UNO R3:
Điện áp hoạt động 5V
Điện áp đầu vào (khuyên dùng)7-12V
Điện áp đầu vào (giới hạn) 6-20V
Chân Digital I/O 14 (Với 6 chân PWM output)
Chân PWM Digital I/O 6
Chân đầu vào Analog 6
Dòng sử dụng I/O Pin 20 mA
Dòng sử dụng 3.3V Pin 50 mA
Bộ nhớ Flash 32 KB (ATmega328P) với 0.5KB dùng bởi bootloader
Trang 12Các chân năng lượng
GND (Ground): cực âm của nguồn điện cấp cho Arduino UNO Khi bạndùng các thiết bị sử dụng những nguồn điện riêng biệt thì những chân nàyphải được nối với nhau
5V: cấp điện áp 5V đầu ra Dòng tối đa cho phép ở chân này là 500mA
3.3V: cấp điện áp 3.3V đầu ra Dòng tối đa cho phép ở chân này là 50mA
Vin (Voltage Input): để cấp nguồn ngoài cho Arduino UNO, bạn nối cựcdương của nguồn với chân này và cực âm của nguồn với chân GND
IOREF: điện áp hoạt động của vi điều khiển trên Arduino UNO có thểđược đo ở chân này Và dĩ nhiên nó luôn là 5V Mặc dù vậy bạn khôngđược lấy nguồn 5V từ chân này để sử dụng bởi chức năng của nó khôngphải là cấp nguồn
RESET: việc nhấn nút Reset trên board để reset vi điều khiển tươngđương với việc chân RESET được nối với GND qua 1 điện trở 10KΩ
Bộ nhớ sử dụng
Vi điều khiển Atmega328 tiêu chuẩn sử dụng trên Arduino uno r3 có:
Trang 13 32KB bộ nhớ Flash: những đoạn lệnh bạn lập trình sẽ được lưu trữ trong
bộ nhớ Flash của vi điều khiển Thường thì sẽ có khoảng vài KB trong sốnày sẽ được dùng cho bootloader nhưng đừng lo, bạn hiếm khi nào cầnquá 20KB bộ nhớ này đâu
2KB cho SRAM (Static Random Access Memory): giá trị các biến bạnkhai báo khi lập trình sẽ lưu ở đây Bạn khai báo càng nhiều biến thì càngcần nhiều bộ nhớ RAM Tuy vậy, thực sự thì cũng hiếm khi nào bộ nhớRAM lại trở thành thứ mà bạn phải bận tâm Khi mất điện, dữ liệu trênSRAM sẽ bị mất
1KB cho EEPROM (Electrically Eraseble Programmable Read OnlyMemory): đây giống như một chiếc ổ cứng mini – nơi bạn có thể đọc vàghi dữ liệu của mình vào đây mà không phải lo bị mất khi cúp điện giốngnhư dữ liệu trên SRAM
Các cổng vào/ra trên Arduino Board
Mạch Arduino UNO có 14 chân digital dùng để đọc hoặc xuất tín hiệu.Chúng chỉ có 2 mức điện áp là 0V và 5V với dòng vào/ra tối đa trên mỗichân là 40mA Ở mỗi chân đều có các điện trở pull-up từ được cài đặtngay trong vi điều khiển ATmega328 (mặc định thì các điện trở này khôngđược kết nối)
Một số chân digital có các chức năng đặc biệt như sau:
Chân Serial: 0 (RX) và 1 (TX): dùng để gửi (transmit – TX) và nhận(receive – RX) dữ liệu TTL Serial Arduino Uno có thể giao tiếp với thiết
bị khác thông qua 2 chân này Kết nối bluetooth thường thấy nói nôm nachính là kết nối Serial không dây Nếu không cần giao tiếp Serial, bạnkhông nên sử dụng 2 chân này nếu không cần thiết
Chân PWM (~): 3, 5, 6, 9, 10, và 11: cho phép bạn xuất ra xung PWM với
độ phân giải 8bit (giá trị từ 0 → 28-1 tương ứng với 0V → 5V) bằng hàmanalogWrite() Nói một cách đơn giản, bạn có thể điều chỉnh được điện áp
ra ở chân này từ mức 0V đến 5V thay vì chỉ cố định ở mức 0V và 5V nhưnhững chân khác
Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) Ngoàicác chức năng thông thường, 4 chân này còn dùng để truyền phát dữ liệubằng giao thức SPI với các thiết bị khác
Trang 14 LED 13: trên Arduino UNO có 1 đèn led màu cam (kí hiệu chữ L) Khibấm nút Reset, bạn sẽ thấy đèn này nhấp nháy để báo hiệu Nó được nốivới chân số 13 Khi chân này được người dùng sử dụng, LED sẽ sáng.
Arduino UNO Broad có 6 chân analog (A0 → A5) cung cấp độ phân giảitín hiệu 10bit (0 → 210-1) để đọc giá trị điện áp trong khoảng 0V → 5V.Với chân AREF trên board, bạn có thể để đưa vào điện áp tham chiếu khi
sử dụng các chân analog Tức là nếu bạn cấp điện áp 2.5V vào chân nàythì bạn có thể dùng các chân analog để đo điện áp trong khoảng từ 0V →2.5V với độ phân giải vẫn là 10bit
Đặc biệt, Arduino UNO có 2 chân A4 (SDA) và A5 (SCL) hỗ trợ giao tiếpI2C/TWI với các thiết bị khác
Trang 15Module RFID RC522 sử dụng IC MFRC522 có thể đọc được các loại thẻ
có kết nối không dây như NFC, thẻ từ ( loại dùng làm thẻ giảm giá, thẻ xebus, tàu điện ngầm )
Trang 16Hình 5 Keypad moduleThông số sản phẩm:
o Module bàn phím ma trận 4x4 loại phím mềm
o Độ dài cáp: 88mm
o Nhiệt độ hoạt động 0 ~ 70oC
o Đầu nối ra 8 chân
LCD 16*2 và Module chuyển đổi I2C cho LCD 16*2
LCD text 1602 một sản phẩm quen thuộc với những người mớihọc và muốn thực hiện các dự án về điện tử, lập trình Với khả hiểnthị 2 dòng với mỗi dòng 16 ký tự, đồng thời có rất nhiều ví dụ mẫuđược cộng đồng Arduino xây dựng sẵn sẽ giúp người mới sử dụnglàm quen nhanh hơn cũng như tiết kiệm được thời gian trong việcphát triển ứng dụng của mình
Trang 17.Hình 6 Màn hình LCD 16*2
• Có thể được điều khiển với 6 dây tín hiệu
• VSS: cực âm nguồn cho LCD - GND: 0V
• VDD: cực dương nguồn LCD - 5V
• Constrast Voltage (Vo): điều khiển độ sáng màn hình
• Register Select (RS): lựa chọn thanh ghi
• Enable: Cho phép ghi vào LCD
• D0 - D7: 8 chân trao đổi dữ liệu với các vi điều khiển, với 2 chế độ sử dụng
Trang 18• Chế độ 8 bit: Dữ liệu được truyền trên cả 8 đường, với bit MSB là bit DB7.
• Chế độ 4 bit : Dữ liệu được truyền trên 4 đường từ DB4 tới DB7, bit MSB là DB7
• Backlight (Backlight Anode (+) và Backlight Cathode (-)): Tắt bật đèn màn hình LCD
Module chuyển đổi I2C cho LCD 16*2
- LCD có quá nhiều chân gây khó khăn trong quá trình kết nối và chiếm
dụng nhiều chân của vi điều khiển? Module chuyển đổi I2C cho LCD
sẽ giải quyết vấn đề này cho bạn, thay vì sử dụng tối thiểu 6 chân của
vi điều khiển để kết nối với LCD (RS, EN, D7, D6, D5 và D4) thì vớimodule chuyển đổi bạn chỉ cần sử dụng 2 chân (SCL, SDA) để kếtnối Module chuyển đổi I2C hỗ trợ các loại LCD sử dụng driverHD44780(LCD 1602, LCD 2004, … ), kết nối với vi điều khiển thôngqua giao tiếp I2C, tương thích với hầu hết các vi điều khiển hiện nay
Hình 7 Module I2C
Thông số kĩ thuật
Điện áp hoạt động: 2.5-6V DC
Hỗ trợ màn hình: LCD1602,1604,2004 (driver HD44780)
Giao tiếp: I2C
Địa chỉ mặc định: 0X27 (có thể điều chỉnh bằng ngắn mạch chân A0/A1/A2)
Trang 19Kích thước: 41.5mm(L)x19mm(W)x15.3mm(H)
Trọng lượng: 5g
Tích hợp Jump chốt để cung cấp đèn cho LCD hoặc ngắt
Tích hợp biến trở xoay điều chỉnh độ tương phản cho LCD
2.2.4 Thiết kế mạch nguyên lý
a Khối đọc thẻ từ
Khối này ta cần có 1 thẻ từ RFID và 1 module đọc thẻ từ RC522
Đối với thẻ từ RFID
Hình 8 Sơ đồ nguyên lý của thẻ RFID
Các thẻ này có 1kb bộ nhớ và có một vi mạch có thể thực hiện các phép toán số học Tần số hoạt động của chúng là 13,56 MHz và khoảng cách hoạt động lên tới
10 cm tùy thuộc vào hình dạng của ăng ten Nếu chúng ta mang một trong nhữngthẻ này trước một nguồn sáng, chúng ta có thể nhận thấy ăng-ten và vi mạch
Đối với module đọc thẻ từ RC-522
Trang 20Hình 9 Sơ đồ nguyên lý của module đọc thẻ từ RC522Đối với module đọc RFID, chúng sử dụng giao thức SPI để liên lạc với board Arduino và đây là cách chúng ta cần kết nối chúng Xin lưu ý rằng chúng
ta phải kết nối VCC của mô-đun với 3,3V và đối với các chân khác chúng ta không phải lo lắng vì chúng có thể chịu được 5V
Để hỗ trợ tốt cho việc thực hiện các ứng dụng liên quan đến module đọc RC-522 cộng đồng arduino đã hỗ trợ chúng ta 1 thư viện cho module đó là
MFRC522
Hình ảnh trên là 1 ví dụ về thẻ RFID mà module RC-522 đọc được