In the previous chapter, we explored the serial ports and the USB bus (with the relative devices) that are peripherals typically used to connect a computer to another computer, or to a device, which is external to the main computer. Starting with this chapter, we are going to present some communication buses that are typically used to connect on-board devices, that is, the main computer with devices which are all placed on the same board.
One of the most important device classes is the Inter-integrated Circuit, which is abbreviated with the acronym I2C. Several devices use the I2C bus to communicate with the CPU, and in this chapter, we will give you a panoramic view of them: we'll see an EEPROM (a non-volatile memory), a DAC (Digital to Analog Converter), and an ADC (Analog to Digital Converter). For all of them, we'll see how these devices can be connected to the BeagleBone Black, and we can use the drivers to get access to their data.