I2C Lab

Mike Pluma
The-Bao Nguyen
EE 444
Spring 2013
Arduino Nano to Uno
I2C Communication
I2C Protocol
• Two Wire Serial Communication (SDA, SCL)
• Built into standard Arduino library (wire.h)
• Up to 127 simultaneous connected peripheral
devices (slaves)
• Unique address directs communication between
Master device and connected slaves
• Interrupt based
The Big Idea
• IR sensors take in data
which is processed by
the Nano
• The Uno asks the Nano
for range data from
the IR sensors
• The Uno uses
rangedata.h to
output the distance in
The Tricky Bit
• In order to mount the
Nano to the sensor
platform as shown in
the picture it is
necessary to desolder
the male header pins
and replace them
with female header
Lab Setup
• Wire the Nano and the
Uno as in the diagram
• You will need to have
IR Lab Completed and
a usable rangedata.h
• Copy rangedata.h
into the UNOrange
working folder
Lab Procedure
• Upload NANOrange
to the Arduino Nano
• Upload UNOrange to
the Arduino Uno
• Open the Serial
Monitor for each and
confirm the data read
and data transfer
• The Nano should
output the Dn it is
reading on it’s serial
• The Uno should output
the Range associated
with that Dn as
referenced in the
rangedata.h lookup
• Modify sample size,
and delay time, max
short range,
• Make sure you have a
good rangedata.h file