ዝርዝር ሁኔታ:

ARDUINO UNO RFID WINDOWS 10 መክፈቻ 5 ደረጃዎች
ARDUINO UNO RFID WINDOWS 10 መክፈቻ 5 ደረጃዎች

ቪዲዮ: ARDUINO UNO RFID WINDOWS 10 መክፈቻ 5 ደረጃዎች

ቪዲዮ: ARDUINO UNO RFID WINDOWS 10 መክፈቻ 5 ደረጃዎች
ቪዲዮ: Windows 10 Login Using RFID RC522 with Arduino Uno R3 2024, ህዳር
Anonim
Image
Image

በአርዲኖ እና በ RFID ካርድ እገዛ የተጠበቁ መስኮቶችን 10 ማለፊያ ወይም ፒን መክፈት።

በዚህ የ DIY ፕሮጀክት ዙሪያ ያለው ሀሳብ ቀላል ነው። HID የሚችል መሣሪያ ፣ የ RFID ካርድ እና አንባቢ እንፈልጋለን። አርዱዲኖ የ RFID ካርድን ሲያነብ ፣ እና መታወቂያው እኛ ከገባነው ጋር አንድ ነው ፣ የቁልፍ ቁልፎቹን (የይለፍ ቃል) ትክክለኛውን ጥምረት ተጭኖ ከዚያ አስገባን ይጫኑ።

አቅርቦቶች

UNO R3 ATMEGA328P

RFID RC522

40 ፒሲ 10 ሴሜ ወንድ ለወንድ ዝላይ

ደረጃ 1 SOFTWARE

ARDUINO IDE

FLIP 3.4.7

RFID_MODIFY_CODE. INO

የዩኤስቢ ቁልፍ ሰሌዳ ጌታው

ደረጃ 2 - ኮዱ

ኮዱን ይስቀሉ

የኮድ ክሬዲቶች ወደ AKASH124 ይሄዳል

#ያካትቱ #አካትት #መግለፅ SS_PIN 10 #መለየት RST_PIN 9 MFRC522 mfrc522 (SS_PIN ፣ RST_PIN); // MFRC522 ምሳሌን ይፍጠሩ።

uint8_t buf [8] = {0}; / * የቁልፍ ሰሌዳ ሪፖርት ቋት */

int cardCount = 0; ባዶነት ማዋቀር () {Serial.begin (9600); randomSeed (analogRead (0)); መዘግየት (200); SPI.begin (); // የ SPI አውቶቡስ mfrc522. PCD_Init (); // MFRC522 ን ያስጀምሩ

} ባዶነት loop () {// አዲስ ካርዶችን ይፈልጉ (! mfrc522. PICC_IsNewCardPresent ()) {ከተመለሰ; } // (! Mfrc522. PICC_ReadCardSerial ()) {ከተመለሰ; } // በተከታታይ ማሳያ ላይ UID ን ያሳዩ ሕብረቁምፊ ይዘት = ""; ባይት ደብዳቤ; ለ (byte i = 0; i <mfrc522.uid.size; i ++) {content.concat (String (mfrc522.uid.uidByte <0x10? "0": ""))); content.concat (ሕብረቁምፊ (mfrc522.uid.uidByte , HEX)); } content.toUpperCase (); (ይዘት.substring (1) == "10 4B 58 7E" ፣ "30 F1 CA 80") // መዳረሻ ለመስጠት የፈለጉትን የካርድ/ካርዶች UID እዚህ ይለውጡ {መዘግየት (50) ፤

መዘግየት (100);

buf [0] = 0; buf [2] = 0x26; // ደብዳቤ 9 Serial.write (buf, 8); releaseKey ();

መዘግየት (200);

buf [0] = 0; buf [2] = 0x28; // ደብዳቤ ያስገቡ Serial.write (buf, 8); releaseKey ();

መዘግየት (900);

cardCount ++; } ሌላ {ተመለስ; }

ከሆነ (cardCount = 1) {መዘግየት (50);

buf [0] = 0; // አሸነፈ buf [2] = 0x28; // ደብዳቤ ያስገቡ Serial.write (buf, 8); releaseKey ();

መዘግየት (50);

buf [0] = 0; buf [2] = 0x52; // ደብዳቤ Up Serial.write (buf, 8); releaseKey ();

መዘግየት (50);

buf [0] = 0; buf [2] = 0x52; // ደብዳቤ ወደላይ Serial.write (buf, 8); releaseKey ();

መዘግየት (50);

buf [0] = 0; buf [2] = 0x28; // ደብዳቤ ያስገቡ Serial.write (buf, 8); releaseKey ();

መዘግየት (50);

buf [0] = 0; buf [2] = 0x28; // ደብዳቤ ያስገቡ Serial.write (buf, 8); releaseKey ();

cardCount--; }}

ባዶነት releaseKey () {buf [0] = 0; buf [2] = 0; Serial.write (buf, 8); // የመልቀቂያ ቁልፍ}

ደረጃ 3 (ዝርዝሮች)

ሊጫኑት ወደሚፈልጉት ቁልፎች ይህንን የኮዱን ክፍል ይለውጡ።

የፈለጉትን ያህል ኮዱን ይቅዱ እና ይለጥፉ። ለእያንዳንዱ ቁልፍ የአሳታፊ ኮዶችን ካርታ ይፈትሹ። እዚህ ሊያገኙት ይችላሉ።

buf [0] = 0; buf [2] = 0x26; // ደብዳቤ 9 Serial.write (buf, 8); releaseKey ();

መዘግየት (200);

ሊጠቀሙበት ወደሚፈልጉት ካርድ ፣ ቀለበት ወይም ነገር መታወቂያ ይለውጡ

content.toUpperCase (); (ይዘት.substring (1) == "10 4B 58 7E" ፣ "30 F1 CA 80") // መዳረሻ ለመስጠት የፈለጉትን የካርድ/ካርዶች UID እዚህ ይለውጡ {መዘግየት (50) ፤

ደረጃ 4: የቁልፍ ሰሌዳውን ተከታታይ ይደብቁ

ለ 1 ሴኮንድ በምስሉ ላይ እንደሚታየው 2 ፒኖችን ያገናኙ

Flip 3.4.7 ፋይል -> የዩኤስቢ ቁልፍ ሰሌዳ -ማስተር / firmware / Arduino -keyboard -0.3.hexDevice -> ይምረጡ -> Atmega16u2 (ወይም ቺፕዎ) ቅንጅቶች -> ግንኙነት -> usbRun

ደረጃ 5: ተከናውኗል

ዳግም አስነሳ እና ሙከራ

Txt ፋይልን ለመፈተሽ ወይም ፒሲውን ለመቆለፍ Arduino usb ን ይንቀሉ እና ይሰኩ (አሸናፊ ቁልፍ + l) ይደሰቱ

ፕሮጀክቱን እዚህ ማግኘት ይችላሉ

የሚመከር: