文章目录
前言
在这篇文章中,我们将深入了解Arduino ESP32上的I2C通信协议。I2C(Inter-Integrated Circuit)是一种常见的串行通信协议,它允许多个设备通过共享的数据线进行通信。我们将介绍I2C的层次结构和基本原理,以及如何在Arduino ESP32上使用I2C通信。这是一个适合初学者入门的教程,希望对您有所帮助。
一、I2C的结构层次
1.1 怎样在两个设备之间传输数据
在两个设备之间进行数据的传输,我们有两种方式,一种是异步传输,一种是同步传输。
比如串口,他是异步传输。
比如I2C,他是同步传输。
1.2 I2C如何传输数据
在I2C中,他有两个引脚
- SCL
SCL为时钟信号,在时钟的同步下,我们就可以进行数据的传输 - SDA
SDA进行数据的传输。
I2C是半双工的,因为他只有一条数据线,只能发送完了再接收或者接收完了再发送,而我们的串口可以一边发送一边接收,串口是全双工的。
1.3 硬件框图
比如说oled的硬件框图,里面有一个ssd1306的主控芯片
如果我们想在屏幕上显示文字,我们只需要编写程序来初