33 lines
591 B
C++
33 lines
591 B
C++
#pragma once
|
|
#include "serial.h"
|
|
#include "shiftreg.h"
|
|
#include "inputshiftreg.h"
|
|
#include "mfrc522.h"
|
|
#include "softspim.h"
|
|
#include "staticvector.h"
|
|
#include "defines.h"
|
|
|
|
class NfcBoard
|
|
{
|
|
public:
|
|
ShiftReg<NFC_PORTS> csReg;
|
|
InputShiftReg<NFC_PORTS> irqReg;
|
|
SpiMaster spim;
|
|
SVector<Mfrc522, NFC_PORTS> readers;
|
|
SVector<uint8_t, NFC_PORTS> irqPins;
|
|
|
|
static void detectCb(Mfrc522* reader, void* data);
|
|
|
|
NfcBoard();
|
|
|
|
void probe();
|
|
|
|
void printNfcDevices(Serial* serial);
|
|
|
|
int dispatch(char* inBuffer, Serial* serial);
|
|
|
|
uint8_t csToIrq(uint8_t cs);
|
|
};
|
|
|
|
extern NfcBoard nfcBoard;
|