Мазмуну:

RFID-RC522 модулун Arduino менен кантип колдонуу керек: 5 кадам
RFID-RC522 модулун Arduino менен кантип колдонуу керек: 5 кадам

Video: RFID-RC522 модулун Arduino менен кантип колдонуу керек: 5 кадам

Video: RFID-RC522 модулун Arduino менен кантип колдонуу керек: 5 кадам
Video: Объяснение адреса I2C LCD1602 для Arduino 2024, Ноябрь
Anonim
RFID-RC522 модулун Arduino менен кантип колдонуу керек
RFID-RC522 модулун Arduino менен кантип колдонуу керек

Бул Нускамада мен RFID модулунун фундаменталдуу иштөө принциби боюнча анын тегдери жана чиптери менен таанышып чыгам. Мен ошондой эле RGB LED менен бул RFID модулун колдонуп жасаган долбоордун кыскача мисалын берем. Менин Instructables менен адаттагыдай эле, мен алгачкы бир нече кадамдын ичинде кыскача сереп берем жана кызыккандар үчүн акыркы кадамда кеңири, деталдуу түшүндүрмө калтырам.

Берилиштер:

RC522 RFID Module + идентификациялык теги жана картасы-https://www.amazon.com/SunFounder-Mifare-Reader-Ar…

RGB LED + үч 220 омдук резисторлор

1 -кадам: Аппараттык туташуулар

Аппараттык туташуулар
Аппараттык туташуулар

Бул проектте мен Arduino Mega колдондум, бирок сиз каалаган микроконтроллерди колдонсоңуз болот, анткени бул салыштырмалуу аз ресурстуу долбоор, башкача болуп турган нерсе-бул SCK, SDA, MOSI, MISO жана RST, анткени алар ар бир тактада ар башка. Эгерде сиз Мега колдонбосоңуз, анда биз жакында колдоно турган скрипттин жогору жагына кайрылыңыз:

RFID:

SDA (ак) - 53

SCK (кызгылт сары) - 52

MOSI (сары) - 51

MISO (жашыл) - 50

RST (көк) - 5

3.3v - 3.3v

GND - GND

(Эскертүү: окурман катуу 3.3V талап кылса да, казыктар 5V чыдамкай, бул модулду Arduinos жана башка 5V DIO микроконтроллери менен колдонууга мүмкүнчүлүк берет)

RGB LED:

Кызыл катод (кызгылт көк) - 8

GND - GND

Жашыл катод (жашыл) - 9

Көк катод (көк) - 10

2 -кадам: Программалык камсыздоо

Программалык камсыздоо
Программалык камсыздоо

Эми программалык камсыздоого өтүңүз.

Биринчиден, RFID маалыматын алуу, жазуу жана иштетүү үчүн MFRC522 китепканасын орнотушубуз керек. Github шилтемеси: https://github.com/miguelbalboa/rfid, бирок аны Arduino IDEдеги же PlatformIOдогу китепкана менеджери аркылуу да орнотсоңуз болот. RFID маалыматтары менен иштөө жана иштетүү үчүн өзүбүздүн жеке программабызды түзүүдөн мурун, биз алгач картабызга жана тегибизге чыныгы UIDди алышыбыз керек. Бул үчүн биз бул эскизди жүктөшүбүз керек:

(Arduino IDE: мисалдар> MFRC522> DumpInfo)

(PlatformIO: PIO Home> китепканалар> орнотулган> MFRC522> мисалдар> DumpInfo)

Бул эскиздин негизи картада болгон бардык маалыматты, анын ичинде UIDти он алтылык формада алуу. Мисалы, менин картанын UIDи 0x72 0x7D 0xF5 0x1D (сүрөттү караңыз). Калган маалымат структурасы - бул биз окуган же жаза турган картадагы маалымат. Мен акыркы бөлүмдө тереңирээк маалымат берем.

3 -кадам: Программалык камсыздоо (2)

Программалык камсыздоо (2)
Программалык камсыздоо (2)

Адаттагыдай менин Instructables менен, мен коддун ар бир бөлүгүн сценарийдин калган бөлүгүндө анын функциясына байланыштуу түшүндүрүп берүү үчүн, программалык камсыздоону саптык комментарийлерде түшүндүрөм, бирок ал негизинен картанын ким экендигин аныктайт. окуу жана кирүүгө уруксат берет же бербейт. Ошондой эле, эгерде туура карта эки жолу сканерленсе, жашыруун билдирүү ачылат.

github.com/belsh/RFID_MEGA/blob/master/mfr….

4 -кадам: RFID; Түшүндүрүлдү

RFID; Түшүндүрүлдү
RFID; Түшүндүрүлдү

Окурманда Радиожыштык модулу жана электромагниттик талааны жаратуучу антенна бар. Башка жагынан алганда, картада маалыматты сактай турган жана аны көптөгөн блокторунун бирине жазуу менен өзгөртүүгө мүмкүндүк берүүчү чип бар, мен аны RFIDдин маалымат структурасына киргенде кийинки бөлүмдө кененирээк айтып берем.

RFID байланышынын иштөө принциби өтө жөнөкөй. Окурмандын антеннасы (биздин учурда, RC522деги антенна-бул беттеги катушка окшош структура), ал радио толкундарын жиберет, алар өз кезегинде картка/тегге (жакын аралыкта) катушка энергия берет. айландырылган электр энергиясын транспондер (радио жыштык сигналдарын кабыл алуучу жана чыгаруучу) карта ичиндеги маалыматты көбүрөөк радио толкундар түрүндө кайра жөнөтүү үчүн колдонот. Бул backscatter деп аталат. Кийинки бөлүмдө, биз окуй турган же жаза турган маалыматты сактоо үчүн карта/тег тарабынан колдонулган белгилүү бир маалымат структурасын талкуулайм.

5 -кадам: RFID; Түшүндүрүлгөн (2)

RFID; Түшүндүрүлгөн (2)
RFID; Түшүндүрүлгөн (2)

Эгерде сиз мурда жүктөлгөн биздин скрипттин жогорку бөлүгүн карасаңыз, анда картанын түрү PICC 1 KB экенин, анын 1 КБ эс тутуму бар экенин байкайсыз. Бул эстутум 4 блокту камтыган 16 сектордон турган маалымат структурасына бөлүнөт, алардын ар бири 16 байт маалыматты алып жүрөт (16 x 4 x 16 = 1024 = 1 КБ). Ар бир сектордогу акыркы блок (AKA Sector Trailer) сектордун калган бөлүгүнө окуу / / жазуу мүмкүнчүлүгүн берүү үчүн корголот, башкача айтканда бизде маалыматтарды сактоо жана окуу жагынан иштей турган алгачкы 3 блок гана бар.

(Эскертүү: 0 секторунун биринчи блогу Өндүрүүчүлөрдүн Блоку деп аталат жана өндүрүүчүнүн маалыматы сыяктуу маанилүү маалыматты камтыйт; бул блокту өзгөртүү картаңызды толугу менен кулпулап коюшу мүмкүн, андыктан ага маалыматтарды жазууга аракет кылыңыз)

Бактылуу бол.

Сунушталууда: