You’ve been heard about the I2C before? However, do you know the exactly use of it?
I2C or Inter-Integrated Circuit is a two-wire serial bus that commonly used in computer for extremely low-level communication. I2C can easily found in the microcontrollers, embedded systems, and industrial computers.
DDC is simply an implementation of an I2C bus. The solid reason why you must use I2C because the cost is far cheaper than the Commercial USB to I2C, which can cost up to $100 to $250!
DDC is established in four wires: +5VDC, ground, serial data and serial clock, the pin numbers of which will also vary depending on the type of video port used.

For a 15-pin VGA cable, the pins function will be:
|
Pin |
Description |
| 5 | Ground |
| 9 | +5VDC |
| 12 | Data |
| 15 | Clock |
The I2C with three simple functions as:
I2Copen()
We generally open the I2C bus for communication.
I2Cmsg(short address, unsigned char *sendBuf, int sendBytes, unsigned char *replyBuf, int replyBytes)
Try to Issue an I2C request or read response for the opened I2C bus.
I2Cclose()
Close the opened I2C bus. All functions can be found on source code. [Link]