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

32I2C通信协议

异步时序的:非常依赖硬件外设的支持,比如串口是很难用软件来模拟的;但节省了一根时钟线的资源

同步时序可以极大地降低单片机对硬件电路的依赖,时钟线停止了,发送方和接收方都会停止

一.I2C通信协议简介

二.硬件电路 

从机设备地址在I2C协议里分为7位地址和10位地址

不同型号的芯片地址都是不同的,相同型号的芯片地址都是一样的,如果有相同的芯片挂载在同一条总线上,需要用到地址中的可变部分(可以在电路中改变)

三.时序基本单元(六大模块)

 低电平主机放数据,高电平从机读数据

低电平从机放数据,高电平主机读数据 

四.I2C时序

 

由于地址指针自增的特性,可以实现在指定地址开始,按顺序连续写入或读出多个字节,多次执行最后一个字节的内容即可

 

 读数据结束后,主机发送非应答,从机就会释放总线,将SDA控制权交给主机

从机控制SDA发送一个字节的权利,开始于读写标志位为1,结束于主机给应答位为1.


http://www.kler.cn/a/232866.html

相关文章:

  • 【PowerHarmony】电鸿蒙学习记录-编写helloworld!
  • React Hooks在现代前端开发中的应用
  • 基于海思soc的智能产品开发(两个图像处理来源)
  • ubuntu连接orangepi-zero-2w桌面的几种方法
  • 基于标签相关性的多标签学习
  • ssm100医学生在线学习交流平台+vue(论文+源码)_kaic
  • android 音频调试技巧
  • 25、数据结构/二叉树相关练习20240207
  • vue项目开发vscode配置
  • 《学成在线》微服务实战项目实操笔记系列(P1~P83)【上】
  • FastAPI使用ORJSONResponse作为默认的响应类型
  • MyBatis之动态代理实现增删改查以及MyBatis-config.xml中读取DB信息文件和SQL中JavaBean别名配置
  • 极值图论基础
  • VScode为什么选择了Electron,而不是QT?
  • Leecode之环形链表
  • c#进程(Process)常用方法
  • Linux运用fork函数创建进程
  • Ubuntu22.04 gnome-builder gnome C 应用程序习练笔记(一)
  • 教你用C++开发 身份证号码日期提取工具
  • 除夕快乐(前端小烟花)
  • 【C++ 二分】电脑游戏
  • 聊聊JIT优化技术
  • Android9~Android13 某些容量SD卡被格式化为内部存储时容量显示错误问题的研究与解决方案
  • 贪心算法入门题(算法村第十七关青铜挑战)
  • Get Ready!这些 ALVA 应用即将上线 Vision Pro!
  • C语言:分支与循环