Is there I2C datasheet for Freedom E300?


I want to use I2C block, because to add ADC device on Freedom-e300-arty platform.

However, I can not find the any information about I2C interface.

In E300 manual, there are UART, SPI, etc spec without I2C.

How do I get the information about I2C block(register info, I2C application example, etc…) ??

Thank you.

E300 doesn’t have I2C hardware, but it’s pretty easy to implement it in software using two GPIO pins. You could use polling, or you could get some hardware assist using PWM and interrupts. Google “i2c bit-bang library” and lots of examples come up. Some porting effort will be required as they’ll generally be for other processors.

If you install the Arduino support for HiFive1 you can find examples of using the Arduino I2C library (which it calls “Wire”) in File/Examples/Wire. You can also examine the source code for the Wire library.

Thank you so much Mr. Bruce.

If so, what is the I2C in the sifive-blocks of the Freedom e300 arty platform source?

When I build the source, the I2C module appears in Verilog code.