Implementation of I2C Communication Protocol with Microprocessor-based

碩士 === 國立臺北科技大學 === 電子工程系碩士班(碩士在職專班) === 104 === I2C(Inter Integrated Circuit) is a communication protocol which is very widely used in embedded system inter- electrical components. The communication can be implemented easily by using two lines which are data line and clock line. I2C bus is very fle...

Full description

Bibliographic Details
Main Authors: Kuo Shu Lin, 林國書
Other Authors: 李宗演
Format: Others
Language:zh-TW
Online Access:http://ndltd.ncl.edu.tw/handle/urksr9
Description
Summary:碩士 === 國立臺北科技大學 === 電子工程系碩士班(碩士在職專班) === 104 === I2C(Inter Integrated Circuit) is a communication protocol which is very widely used in embedded system inter- electrical components. The communication can be implemented easily by using two lines which are data line and clock line. I2C bus is very flexible and controllable due to it supports multi-master with multi-slave structure and the maximum number of I2C slave devices whom an I2C master device can be connected with is up to 128. This work will use MCUs(Micro Controller Units) to achieve I2C communication inter- electrical components. We can successfully accelerate the speed of data processing and signal responding due to use software buffers for speed up data calculating and processing with switching the direction of GPIO pins very quickly. Experimental results show that the I2C frequency during data transmission can be speed up from 103 Hz to 97.94 KHz and the performance will not be reduced even using software simulation on different brand of MCU vendors which one acts as I2C master device and others act as I2C slave devices. The experiment results show that using software simulation of I2C slave communication not only improved the performance of using traditional method and MCU but also helped the cost-cutting of product development around 1%. The I2C frequency during data transmission by using hardware I2C IP as I2C slave device is 98.43 KHz. The proposed method uses software simulation and calculation, the frequency is 97.94 KHz. All the experiments tested in this work are followed I2C communication principle and specification. Following I2C specification and after experimented the method of software simulation proposed here can receive the data packages sent by I2C master device accurately without data loss or I2C bus hanged up.