نوشته اصلی توسط
mohammadhadi
سخت افزارو خریدم برنامه رو ام ریختم فکرمیکنم همه چیزم درست باشه ولی تو پنجره سریال مانیتور فقط کلمه Hello نمایش داده میشه ؟؟؟؟؟
اینم کدی هست که ریختم
فایل پیوست
کدت داره یه جا گیر می کنه .
باید خط به خط بری جلو ببینی کجا داره گیر می کنه.
کدی که من میگم رو آپلود کن ببین TEST Print رو برات چاپ می کنه یا نه !
کد:
#include <Wire.h>
#include <PN532_I2C.h>
#include <PN532.h>
#include <NfcAdapter.h>
PN532_I2C pn532i2c(Wire);
PN532 nfc(pn532i2c);
void setup(void) {
Serial.begin(115200);
Serial.println("Hello!");
nfc.begin();
Serial.println("TEST Print!");
uint32_t versiondata = nfc.getFirmwareVersion();
if (! versiondata) {
Serial.print("Didn't find PN53x board");
while (1); // halt
}
// Got ok data, print it out!
Serial.print("Found chip PN5"); Serial.println((versiondata >> 24) & 0xFF, HEX);
Serial.print("Firmware ver. "); Serial.print((versiondata >> 16) & 0xFF, DEC);
Serial.print('.'); Serial.println((versiondata >> 8) & 0xFF, DEC);
// Set the max number of retry attempts to read from a card
// This prevents us from waiting forever for a card, which is
// the default behaviour of the PN532.
nfc.setPassiveActivationRetries(0xFF);
// configure board to read RFID tags
nfc.SAMConfig();
Serial.println("Waiting for an ISO14443A card");
}
void loop(void) {
boolean success;
uint8_t uid[] = { 0, 0, 0, 0, 0, 0, 0 }; // Buffer to store the returned UID
uint8_t uidLength; // Length of the UID (4 or 7 bytes depending on ISO14443A card type)
// Wait for an ISO14443A type cards (Mifare, etc.). When one is found
// 'uid' will be populated with the UID, and uidLength will indicate
// if the uid is 4 bytes (Mifare Classic) or 7 bytes (Mifare Ultralight)
success = nfc.readPassiveTargetID(PN532_MIFARE_ISO14443A, &uid[0], &uidLength);
if (success) {
Serial.println("Found a card!");
Serial.print("UID Length: "); Serial.print(uidLength, DEC); Serial.println(" bytes");
Serial.print("UID Value: ");
for (uint8_t i = 0; i < uidLength; i++)
{
Serial.print(" 0x"); Serial.print(uid[i], HEX);
}
Serial.println("");
// Wait 1 second before continuing
delay(1000);
}
else
{
// PN532 probably timed out waiting for a card
Serial.println("Timed out waiting for a card");
}
}
اگه چاپ کنه یعنی nfc.begin رو رد می کنه و تو به دست آوردن ورژن میمونه .
اگر رد نکنه یعنی تو nfc.begin میمونه .
به احتمال زیاد تو ورژن می مونه .
یه تست بگیر
پینهای i2c ات رو درست وصل کردی دیگه
جا به جا بزنی کار نمی کنه