0 голосов

Стоит задача помимо считывания меток организовать некоторое управление arduino через bluetooth.
Команды bluetooth обрабатываются только при поднесении метки к NFC сканеру.
Как организовать одновременную обработку данных?
Arduino uno r3, bluetooth - HC-06, сканер RFID/NFC

На текущий момент код выглядит так:

#include <Wire.h>
#include <SPI.h>
#include <Adafruit_PN532.h>
#define PN532_IRQ   9

Adafruit_PN532 nfc(PN532_IRQ, 100);

int inSize=0;                       
char str[128];                      

void setup(void)
{
  Serial.begin(9600);
  nfc.begin();
  int versiondata = nfc.getFirmwareVersion();
  if (!versiondata)
  {
    Serial.print("Didn't find RFID/NFC reader");
    while(1) {}
  }
  Serial.println("Found RFID/NFC reader");
  nfc.SAMConfig();
  Serial.println("Waiting for a card ...");
}
 
void loop(void)
{
  uint8_t success;
  uint8_t uid[8];
  uint8_t uidLength;

  inSize=0;                     
  memset(str, '\0', 128);       

  success = nfc.readPassiveTargetID(PN532_MIFARE_ISO14443A, uid, &uidLength);

    if (success)
    {
      Serial.println("Found a card");
      Serial.println("UID:");
      nfc.PrintHex(uid, uidLength);
      Serial.println("");
    }

    if (Serial.available() > 0)
    {
      inSize = Serial.available();  
      for (int i = 0; i < inSize; i++)
      {
        str[i] = Serial.read();      
        Serial.print(str[i]);
      }
    }
  delay(1000);
}

(2 баллов) 2 4

Пожалуйста, войдите или зарегистрируйтесь чтобы ответить на этот вопрос.

Добро пожаловать на Бредборд! Сайт вопросов и ответов на тему Arduino, Raspberry Pi и хоббийной электроники в целом. Цель Бредборда — быть максимально полезным. Поэтому мы строго следим за соблюдением правил, боремся с холиворами и оффтопиком.

    За этот месяц ещё никого.

    ...