Mundarija:

ARDUINO UNO RFID WINDOWS 10 UNLOCK: 5 qadam
ARDUINO UNO RFID WINDOWS 10 UNLOCK: 5 qadam

Video: ARDUINO UNO RFID WINDOWS 10 UNLOCK: 5 qadam

Video: ARDUINO UNO RFID WINDOWS 10 UNLOCK: 5 qadam
Video: Ввод пароля пользователя при входе в windows по RFID карте 2024, Iyul
Anonim
Image
Image

Windows 10 -ning qulfini ochish arduino va RFID kartasi yordamida himoyalangan.

Ushbu DIY loyihasi haqidagi g'oya oddiy. Bizga HIDga ega qurilma, RFID karta va o'quvchi kerak. Arduino RFID kartasini o'qiganida va identifikator biz kiritgan bilan bir xil bo'lsa, u tugmachalarning to'g'ri birikmasini (parolni) bosadi va keyin enter ni bosadi.

Ta'minotlar

UNO R3 ATMEGA328P

RFID RC522

40PC ERKAKLI ERKAKLARGA 10CM DUPONT

1 -qadam: dasturiy ta'minot

ARDUINO IDE

FLIP 3.4.7

RFID_MODIFY_CODE. INO

USB klaviatura ustasi

2 -qadam: Kod

Kodni yuklang

Kod kreditlari AKASH124 ga o'tadi

#kiritish #qo'shish #SS_PIN 10ni belgilash #RST_PIN 9ni belgilash MFRC522 mfrc522 (SS_PIN, RST_PIN); // MFRC522 misolini yarating.

uint8_t buf [8] = {0}; / * Klaviatura hisoboti buferi */

int cardCount = 0; void setup () {Serial.begin (9600); randomSeed (analogRead (0)); kechikish (200); SPI.begin (); // SPI avtobusini ishga tushiring mfrc522. PCD_Init (); // MFRC522 -ni ishga tushiring

} void loop () {// Yangi kartalarni qidiring, agar (! mfrc522. PICC_IsNewCardPresent ()) {return; } // Kartalardan birini tanlang, agar (! Mfrc522. PICC_ReadCardSerial ()) {return; } // UIDni ketma -ket monitorda ko'rsatish String content = ""; bayt harfi; for (bayt i = 0; i <mfrc522.uid.size; i ++) {content.concat (String (mfrc522.uid.uidByte <0x10? "0": "")); content.concat (String (mfrc522.uid.uidByte , HEX)); } content.toUpperCase (); if (content.substring (1) == "10 4B 58 7E", "30 F1 CA 80") // kirish huquqini bermoqchi bo'lgan karta/kartalarning UID kodini bu erda o'zgartiring {kechiktirish (50);

kechikish (100);

buf [0] = 0; buf [2] = 0x26; // 9 -xat Serial.write (buf, 8); releaseKey ();

kechikish (200);

buf [0] = 0; buf [2] = 0x28; // xat Serial.write kiriting (buf, 8); releaseKey ();

kechikish (900);

cardCount ++; } boshqa {qaytish; }

agar (cardCount = 1) {kechiktirish (50);

buf [0] = 0; // Win buf [2] = 0x28; // xat Serial.write kiriting (buf, 8); releaseKey ();

kechikish (50);

buf [0] = 0; buf [2] = 0x52; // letter Up Serial.write (buf, 8); releaseKey ();

kechikish (50);

buf [0] = 0; buf [2] = 0x52; // letter Up Serial.write (buf, 8); releaseKey ();

kechikish (50);

buf [0] = 0; buf [2] = 0x28; // xat Serial.write kiriting (buf, 8); releaseKey ();

kechikish (50);

buf [0] = 0; buf [2] = 0x28; // xat Serial.write kiriting (buf, 8); releaseKey ();

cardCount-; }}

void releaseKey () {buf [0] = 0; buf [2] = 0; Serial.write (buf, 8); // Chiqarish kaliti}

3 -qadam: (Batafsil)

Kodning bu qismini bosmoqchi bo'lgan tugmachalarga o'zgartiring.

kodni xohlagancha nusxa ko'chiring va joylashtiring. har bir kalit uchun kosponsoring kodlari xaritasini tekshiring. bu yerda topishingiz mumkin.

buf [0] = 0; buf [2] = 0x26; // 9 -xat Serial.write (buf, 8); releaseKey ();

kechikish (200);

Idni karta, qo'ng'iroq yoki ishlatmoqchi bo'lgan narsaning identifikatoriga o'zgartiring

content.toUpperCase (); if (content.substring (1) == "10 4B 58 7E", "30 F1 CA 80") // kirish huquqini bermoqchi bo'lgan karta/kartalarning UID kodini bu erda o'zgartiring {kechiktirish (50);

4 -qadam: Yashirin seriyali klaviatura

2 pinni rasmda ko'rinib turganidek 1 soniya davomida ulang

Flip 3.4.7 faylini yoqish -> USBKeyboard -master / firmware / Arduino -keyboard -0.3.hexDevice -ni tanlang -> Atmega16u2 (yoki sizning chipingiz) ni tanlang Sozlamalar -> aloqa -> usbRun

5 -qadam: BILDI

Qayta ishga tushiring va sinab ko'ring

Arduino usbTest -ni txt faylga ulang va kompyuterni qulflang (kalit + l)

Loyihani BU YERDA topishingiz mumkin

Tavsiya: