0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

I2C通信理解与三种IIC数据帧传递过程

FPGA之家 来源:CSDN博客最后一个bug 作者:CSDN博客最后一个 2022-03-15 10:29 次阅读

正文

大家好,我是bug菌!

1I2C通信理解

很多朋友在进行IIC通信协议开发的时候比较迷茫,可能长时间没有用了,就有所忘却,也算正常,不过如果重新围着通信时序图看来看去,那还是比较麻烦的,比如IIC的起始电平条件、停止电平条件、以及数据保持即更新条件等等。

虽然每个器件对IIC通信的波形要求不是太相同,但IIC的通信时序容忍度非常高,基本上相关参数和驱动都是通用的。IIC数据的传输过程,在SCL通信同步时钟节拍的控制下,主机发送数据主动使得总线电平发生变化,供从机检测接收,而当从机接收到数据以后接着主动的拉低SDA来作为应答信号通知主机,如果没有拉低则表示非应答。

之前很多朋友都不太理解IIC的主机是怎么检测到从机应答的,似乎从SDA线上的波形看都好像是主机发送出来的,所以在进行通信波形解析的时候注意一下。

2IIC数据帧

对于通信的应用,重要的并不是所谓的电平变化,而更多的是要了解如何传递数据帧,掌握好数据帧的传递过程和方式。

而不同厂商的数据帧稍微有所差异,比如7位地址、8位地址和10位地址,但总体上大同小异,大家可以参考对应的芯片手册进行学习,这里以最常用的7地址位跟大家介绍:

IIC是一种主从通信方式,通信发起者为主机,主要熟悉三种数据帧传递过程:

1、单次或连续向从机写数据

b250ba0a-9645-11ec-952b-dac502259ad0.png

至于通信数据域内的数据含义,由通信双方共同约定即可,也就是协议的制定。

2、单次或连续向从机读数据

b2652e36-9645-11ec-952b-dac502259ad0.png

读数据的过程主机发送的读写标志位发生变化,在数据部分从机主动控制总线发送数据给主机,然后主机来进行应答,刚好与IIC写数据相反。

3、通讯过程读写切换

b2757a48-9645-11ec-952b-dac502259ad0.png

在通信过程中需要进行读写切换时不需要发送停止,而是应答以后重新发一次起始和从机地址及读写状态,接着进行下面的数据处理即可。

最后bug菌再啰嗦一下 : 对于IIC总线不要忘记通信IO上拉,同时注意电平上的匹配,不然可能会损坏芯片~

原文标题:玩转I2C通信把握好这两点~

文章出处:【微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据
    +关注

    关注

    8

    文章

    7008

    浏览量

    88963
  • 通信
    +关注

    关注

    18

    文章

    6029

    浏览量

    135958
  • IIC总线
    +关注

    关注

    1

    文章

    66

    浏览量

    20298

原文标题:玩转I2C通信把握好这两点~

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    I2C通信开发障碍以及总结

    本文主要讲解的是I2C开发过程中会遇到的坑以及I2C的个人总结经验,很实用,可以i帮助开发人员更好的理解
    的头像 发表于 04-17 16:35 1391次阅读
    <b class='flag-5'>I2C</b><b class='flag-5'>通信</b>开发障碍以及总结

    逼真动画展示I2C、SPI、UART的通信过程

    到目前为止,I2C、SPI和UART等仍然是电子嵌入式设备中最常用的通信协议,本文,我们将剖析这三种协议,让大家清楚、直观的了解它们的功能、优点和局限性,并辅以GIF动图展示。I2C
    的头像 发表于 04-12 08:27 980次阅读
    逼真动画展示<b class='flag-5'>I2C</b>、SPI、UART的<b class='flag-5'>通信</b><b class='flag-5'>过程</b>

    I2C、SPI、UART的通信过程还可以这样理解

    到目前为止,I2C、SPI和UART等仍然是电子嵌入式设备中最常用的通信协议,本文,我们将剖析这三种协议,让大家清楚、直观的了解它们的功能、优点和局限性,并辅以GIF动图展示。一、IIC
    的头像 发表于 05-23 08:10 7141次阅读
    <b class='flag-5'>I2C</b>、SPI、UART的<b class='flag-5'>通信</b><b class='flag-5'>过程</b>还可以这样<b class='flag-5'>理解</b>

    什么是IIC通信I2C

    IIC通信I2CIIC,Inter-Integrated Circuit),两线式串行总线,由PHILIPS公司开发用于连接微控制器及外围设备。它是由
    发表于 08-03 07:46

    STM32F767+STM32CubeMX I2C通信读写EEPROM数据(采用轮询、DMA、中断三种方式)精选资料推荐

    STM32F767+STM32CubeMX I2C通信读写EEPROM数据(采用轮询、DMA、中断三种方式)摘要-前言作为一名STM32的初学者,在学习
    发表于 08-23 09:08

    I2C通信协议的原理是什么

    I2C通信协议I2C通信原理I2C通信原理:I2C
    发表于 02-17 07:16

    I2C的发送过程分享

    序本文将以51单片机的I2C通信协议为例,将涉及到I2C的基本过程以及其中我认为比较重要的点。I2C的基本
    发表于 02-23 06:11

    新手关于I2C理解

    新手关于I2C理解1- 关于I2CI2C是一个通信协议就如同UART一样都是实现数据传递,
    发表于 02-24 06:57

    SPI、I2C、UART三种串行总线协议的区别

    SPI、I2C、UART三种串行总线协议的区别
    发表于 07-17 17:23 0次下载

    I2C总线的工作原理解

    I2C是一双线双向接口,包括一个时钟信号和一个数据信号(SCL和SDA)。在不增加任何其他信号的情况下,一条I2C总线就可以支持多达12个设备。I
    发表于 08-23 15:55 6660次阅读
    <b class='flag-5'>I2C</b>总线的工作原<b class='flag-5'>理解</b>析

    I2C通信协议应该如何学习

    我最近刚做完I2C通信协议的编写与调试,下面介绍一下我从一开始理解夏老师的程序,修改程序,直到下板调试整个的学习过程,希望对大家学习 I2C
    发表于 04-28 08:00 21次下载
    <b class='flag-5'>I2C</b><b class='flag-5'>通信</b>协议应该如何学习

    干货:I2C总线最全教程讲解

      裸机操作篇 本文以星exynos4412为例讲解I2C时序,并挂载在I2C控制器mpu6050陀螺仪的数据读取实例。通过本篇文章,读者可以理解
    的头像 发表于 02-20 15:04 1.3w次阅读
    干货:<b class='flag-5'>I2C</b>总线最全教程讲解

    I2C通信协议:了解I2C Primer、 PMBus和SMBus

    I2C Primer的基本特性和标准,并重点说明在通信实现过程中如何正确使用该协议。从I2C的基本原理出发,我们将介绍其变体子集——系统管理总线(SMBus)和电源管理总线(PMBus
    的头像 发表于 06-15 15:29 5708次阅读
    <b class='flag-5'>I2C</b><b class='flag-5'>通信</b>协议:了解<b class='flag-5'>I2C</b> Primer、 PMBus和SMBus

    i2c采样是上升沿吗?

    数据。在本文中,我们将详细讨论I2C采样的工作原理,采样时机以及如何进行I2C采样。 I2C采样的原理 I2C采样是基于
    的头像 发表于 09-19 17:16 2725次阅读

    蓝牙串口通讯总线——I2C/SPI/UART

    Sensor、Touch、蓝牙模块、WIFI模块等也都兼容这三种通信协议的1以上。那么这通信总线有什么区别呢?工业物联网无线
    的头像 发表于 01-22 09:41 1630次阅读
    蓝牙串口通讯总线——<b class='flag-5'>I2C</b>/SPI/UART