当前位置: 首页 > news >正文

STM32学习记录--Day3

今天了解了下I2C:

1.I2C电路结构

I2C通信示意图:

数据传输阶段​

  • ​主→从模式​​(写操作):
    • 主机控制SCL时钟(把SCL拉低)
    • 主机向SDA线发送数据(每次8位+1位ACK)
  • ​主←从模式​​(读操作):
    • 主机仍控制SCL时钟(把SCL拉低)
    • 从机向SDA线发送数据(主机接收)

停止条件(STOP)​

  • 通信结束信号:SCL高电平时,SDA出现上升沿
  • 释放总线控制权

起始位:SCL高时SDA下降沿

停止位:SCL高时SDA上升沿

每个字节后的ACK应答(第9个时钟脉冲)

I2C通信流程:

2.I2C数据帧结构

  • 完整地址 = ​​7位设备地址 + R/W位​​(共8位)
  • R/W位:为1时表示读,为0时表示写

寻址:

3.I2C写字节

SDA前几个波形为地址的数据,后几个波形为写入的字节

4.I2C读字节

5.I2C的速度模式

6.I2C的数据引脚表

http://www.dtcms.com/a/305870.html

相关文章:

  • ubuntu编译opendds
  • STM32CubeMX 生成时钟获取函数的分析
  • OmniParser:提升工作效率的视觉界面解析工具
  • react+ant design怎么样式穿透-tooltip怎么去掉箭头
  • 地下停车场照明节能:技术方案与价值重构
  • day7 替换数字那道题需要多写几次
  • 容器与虚拟机的本质差异:从资源隔离到网络存储机制
  • InfluxDB 3 数据库命名与创建全攻略:规范、限制与实战指南
  • Linux 进程管理与计划任务详解
  • 在 CentOS 系统上安装 Docker
  • ComfyUI自定义图片导出路径
  • SpringBoot 2.7.18 升级 3.4.6
  • PHP语法高级篇(七):MySQL数据库
  • 具身智能 自动驾驶相关岗位的技术栈与能力地图
  • 微信小程序中实现页面跳转的方法
  • 爬虫验证码处理:ddddocr 的详细使用(通用验证码识别OCR pypi版)
  • 第2章 cmd命令基础:常用基础命令(2)
  • 数据驱动的自动驾驶虚拟测试方法
  • 【同济大学】双速率自动驾驶架构LeAD:端到端+LLM,CARLA实测93%路线完成率,性能SOTA!
  • 深入浅出设计模式——创建型模式之原型模式 Prototype
  • 【MySQL 数据库】MySQL索引特性(二)页目录(B和B+树)(非)聚簇索引 索引操作
  • 李宏毅2025《机器学习》-第九讲:大型语言模型评测的困境与“古德哈特定律”**
  • java面向对象高级02——单例类(设计模式)
  • 数据分析师进阶——95页零售相关数据分析【附全文阅读】
  • 【NLP舆情分析】基于python微博舆情分析可视化系统(flask+pandas+echarts) 视频教程 - 微博评论IP地图可视化分析实现
  • 语言模型的评估指标整理
  • Python设计模式详解:策略模式(Strategy Pattern)实战指南
  • LRU (Least Recently Used) 缓存实现及原理讲解
  • Ubuntu22.04中搭建GN编译环境
  • 深入理解缓存淘汰策略:LRU vs LFU 完全解析