PN532 Driver library This library provides an abstract API to drive the pn532 nfc chip, with I2C/HSU/SPI interface. Its based on the Seeed Studio's Arduino version.

Dependents:   PN532_ReadUid Nfctest2

Revision:
1:b5922b3b3257
Parent:
0:db8030e71f55
diff -r db8030e71f55 -r b5922b3b3257 PN532/examples/android_hce/android_hce.ino
--- a/PN532/examples/android_hce/android_hce.ino	Tue Sep 13 06:01:19 2016 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,135 +0,0 @@
-#include <SPI.h>
-#include <PN532_SPI.h>
-#include <PN532Interface.h>
-#include <PN532.h>
-
-PN532_SPI pn532spi(SPI, 10);
-PN532 nfc(pn532spi);
-
-
-void setup()
-{    
-    Serial.begin(115200);
-    Serial.println("-------Peer to Peer HCE--------");
-    
-    nfc.begin();
-    
-    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();
-}
-
-void loop()
-{
-  bool success;
-  
-  uint8_t responseLength = 32;
-  
-  Serial.println("Waiting for an ISO14443A card");
-  
-  // set shield to inListPassiveTarget
-  success = nfc.inListPassiveTarget();
-
-  if(success) {
-   
-     Serial.println("Found something!");
-                  
-    uint8_t selectApdu[] = { 0x00, /* CLA */
-                              0xA4, /* INS */
-                              0x04, /* P1  */
-                              0x00, /* P2  */
-                              0x07, /* Length of AID  */
-                              0xF0, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, /* AID defined on Android App */
-                              0x00  /* Le  */ };
-                              
-    uint8_t response[32];  
-     
-    success = nfc.inDataExchange(selectApdu, sizeof(selectApdu), response, &responseLength);
-    
-    if(success) {
-      
-      Serial.print("responseLength: "); Serial.println(responseLength);
-       
-      nfc.PrintHexChar(response, responseLength);
-      
-      do {
-        uint8_t apdu[] = "Hello from Arduino";
-        uint8_t back[32];
-        uint8_t length = 32; 
-
-        success = nfc.inDataExchange(apdu, sizeof(apdu), back, &length);
-        
-        if(success) {
-         
-          Serial.print("responseLength: "); Serial.println(length);
-           
-          nfc.PrintHexChar(back, length);
-        }
-        else {
-          
-          Serial.println("Broken connection?"); 
-        }
-      }
-      while(success);
-    }
-    else {
-     
-      Serial.println("Failed sending SELECT AID"); 
-    }
-  }
-  else {
-   
-    Serial.println("Didn't find anything!");
-  }
-
-  delay(1000);
-}
-
-void printResponse(uint8_t *response, uint8_t responseLength) {
-  
-   String respBuffer;
-
-    for (int i = 0; i < responseLength; i++) {
-      
-      if (response[i] < 0x10) 
-        respBuffer = respBuffer + "0"; //Adds leading zeros if hex value is smaller than 0x10
-      
-      respBuffer = respBuffer + String(response[i], HEX) + " ";                        
-    }
-
-    Serial.print("response: "); Serial.println(respBuffer);
-}
-
-void setupNFC() {
- 
-  nfc.begin();
-    
-  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);
-  
-  // configure board to read RFID tags
-  nfc.SAMConfig(); 
-}