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
PN532/examples/p2p_raw/p2p_raw.ino@0:db8030e71f55, 2016-09-13 (annotated)
- Committer:
- dotnfc
- Date:
- Tue Sep 13 06:01:19 2016 +0000
- Revision:
- 0:db8030e71f55
first commit
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
dotnfc | 0:db8030e71f55 | 1 | // snep_test.ino |
dotnfc | 0:db8030e71f55 | 2 | // send a SNEP message to adnroid and get a message from android |
dotnfc | 0:db8030e71f55 | 3 | |
dotnfc | 0:db8030e71f55 | 4 | #include "SPI.h" |
dotnfc | 0:db8030e71f55 | 5 | #include "PN532_SPI.h" |
dotnfc | 0:db8030e71f55 | 6 | #include "llcp.h" |
dotnfc | 0:db8030e71f55 | 7 | #include "snep.h" |
dotnfc | 0:db8030e71f55 | 8 | |
dotnfc | 0:db8030e71f55 | 9 | PN532_SPI pn532spi(SPI, 10); |
dotnfc | 0:db8030e71f55 | 10 | SNEP nfc(pn532spi); |
dotnfc | 0:db8030e71f55 | 11 | |
dotnfc | 0:db8030e71f55 | 12 | void setup() |
dotnfc | 0:db8030e71f55 | 13 | { |
dotnfc | 0:db8030e71f55 | 14 | Serial.begin(115200); |
dotnfc | 0:db8030e71f55 | 15 | Serial.println("-------Peer to Peer--------"); |
dotnfc | 0:db8030e71f55 | 16 | } |
dotnfc | 0:db8030e71f55 | 17 | |
dotnfc | 0:db8030e71f55 | 18 | uint8_t message[] = { |
dotnfc | 0:db8030e71f55 | 19 | 0xD2, 0xA, 0xB, 0x74,0x65, 0x78, 0x74, 0x2F, 0x70, 0x6C, |
dotnfc | 0:db8030e71f55 | 20 | 0x61, 0x69, 0x6E, 0x68, 0x65, 0x6C, 0x6C, 0x6F, 0x20, 0x77, |
dotnfc | 0:db8030e71f55 | 21 | 0x6F, 0x72, 0x6C, 0x64}; |
dotnfc | 0:db8030e71f55 | 22 | |
dotnfc | 0:db8030e71f55 | 23 | uint8_t buf[128]; |
dotnfc | 0:db8030e71f55 | 24 | |
dotnfc | 0:db8030e71f55 | 25 | void loop() |
dotnfc | 0:db8030e71f55 | 26 | { |
dotnfc | 0:db8030e71f55 | 27 | |
dotnfc | 0:db8030e71f55 | 28 | nfc.write(message, sizeof(message)); |
dotnfc | 0:db8030e71f55 | 29 | delay(3000); |
dotnfc | 0:db8030e71f55 | 30 | |
dotnfc | 0:db8030e71f55 | 31 | int16_t len = nfc.read(buf, sizeof(buf)); |
dotnfc | 0:db8030e71f55 | 32 | if (len > 0) { |
dotnfc | 0:db8030e71f55 | 33 | Serial.println("get a SNEP message:"); |
dotnfc | 0:db8030e71f55 | 34 | for (uint8_t i = 0; i < len; i++) { |
dotnfc | 0:db8030e71f55 | 35 | Serial.print(buf[i], HEX); |
dotnfc | 0:db8030e71f55 | 36 | Serial.print(' '); |
dotnfc | 0:db8030e71f55 | 37 | } |
dotnfc | 0:db8030e71f55 | 38 | Serial.print('\n'); |
dotnfc | 0:db8030e71f55 | 39 | for (uint8_t i = 0; i < len; i++) { |
dotnfc | 0:db8030e71f55 | 40 | char c = buf[i]; |
dotnfc | 0:db8030e71f55 | 41 | if (c <= 0x1f || c > 0x7f) { |
dotnfc | 0:db8030e71f55 | 42 | Serial.print('.'); |
dotnfc | 0:db8030e71f55 | 43 | } else { |
dotnfc | 0:db8030e71f55 | 44 | Serial.print(c); |
dotnfc | 0:db8030e71f55 | 45 | } |
dotnfc | 0:db8030e71f55 | 46 | } |
dotnfc | 0:db8030e71f55 | 47 | Serial.print('\n'); |
dotnfc | 0:db8030e71f55 | 48 | } |
dotnfc | 0:db8030e71f55 | 49 | delay(3000); |
dotnfc | 0:db8030e71f55 | 50 | } |
dotnfc | 0:db8030e71f55 | 51 |