Published: January 22, 2021
favorite0 forum0 poll36
By: Arturo Murillo, California State Polytechnic University-Pomona
Hashtags: #CAD #Design #Electrical #Engineering #Mechanical #MechanicalEngineering #Project #Robotics #Solidworks #Teamwork
This project dealt with the concept of the I2C bus using the hardware technique whereas all the data bit transmissions are performed by internal hardware inside the microcontroller. This method allows faster data transmissions but the two SCL and SDA pins must be dedicated. In addition, the PIC 18 microcontroller that we are using merges the two I2C and SPI functions into the same pins thus allowing the use of only one function and not both simultaneously. If we want to use both SPI and I2C, we will need to switch from the use of hardware I2C to software I2C. This new technique will use the concept of software bit banging to perform all the data bit transmission. For sure this technique will not have the same speed performance as the hardware I2c but it does allow the microcontroller to communicate with any I2C device. Since bit banging an be applied to any pin, software I2C also allows the flexibility to choose any GPIO pin for the implementation.