I2C基本电路结构

1、串口的缺点

STM32上串口通信接口少,而使用I2C则通信设备数量不受限制。

2、I2C总线的电路结构

SCL和SDA引脚结构:

**为什么所有的SCL和SDA引脚都设置为开漏输出:**是为了实现逻辑线与

当所有引脚都设置为开漏输出且每个SCL引脚都写1(写1的情况下每个引脚输出的是高阻抗,这样每个引脚就都从电路上断开了,那么中间的总线就悬空了),那么上拉电阻就会把总线拉到高电压。

当所有引脚都设置为开漏输出且除了从机2以外每个SCL引脚都写1(从机2写0表示输出低电压表示接地),那么总线就通过从机2接地,被拉到了低电压。

通信流程1(主机向从机1发送信息为例):

(1)主机发送从机1的地址与从机1建立通信。

(2)之后便可以向从机1发送消息。

通信流程2(从机2向主机发送信息为例):

(1)主机发送从机2的地址与从机2建立通信。

(2)之后从机2便可以向主机发送消息。

3、主机如何发送时钟信号

主机想要发送1时就往SCL(因为是时钟信号)发送1,这样SCL总线悬空就会被上拉电阻拉到高电平

主机想要发送0时就往SCL发送0,这样SCL总线就通过主机接地被拉到了低电平

4、主机如何发送数据

主机想要发送1时就往SDA(因为是数据)发送1,这样SDA总线悬空就会被上拉电阻拉到高电平

主机想要发送0时就往SDA发送0,这样SDA总线就通过主机接地被拉到了低电平

5、从机如何发送数据

从机想要发送1时就往SDA(因为是数据)发送1,这样SDA总线悬空就会被上拉电阻拉到高电平

从机想要发送0时就往SDA发送0,这样SDA总线就通过主机接地被拉到了低电平

相关推荐
辰哥单片机设计27 分钟前
漏水传感器(STM32)
stm32·单片机·嵌入式硬件
恶魔泡泡糖1 小时前
stm32F103C8T6标准库串口接收之多串口基础应用5
stm32·单片机·嵌入式硬件
木子单片机1 小时前
基于51单片机计步器—无线蓝牙APP上传
单片机·嵌入式硬件·51单片机·keil
智者知已应修善业2 小时前
【51单片机只有一个8*8点阵数据如何滚动起来一片595+一组IO+花样】2022-1-15
c++·经验分享·笔记·单片机·蓝桥杯·硬件架构
恒锐丰科技林技术员2 小时前
EG2123A 三相独立半桥驱动芯片解析与工程应用
经验分享·嵌入式硬件·硬件工程
硅基手札2 小时前
【Linux 内核专栏 13】快IO层
linux·服务器·嵌入式硬件
李日华大战鸡红2 小时前
滑膜观测器(学习记录)
stm32·单片机·学习·matlab·机器人
白搞电子2 小时前
ESP32-S31 项目如何制作 Windows 一键烧录包:完整镜像、esptool 与数据边界
windows·stm32·单片机
xiangw@GZ3 小时前
纽扣电池型号
嵌入式硬件
优信电子3 小时前
Raspberry Pi Pico 硬件开发 —— 第二课:MicroPython 从入门到项目实践(LED篇)
单片机·嵌入式硬件·树莓派·micropython·pico·入门教学