Hola!
Estoy intentando pasar a FPGA todos los módulos I2C que tengo. Me he fabricado un I2C genérico, pero esta parte necesita un hilo nuevo porque es muy denso de explicar, pero es una forma de tratar de hacer I2C de lectura y escritura para la gran mayoría de los casos. De momento os dejo con un ejemplo que maneja un conversor digital a analógico llamado
MCP4725 (enlace para Arduino muy bien explicado).

Se trata de enviar al DAC la cuenta de un contador en intervalos de 10 ms, es decir, que para recorrer los 12 bits (4096 combinaciones) lo hará en unos 41 segundos. En los próximos días subiré un vídeo de demostración.
Adjunto ICE.
Saludos!