I2C se utiliza comúnmente en expansores GPIO, chips de memoria EEPROM/Flash, sensores de temperatura, relojes en tiempo real, controladores LED y toneladas de otros componentes. Si pasas mucho tiempo en busca de piezas nuevo, frescas te probablemente viento con varias piezas de I2C. Afortunadamente es un protocolo que está disponible en la mayoría de los microcontroladores, aunque es un poco más complejo que otros. Aprendizaje es difícil al principio, pero una vez sabes I2C es una poderosa herramienta.
I2C herramientas de interés:
Antes de cavar demasiado profundamente en la comunicación I2C, usted querrá tener algunas cosas en la mano que harán que tu aprendizaje sea más fácil de la experiencia.
1. varias partes de I2C-compatible - Anything goes, mientras es I2C. Si estás escribiendo un controlador maestro necesita algunas cosas para hablar. Yo como sensor de temperatura TMP100 de Texas Instruments es barato (gratis si la muestra) y tiene un simple protocolo (envía una I2C Lee comando para obtener los valores de temperatura). Más recientemente, he comprado algunos expansores GPIO MCP23017 de Microchip que le dan 16 bits de GPIO adicional sobre el bus I2C.
2. algo que tiene un maestro trabajo I2C - querrá algo a prueba/Comparar contra si es posible. Un Arduino con la biblioteca de alambre funcionará, pero últimamente prefiero mi frambuesa Pi con el paquete de i2ctools de Linux. i2cdetect, i2cset, i2cget y i2cdump son invaluables al escribir el código, especialmente código en modo esclavo.
3. osciloscopio. Sé que esto es un grande, pero si se puede trabajar con uno (dueño de uno, pedir prestado uno o ir a un laboratorio donde se puede utilizar uno) es una ayuda super increíble. I2C utiliza dos hilos, para que un alcance de dos canales funciona muy bien. Utilicé mi Rigol DS1052E (modded 100Mhz) y ayudó a una tonelada. Por supuesto, hice la mayor parte del trabajo con él y te digo lo que aprendí, así que espero que sea más fácil para usted.