Generic library for working with PN532-like chips
Fork of PN532 by
Diff: Ndef.cpp
- Revision:
- 3:4189a10038e6
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Ndef.cpp Thu Nov 21 04:30:49 2013 +0000 @@ -0,0 +1,52 @@ +#include "Ndef.h" +#include "PN532_debug.h" + +// Borrowed from Adafruit_NFCShield_I2C +void PrintHex(const uint8_t * data, const long numuint8_ts) +{ + uint32_t szPos; + for (szPos=0; szPos < numuint8_ts; szPos++) + { + DMSG("0x"); + // Append leading 0 for small values + if (data[szPos] <= 0xF) + DMSG("0"); + DMSG_HEX(data[szPos]&0xff); + if ((numuint8_ts > 1) && (szPos != numuint8_ts - 1)) + { + DMSG(" "); + } + } + DMSG(""); +} + +// Borrowed from Adafruit_NFCShield_I2C +void PrintHexChar(const uint8_t * data, const long numuint8_ts) +{ + uint32_t szPos; + for (szPos=0; szPos < numuint8_ts; szPos++) + { + // Append leading 0 for small values + DMSG_HEX(data[szPos]); + } + DMSG(" "); + for (szPos=0; szPos < numuint8_ts; szPos++) + { + if (data[szPos] <= 0x1F) + DMSG("."); + else + DMSG("%c", (char)data[szPos]); + } + DMSG("\n"); +} + +// Note if buffer % blockSize != 0, last block will not be written +void DumpHex(const uint8_t * data, const long numuint8_ts, const unsigned int blockSize) +{ + int i; + for (i = 0; i < (numuint8_ts / blockSize); i++) + { + PrintHexChar(data, blockSize); + data += blockSize; + } +}