LEER TAG

Dependents:   NFC_HTM_READ EMULAR_TAGS Escribir_tag NFC_HTM_READ-WRITE

Committer:
mauroar211
Date:
Fri Apr 24 19:02:44 2015 +0000
Revision:
1:a549ef8b142a
Parent:
0:b805b487fbef
SE RESTAURARON LOS ARCHIVO DE LA LIBRER?A;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mauroar211 0:b805b487fbef 1
mauroar211 0:b805b487fbef 2 #ifndef __PN532_SPI_H__
mauroar211 0:b805b487fbef 3 #define __PN532_SPI_H__
mauroar211 0:b805b487fbef 4
mauroar211 0:b805b487fbef 5 #include "mbed.h"
mauroar211 0:b805b487fbef 6 #include "PN532Interface.h"
mauroar211 0:b805b487fbef 7
mauroar211 0:b805b487fbef 8 class PN532_SPI : public PN532Interface
mauroar211 0:b805b487fbef 9 {
mauroar211 0:b805b487fbef 10 public:
mauroar211 0:b805b487fbef 11 PN532_SPI(SPI &spi, PinName ss);
mauroar211 0:b805b487fbef 12 PN532_SPI(SPI *spi, PinName ss);
mauroar211 0:b805b487fbef 13
mauroar211 0:b805b487fbef 14 virtual void begin();
mauroar211 0:b805b487fbef 15 virtual void wakeup();
mauroar211 0:b805b487fbef 16 virtual int8_t writeCommand(const uint8_t *header, uint8_t hlen, const uint8_t *body, uint8_t blen);
mauroar211 0:b805b487fbef 17 virtual int16_t readResponse(uint8_t buf[], uint8_t len, uint16_t timeout);
mauroar211 0:b805b487fbef 18
mauroar211 0:b805b487fbef 19 private:
mauroar211 0:b805b487fbef 20 SPI *_spi;
mauroar211 0:b805b487fbef 21 DigitalOut _ss;
mauroar211 0:b805b487fbef 22 uint8_t command;
mauroar211 0:b805b487fbef 23
mauroar211 0:b805b487fbef 24 bool isReady();
mauroar211 0:b805b487fbef 25 void writeFrame(const uint8_t *header, uint8_t hlen, const uint8_t *body, uint8_t blen);
mauroar211 0:b805b487fbef 26 int8_t readAckFrame();
mauroar211 0:b805b487fbef 27
mauroar211 0:b805b487fbef 28 inline void write(uint8_t data) {
mauroar211 0:b805b487fbef 29 REVERSE_BITS_ORDER(data);
mauroar211 0:b805b487fbef 30 _spi->write(data);
mauroar211 0:b805b487fbef 31 }
mauroar211 0:b805b487fbef 32 inline uint8_t read() {
mauroar211 0:b805b487fbef 33 uint8_t data = _spi->write(0);
mauroar211 0:b805b487fbef 34 REVERSE_BITS_ORDER(data);
mauroar211 0:b805b487fbef 35 return data;
mauroar211 0:b805b487fbef 36 }
mauroar211 0:b805b487fbef 37 };
mauroar211 0:b805b487fbef 38
mauroar211 0:b805b487fbef 39 #endif