I2C
Introduction
The I²C (or Inter-Integrated Circuit) [1] bus is a two-wire serial interface using a master/slave configuration to communicate between one (or more) master devices and slave devices. Commonly used for low-speed on-board peripherals,
Bluewater Systems Experience
Examples of I²C devices used in Bluewater products in the past include:
- AD7414 Digital Temperature Sensor in 6-Pin SOT with SMBus Alert and Over Temperature Pin [2]
- DS1339 Serial Real-Time Clock [3]
- DS2782 Stand-Alone Fuel Gauge IC [4]
- DS4520 9-Bit I²C Nonvolatile I/O Expander Plus Memory [5]
- LIS3LV02DQ Low Voltage 3Axis - 2g/6g Digital Output Linear Accelerometer [6]
- MAX7311 16-Bit I/O Port Expander [7]
- MSM82C54 CMOS Programmable Interval Timer
- SCA3000 3-axis accelerometer [8]
In addition, Bluewater supports (via the Snapper 255 or custom carrier boards) 1-wire to I²C translation via FPGA, and FPGA-based I²C protocol management, relieving the main CPU of time-consuming interfacing tasks.
On the Rig 200, I²C is used to communicate with two MAX7311 I/O extenders, the TLV320AIC23B (Snapper CL15 only), a DS1339U real-time clock, and two DS2782 fuel gauges. In addition, the I²C bus is available to expansion boards via the riser connection, and for end users and debugging via Mictor 10 on the debug expansion board.