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

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

3天内不再提示

i2c采样是上升沿吗?

工程师邓生 来源:未知 作者:刘芹 2023-09-19 17:16 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

i2c采样是上升沿吗?

I2C采样是指在I2C总线上对数据进行采样。在I2C总线上,数据的传输是通过2条线传递。一条是时钟线(SCL),另一条是数据线(SDA)。采样的目的是为了准确地读取或写入数据。在本文中,我们将详细讨论I2C采样的工作原理,采样时机以及如何进行I2C采样。

I2C采样的原理

I2C采样是基于I2C通讯协议的,该协议是由Philips公司于1982年开发的。它是一种用于在微控制器和周边设备之间进行通信的串行通信协议。I2C采样可用于读取和写入I2C总线上的数据。I2C总线中的数据传输是通过时钟信号(SCL)和数据信号(SDA)实现的。在I2C通讯中,SCL信号是作为主设备(例如微控制器)控制总线时使用的,而SDA信号则用于数据传输。

I2C采样时机

I2C采样需要知道以下几个时机:
- 起始信号:起始信号同步了设备上的SDA和SCL,并将SDA从高电平拉到低电平,以启动数据传输。
- 地址传输:主设备发送一些位来传输从设备的地址。如果从设备的地址被识别,则进行读取或写入操作。
- 数据传输:数据传输是通过在时钟信号下跟随数据线进行的。
- 结束传输:当主设备停止发送数据时,传输结束并释放总线。

I2C采样的过程

I2C采样可以分为3个步骤:同步,采样和存储。

1. 同步

I2C采样从I2C总线的同步开始,这意味着有一个起始信号。起始信号由主设备发送,作为启动I2C总线通信的信号。起始信号发送时采样器应该识别当前I2C总线上的状态,以便相应地采样和存储。

2. 采样

一旦同步信号被识别和处理,I2C采样通常会按照以下顺序进行:

a) 采样起始位

起始位是I2C通讯协议中一个重要的位。它是起始信号的一部分,用于识别总线上的状态。在I2C总线中,起始位表示SDA线路从高电平拉到低电平。在采样起始位时,I2C采样器通常会搜索总线以确定SDA和SCL的状态,并确定起始位的位置。

b) 采样地址位

地址位是I2C通讯协议中的另一个重要位。I2C采样器可以采样地址位以确定传输是读取还是写入。在数据传输之前,主设备会将设备地址传输到总线上。从设备将根据地址来响应,并发送数据回主设备。在采样地址位时,I2C采样器通常会搜索总线以确定SDA和SCL的状态,并确定数据是读取还是写入。

c) 采样数据位

一旦识别了传输类型(读取/写入),就需要从总线上读取或写入数据。在数据传输期间,主设备将一些数据写入从设备,或者从设备将一些数据传输回主设备。

在采样数据位时,I2C采样器通常会搜索总线以确定SDA和SCL的状态,并确定数据的值。对于每个设备,数据传输的位数都不同。

d) 采样停止位

当主设备停止发送数据时,传输结束并释放总线。停止位是I2C通讯协议中一个重要的位,它是总线传输过程中的最后两个位。I2C采样器将使用停止位来识别总线是否空闲并准备接受下一个传输。

3. 存储

一旦I2C采样器完成了所有必要的采样操作,数据将被存储在内存中,以便进行后续处理。

总结

I2C采样是一种用于读取或写入I2C总线上的数据的方式。I2C采样器通过同步I2C总线、采样起始位、地址位、数据位和停止位等步骤来采集数据。I2C采样的过程需要在适当的时机进行,以确保获得准确的数据。对于I2C采样器的工作原理和采样时机的深入了解,可以帮助用户更好地使用I2C采样器进行数据采集。

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

    关注

    49

    文章

    8880

    浏览量

    165746
  • I2C总线
    +关注

    关注

    8

    文章

    422

    浏览量

    63505
  • SCL
    SCL
    +关注

    关注

    1

    文章

    244

    浏览量

    18075
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    RK平台I2C开发:从硬件原理到实战排查

    在嵌入式开发中,I2C 总线是连接外设的 “桥梁”—— 小到传感器、EEPROM,大到 LCD 驱动器、音频芯片,都离不开它的控制。而瑞芯微(Rockchip)系列芯片作为主流嵌入式方案,其 I2C 控制器的开发是很多工程师的必备技能。
    的头像 发表于 02-05 13:42 2490次阅读
    RK平台<b class='flag-5'>I2C</b>开发:从硬件原理到实战排查

    I2C总线-通信线缆长度的影响及改进措施

    ,功耗比较大,而且容易烧毁I2C接口,而电阻过大,会影响 信号的上升沿时间,也就是影响到了 时钟频率,会出现误码。 (2)远距离通信时,尽量使用 屏蔽 线缆,这个确实是有用的,能够很
    发表于 01-21 06:03

    I2C 为什么只要两根线就能搞定通信?

    到目前为止,我们已经讨论了SPI通信和UART通信的基础知识,现在让我们讨论本系列的最后一个协议,即集成电路间协议(I2C)。如果您曾经构建过使用OLED显示器、气压传感器或陀螺仪/加速度计模块
    的头像 发表于 01-04 09:14 2064次阅读
    <b class='flag-5'>I2C</b> 为什么只要两根线就能搞定通信?

    基于FPGA的I2C控制模块设计

    I2C_WRITE_WDATA.v模块实现I2C写时序,I2C_Controller (I2C控制器)例化了I2C_WRITE_WDATA.
    的头像 发表于 12-26 09:48 6024次阅读
    基于FPGA的<b class='flag-5'>I2C</b>控制模块设计

    AS32X601的I2C模块操作EEPROM详解

    国科安芯推出的AS32X601系列MCU芯片内置的I2C模块提供了符合工业标准的两线串行制接口,可用于MCU和外部I2C设备的通讯。I2C总线使用两条串行线:串行数据线SDA和串行时钟线SCL
    的头像 发表于 12-21 21:39 1600次阅读
    AS32X601的<b class='flag-5'>I2C</b>模块操作EEPROM详解

    具有上升时间加速器的 TCA9416 超低电压 I2C 转换器:特性与应用解析

    )的 TCA9416 超低电压 I2C 转换器,看看它在实际应用中能为我们带来哪些便利和优势。 文件下载: tca9416.pdf 一、器件概述 TCA9416 是一款具有输出使能 (OE) 输入以及上升沿和下降
    的头像 发表于 12-17 10:10 902次阅读

    I2C死锁的问题

    在实际使用过程中,I2C比较容易出现的一个问题就是死锁 ,死锁在I2C中主要表现为:I2C死锁时表现为SCL为高,SDA一直为低。 在I2C主设备进行读写操作的过程中,主设备在开始信
    发表于 12-04 06:00

    I2C的缺点介绍

    上升时间变慢和潜在的信号衰减。对于长距离通信,其他协议,如 UART(通用异步接收器/发送器)或 SPI(串行外设接口)可能更合适。 速度限制: 虽然 I2C 支持不同的速度模式,但其高速模式(高达
    发表于 11-27 06:10

    深入剖析I2C协议

    I2C是由Philips开发的简单的双向两线总线,在深入浅出理解SPI协议中,我们区分了单工,半双工,全双工协议数据流向的区别,根据特征,I2C协议属于半双工协议(即同一时刻,数据单向流动)。此外
    的头像 发表于 08-21 15:10 3922次阅读
    深入剖析<b class='flag-5'>I2C</b>协议

    I2C通信异常问题怎么解决?

    我们在进行I2C通信,发现当写数据时SCL和SDA会有下降沿重合的情况,导致通信失败,请帮忙分析下如何处理? I2C通信代码如下: static bool PS8740_I2C_Wr
    发表于 08-12 07:45

    I2C总线通信,为什么要进行电气隔离?

    I2C总线采用双向二线制,支持多主机多从机通信,具备高可靠性、抗干扰能力强,广泛应用于嵌入式系统中。
    的头像 发表于 08-11 11:04 2681次阅读
    <b class='flag-5'>I2C</b>总线通信,为什么要进行电气隔离?

    第十八章 I2C通信测试

    本章介绍了I2C协议,其物理层用SDA和SCL双线,支持多设备:协议层含起始/停止信号、应答机制等。还讲解W55MH32的I2C外设及初始化,并进行了通信测试代码的分析。
    的头像 发表于 06-19 17:07 1470次阅读
    第十八章 <b class='flag-5'>I2C</b>通信测试

    第十六章 一文浅谈I2C

    本篇文章介绍了W55MH32的I2C总线,其由SDA和SCL构成,具设备寻址等特点,协议含起始 / 停止信号等。阐述主从模式,介绍了相关例程,用于验证 I2C 通信功能。
    的头像 发表于 05-28 16:07 1620次阅读
    第十六章 一文浅谈<b class='flag-5'>I2C</b>

    简单了解I2C接口

    在电子电路的复杂世界里,各种电路模块设备需要相互通信才能协同工作 ,I2C接口就像是电路模块设备间的沟通桥梁,今天就带大家深入了解它。
    的头像 发表于 05-08 14:15 2822次阅读
    简单了解<b class='flag-5'>I2C</b>接口

    基于RT-Thread的I2C(软件) 实践 | 技术集结

    一、软硬件介绍(一)I2C(软件)I2C是一种广泛应用于嵌入式系统中的短距离串行通信协议,支持多主多从设备模式,主机通过时钟信号SCL和数据线SDA与从机进行数据交互。在RT-Thread操作系统中
    的头像 发表于 05-06 18:44 1230次阅读
    基于RT-Thread的<b class='flag-5'>I2C</b>(软件) 实践 | 技术集结