Upgrade to Pro — share decks privately, control downloads, hide ads and more …

I2C basics with Arduino

I2C basics with Arduino

An overview about using I2C

mulderp

June 16, 2015
Tweet

More Decks by mulderp

Other Decks in Programming

Transcript

  1. I2C basics
    Munich Arduino Meetup
    June 2015

    View Slide

  2. Communication between
    Master and Slave
    http://www.robot-electronics.co.uk/acatalog/
    I2C_Tutorial.html
    Master

    View Slide

  3. Temperature
    http://hackaday.com/2009/01/02/parts-
    i2c-digital-thermometer-tc74/

    View Slide

  4. Example: EEPROM + clock
    + display
    http://embedded-lab.com/blog/?p=2583

    View Slide

  5. AVR + EEPROM
    http://www.embedds.com/programming-avr-i2c-interface/

    View Slide

  6. I2C with bus pirate
    http://hackaday.com/2014/12/27/learning-i2c-with-the-bus-pirate/

    View Slide

  7. The I2C Learning Shield
    http://i2c-learning-shield.divshot.io/
    U3: Atmel: AT30TS750A (temperature sensor)
    U8: Microchip: MCP7940N (RTC)
    U7: Microchip: MCP3008 (ADC)
    U6: Adesto Tech: AT25SF081 (Flash)
    https://github.com/rheingoldheavy/I2C-Display-Thermometer
    https://github.com/rheingoldheavy/I2C-Display-Clock

    View Slide

  8. Some more devices
    http://www.ladyada.net/library/i2caddr.html

    View Slide

  9. For learning: Bit banging
    http://hackaday.com/2013/08/11/bitbanging-i2c-by-hand/

    View Slide

  10. Basic Signals
    1. SCL: For timing and synchronization
    2. SDA: For address and data
    https://rheingoldheavy.com/i2c-signals/

    View Slide

  11. https://rheingoldheavy.com/changing-the-i2c-library/

    View Slide

  12. hacking time

    View Slide