Datasheet
Using the Adafruit NFC Shield with I2C
The Adafruit NFC shield is designed to be used using the I2C by default. I2C only uses two pins (Analog 4 and 5 which
are fixed in hardware and cannot be changed) to communicate and one pin as an 'interrupt' pin (Digital 2 - can be
changed however). What is nice about I2C is that it is a 'shared' bus - unlike SPI and TTL serial - so you can put as
many sensors as you'd like all on the same two pins, as long as their addresses don't collide/conflict. The Interrupt pin
is handy because instead of constantly asking the NFC shield "is there a card in view yet? what about now?"
constantly, the chip will alert us when a NFC target comes into the antenna range.
The shield is drop-in compatible with any Classic Arduino (UNO, Duemilanove, Diecimilla, etc using the ATmega168 or
'328) as well as any Mega R3 or later.
Mega R2 Arduinos work as well but you need to solder a wire from the
(https://adafru.it/aUS)SDA (https://adafru.it/aUS) and (https://adafru.it/aUS)SCL (https://adafru.it/aUS) pin holes to the
Mega's I2C pins on Digital #20 and #21 (https://adafru.it/aUS)
Using with the Arduino Leonardo and Yun
Here are some photos of setting the IRQ pin to digital 6. First, use a sharp hobby knife to cut the trace from IRQ to 2
Solder a wire from IRQ to #6
The IRQ pin is tied to Digital pin #2 by default. However, on the Arduino Leonardo and Yun, digital #2 is used
for I2C which will not work. If using with a Leonardo or Yun, cut the trace beween the IRQ pin and Digital #2
and solder a wire from IRQ pin to Digital #4 or higher. Then change the example code so the the IRQ pin is
declared as the new pin (say #6) not #2
© Adafruit Industries https://learn.adafruit.com/adafruit-pn532-rfid-nfc Page 10 of 42










