Schlag mal in den Links nach ode rauch im FOrum und bei Google. Über I2C Bus wurde schon sehr viel geschrieben. Er ist äußerst einfach zu verwenden. Es gibt edliche IC´s die du einfach mit 2 Drähten verbinden musst. Welche Befehle man nutzt hängt natürlich von der Programmiersprache ab. In Basic (Bascom) hat man zum Beispiel ganz einfach Befehle zum senden und abrufen von Bytes. Um das Protokell braucht man sich dann erst mal kaum Gedanken machen.
Schau dir auch mal unsere Roboternetz-Projekte an. Die haben alle einen I2C-Bus. So kann z.B. RNControl oder das rnbfra-Board über den I2C Bus bequem eine Sprachausgabe, Relaiskarte oder Schrittmotorsteuerung bedienen. Alles hängt an den gleichen zwei Ports.

In den aktuellen AVR-Büchern wird der I2C-Bus auch fast immer ausführlich beschrieben.