These universal Tiny I2C routines provide master I2C support to all three generations of AVR processors.
Two unusual ATtiny processors that provide a TWI peripheral, the ATtiny48 and 88.Ī new version of the TWI peripheral is featured in:.Most of the original ATmega processors, such as the ATmega328P used in the Arduino Uno, ATmega2560 used in the Arduino Mega 2560, and the ATmega1284P.This provides full master I2C support, and is featured in: The USI provides master I2C support to ATtiny processors with a USI peripheral, namely: Over the years different generations of AVR chips have featured three different, incompatible peripherals to handle I2C: Universal Serial interface (USI) peripheral These I2C routines are designed to provide master I2C functionality for all Microchip/Atmel AVR processors. Version 2.0.1 increases the number of bytes you can specify in a single transfer.
The main difference between these routines and the standard Arduino Wire library is that these don't need to use buffers, so have much smaller memory requirements and don't impose a limit on transmissions.
TinyI2C is a set of minimal I2C routines that allow just about any Microchip/Atmel AVR processor to connect to I2C peripherals.įor more information and examples see Tiny I2C Routines for all AVR Microcontrollers.