• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
RFID, podłączenie i kod
#1
Witam!
Po raz kolejny piszę na forum w sprawie problemu z arduino. Kupiłem sobie jakiś czas temu moduł RFID.
Testowałem go lecz nie działał. Świeciła się mała LED ale nie sczytywał kodu. Uznałem, że ja coś źle robię i kiedyś się rozwiąże. No i nadszedł czas na rozwiązanie. Znalazłem na youtubie botlandu i pomyślałem , że tamto na pewno będzie działać. Niestety się myliłem.Obstawiam jednak, że to mój błąd więc obwiniam za to siebie. Oto link do filmu: https://www.youtube.com/watch?v=qGAk_3m8N0Q&t=145s
podłączyłem tak jak na filmie przez konwerter ale wtedy dioda się nie świeciła, więc podłączyłem bezpośrednio do 3,3v w arduino i świeciło. Ale nie zczytywało kodu. Proszę o pomoc ponieważ moduły tego typu są bardzo ciekawe i można zrobić z nich wiele różnych rzeczy.Używam arduino UNO więc powinno działać. Kod:
Kod:
#include <SPI.h>
#include <MFRC522.h>

#define SS_PIN 10
#define RST_PIN 9
MFRC522 rfid(SS_PIN, RST_PIN);
MFRC522::MIFARE_Key key;

void setup() {
 Serial.begin(9600);
 SPI.begin();
 rfid.PCD_Init();
}

void loop() {
 if (rfid.PICC_IsNewCardPresent() && rfid.PICC_ReadCardSerial())
 {
   Serial.print("UID: {");
   Serial.print(rfid.uid.uidByte[0] < 0x10 ? "0x0" : "0x");
   Serial.print(rfid.uid.uidByte[0], HEX);
   Serial.print(rfid.uid.uidByte[1] < 0x10 ? ", 0x0" : ", 0x");
   Serial.print(rfid.uid.uidByte[1], HEX);
   Serial.print(rfid.uid.uidByte[2] < 0x10 ? ", 0x0" : ", 0x");
   Serial.print(rfid.uid.uidByte[2], HEX);
   Serial.print(rfid.uid.uidByte[3] < 0x10 ? ", 0x0" : ", 0x");
   Serial.print(rfid.uid.uidByte[3], HEX);
   Serial.println("}");
   rfid.PICC_HaltA();
   rfid.PCD_StopCrypto1();
 }
}

Pozdrawiam!
 
Odpowiedź
#2
Konwerter jest tylko dla sygnału logicznego, o ile jest w ogóle wymagany. To czy moduł potrzebuje zależy jaki masz egz., większość które widziałem zasilane są z 3.3V i wymagają konwertera. Ale zasilanie 3.3V i GND oczywiście podajesz wprost na styki czytnika, może być z arduino. Jak nie jest z Arduino to przynajmniej GND ma być połączone + piny do transmisji przez konwerter. Schemat w filmie jest prawidłowy, transmisja idzie przez konwerter, a 3.3V i GND jest rozdzielone do konwertera i do czytnika. Oczywiście z drugiej strony konwertera jest 5V z Arduino, GND jest zwarte na płytce konwertera i może być z jednej strony.
 
Odpowiedź
#3
Czyli jak podłącze 3,3V z arduino uno (3,3v i gnd) a sygnał podłącze przez konwerter to powinno działać? Może coś w tedy  źle podłączyłem?
 
Odpowiedź
#4
W filmie jest schemat, czy tam bajkowy rysunek, pokazane jest jak to jest podłączone. Do konwertera też doprowadzasz poza sygnałem logicznym GND i dwa napięcia, między którymi następuje konwersja poziomów logicznych, dlatego to działa. Ja Ci tego lepiej nie wytłumaczę słowami. Może nie działać z wielu powodów, nie wiem co jeszcze tam porobiłeś pisząc "bezpośrednio". Moduły rfid też są w kilku wersjach, może masz na inną częstotliwość.
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości