Bu bir örnek görev. Kitin 7 görevinden biri — nasıl anlattığımızı görmen için açık.
Kart kendini tanıtıyor
Kartların benzersiz numarasını oku ve deftere yaz
Kartların ve anahtarlığın benzersiz numarasını okumak.

⚠Hattı kurmadan hiçbir modülü takma. Kartta tek 5V pini var; modülleri oraya sığdıramazsın. Breadboard'un o iki uzun sırası kendi içinde baştan sona bağlıdır — bir ucuna elektrik verirsen hattın tamamına gider.
⚠Bu modül 5V görürse yanar ve geri dönüşü yoktur. Kitteki tek 3.3V parça bu. VCC'sini + hattına takma — o hat 5V taşıyor. RC522'nin beslemesi hattan değil, doğrudan kartın 3.3V pininden gelir. Kitte hattı atlayan tek kablo budur.
Önce şunu bil
Kartın içinde pil yok. Anten var, çip var, pil yok. Peki nasıl çalışıyor?
Okuyucu sürekli bir manyetik alan yayıyor. Kartı yaklaştırdığında kartın anteni o alandan elektrik üretiyor — yeterince, çipini bir anlığına uyandırmaya. Uyanan çip tek bir şey söylüyor: kendi numarasını.
Bu numaraya UID deniyor (Unique IDentifier — benzersiz kimlik). Fabrikada yazılıyor ve değişmiyor. Metro kartın, otel oda kartın, apartman kartın hepsi böyle çalışıyor.
Önce besleme hattını kur
Bu bölümü bir kez yapıyorsun, kitin sonuna kadar bir daha dokunmuyorsun. Ama atlarsan Görev 2'de tıkanırsın.
Kartında tek bir 5V pini var. Bu kitte üç modül 5V istiyor: LCD, servo ve hareket sensörü. Üstelik altı parçanın GND'si var. Hepsini karta sığdıramazsın.
Çözüm breadboard'un kenarındaki iki uzun sıra — besleme hattı:
| Karttan | Breadboard'a |
|---|---|
| 5V | + hattı (kırmızı şeritli sıra) |
| GND | − hattı (mavi veya siyah şeritli sıra) |
İki kablo, hepsi bu. Bundan sonra her modülün beslemesi bu hatlardan geliyor.
Neden çalışıyor? Breadboard'un o iki uzun sırası kendi içinde baştan sona bağlı. Bir ucuna elektrik verirsen hattın tamamına gider. Ortadaki delikler ise beşerli gruplar halinde ve yukarıdan aşağı bağlı, soldan sağa değil.
Bir tuzak var: bazı breadboard'larda uzun sıralar ortadan ikiye bölünmüştür. Kenardaki kırmızı ve mavi çizgiye bak — çizgi ortada kesiliyorsa hat da kesiliyor. Kartı bir yarıya, modülü diğer yarıya takarsan hiçbir şey çalışmaz. İki yarıyı kısa bir kabloyla birleştir.
RC522 bu hattı kullanmıyor — tek istisna
Az önce kurduğun + hattı 5V taşıyor. RC522 ise 3.3V ile çalışıyor ve 5V görürse yanıyor.
O yüzden bu modülün beslemesini hattan değil, doğrudan kartın 3.3V pininden alacaksın. Kitte hattı atlayan tek kablo bu.
Neden ikinci bir 3.3V hattı kurmuyoruz? Kurabilirdik. Ama o zaman breadboard'da birbirine tıpatıp benzeyen iki kırmızı şerit olurdu ve yanlış olana takmak modülü yakardı. Tehlikeli istisnayı gizlemek yerine görünür kıldık: bu kabloyu takarken elin hatta değil, karta gidiyor. Farklı davranan parça farklı bağlanıyor.
Bu bir tasarım tercihi ve gerçek sistemlerde de böyle yapılır — karıştırılması ölümcül olan şeyler birbirine benzemez hale getirilir. Priz ile gaz vanası aynı şekle sahip olsaydı ne olurdu, düşün.
Kur
RC522'nin yedi bacağını kullanacaksın. Sırayı karıştırma:
| RC522 | Nereye |
|---|---|
| 3.3V | kartın 3.3V pini — hatta DEĞİL, 5V DEĞİL |
| GND | − hattı |
| RST | D9 — doğrudan karta |
| SDA (SS) | D10 — doğrudan karta |
| MOSI | D11 — doğrudan karta |
| MISO | D12 — doğrudan karta |
| SCK | D13 — doğrudan karta |
Bu modül 5V görürse yanar. Kabloyu takmadan önce nereye gittiğine iki kez bak. Kitteki tek 3.3V parça bu.
Kod
#include <SPI.h>
#include <MFRC522.h>
#define SS_PIN 10
#define RST_PIN 9
MFRC522 okuyucu(SS_PIN, RST_PIN);
void setup() {
Serial.begin(9600);
SPI.begin();
okuyucu.PCD_Init();
Serial.println("Kartini okut.");
}
void loop() {
if (!okuyucu.PICC_IsNewCardPresent()) return;
if (!okuyucu.PICC_ReadCardSerial()) return;
Serial.print("UID: ");
for (byte i = 0; i < okuyucu.uid.size; i++) {
Serial.print(okuyucu.uid.uidByte[i], HEX);
Serial.print(" ");
}
Serial.println();
okuyucu.PICC_HaltA();
}
Araçlar → Serial Monitor aç, hız 9600 olsun. Kartı okuyucuya değdir.
Çalıştı mı?
Kartı her değdirdiğinde ekrana bir satır düşmeli:
UID: A3 5F 21 9C
Aynı kartı tekrar okuttuğunda aynı numara çıkmalı. Farklı kart, farklı numara.
Olmadıysa
| Ne görüyorsun | Ne yap |
|---|---|
| Ekran bomboş, hiç yazı yok | Serial Monitor hızı 9600 mü? |
| "Kartini okut" yazıyor ama kart okunmuyor | SDA (D10) ve RST (D9) kablolarını kontrol et |
| Hiçbir şey olmuyor, modül soğuk | VCC kartın 3.3V pinine takılı mı? Modülün küçük LED'i yanıyor mu? |
| Modül ısındı / kokuyor | VCC'yi + hattına takmışsın — o hat 5V. Hemen çek |
| Kartın güç ışığı sönüyor | + ve − hatlarını birbirine değdirmişsin. USB'yi çek |
Derleme hatası: MFRC522.h not found |
Görev 0'daki kütüphaneyi yüklemeyi atlamışsın |
| Bazen okuyor bazen okumuyor | Kabloları kısalt. SPI uzun kabloyu sevmez |
Şimdi sen yap — numaraları kaydet
Kitindeki iki kartı da okut ve buraya yaz. Görev 2'de bu numaraları koda yazacaksın, kaybetme:
| Kart | UID |
|---|---|
| Beyaz kart | |
| Anahtarlık |
Yanına harf farkına dikkat et: A3 ile a3 aynı ama boşlukları koda birebir taşıyacaksın.
Kendini test et
Soru: Bu numarayı kart mı seçiyor, sen mi, yoksa başkası mı?
Cevabı gör
Hiçbiriniz. Fabrikada yazılıyor ve bir daha değişmiyor.
Bunun iki sonucu var, ikisi de önemli:
İyi haber: Sistemin kartı her seferinde aynı şekilde tanıyacak. Güvenilir.
Kötü haber: Bu numara bir sır değil. Kart onu isteyen herkese söylüyor — senin okuyucuna da, başkasının okuyucusuna da. Yani biri kartını cebindeyken okuyup numarasını öğrenebilir.
Görev 6'da bu açığın ne kadar ciddi olduğunu göreceksin. Şimdilik aklının bir köşesinde dursun: sistem seni tanımıyor, numaranı tanıyor. İkisi aynı şey değil.
Buradan sonrası kutunun içinde. Kalan görevler parçalarla birlikte geliyor; kutudaki QR'ı okutunca sırayla açılıyor.
WhatsApp'tan sipariş verKit sayfasına dön