I2C协议

I2C总线是一种两线制通信协议,支持多主机操作和不同传输速率,如标准模式、快速模式及高速模式。每个设备通过唯一的7位或10位地址识别,数据传输包括起始和停止条件、字节格式以及响应机制。总线上的仲裁确保了多个主机同时尝试控制总线时的数据完整性。此外,文章还介绍了通用调用地址和各种模式下的电气连接规范。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

位传输

传输数据

7位的地址格式

7位寻址

 GENERAL CALL

BUS SPEEDS

Fast-mode

Fast-mode Plus

Hs-mode

10位寻址

电气连接规范


只要求两条总线线路 一条串行数据线 SDA 一条串行时钟线 SCL 

每个连接到总线的器件都可以通过唯一的地址和一直存在的简单的主机从机关系软件设定地址主机可以作为主机发送器或主机接收器

它是一个真正的多主机总线 如果两个或更多主机同时初始化数据传输可以通过冲突检测和仲裁防止数据被破坏

串行的 8 位双向数据传输位速率在标准模式下可达 100kbit/s 快速模式下可达 400kbit/s 高速 模式下可达 3.4Mbit/s

片上的滤波器可以滤去总线数据线上的毛刺波 保证数据完整

连接到相同总线的 IC 数量只受到总线的最大电容 400pF 限制

位传输

数据的有效性

SDA 线上的数据必须在时钟的高电平周期保持稳定 数据线的高或低电平状态只有在 SCL 线的时钟 信号是低电平时才能改变

 起始和停止条件

 其中一种情况是在 SCL 线是高电平时 SDA 线从高电平向低电平切换 这个情况表示起始条件 当 SCL 是高电平时 SDA 线由低电平向高电平切换表示停止条件

起始和停止条件一般由主机产生 总线在起始条件后被认为处于忙的状态 在停止条件的某段时间后 总线被认为再次处于空闲状态。

传输数据

字节格式

发送到 SDA 线上的每个字节必须为 8 位,每次传输可以发送的字节数量不受限制,每个字节后必须跟一个响应位。首先传输的是数据的最高位 MSB。如果从机要完成一些其他功能后,例如一个 内部中断服务程序,才能接收或发送下一个完整的数据字节,可以使时钟线 SCL 保持低电平迫使主机进入等待状态,当从机准备好接收下一个数据字节并释放时钟线SCL后,数据传输继续。、

响应

数据传输必须带响应。相关的响应时钟脉冲由主机产生,在响应的时钟脉冲期间 发送器释放 SDA 线(高)。

响应的时钟脉冲期间 接收器必须将 SDA 线拉低 使它在这个时钟脉冲的高电平期间保持稳定的低 电平。

当从机不能响应从机地址时 例如它正在执行一些实时函数不能接收或发送 从机必须使数据线保持 高电平 主机然后产生一个停止条件终止传输或者产生重复起始条件开始新的传输

如果从机 接收器响应了从机地址但是在传输了一段时间后不能接收更多数据字节 主机必须再一次 终止传输 这个情况用从机在第一个字节后没有产生响应来表示 从机使数据线保持高电平 主机产生一 个停止或重复起始条件

如果传输中有主机接收器 它必须通过在从机不产生时钟的最后一个字节不产生一个响应 向从机 发送器通知数据结束 从机 发送器必须释放数据线 允许主机产生一个停止或重复起始条件。

产生NACK的五种情况:

1. 总线上不存在具有传输地址的接收器,因此没有设备响应确认。

2. 接收器无法接收或发送,因为它正在执行一些实时功能并且没有准备好开始与主机通信。

3. 在传输过程中,接收方收到它不理解的数据或命令。

4. 在传输过程中,接收方不能再接收任何数据字节。

5. 主接收器必须向从发送器发送传输结束信号。

 仲裁和时钟发生

时钟同步

两个主机可以同时在空闲总线上开始传输,必须有一种方法来决定哪个主机控制总线并完成其传输。这是通过时钟同步和仲裁完成的。在单主机系统中,不需要时钟同步和仲裁。

使用 I2C 接口与 SCL 线的线与连接来执行时钟同步。这意味着 SCL 线上从高电平到低电平的转换会导致相关主机开始计算其低电平周期,并且一旦主时钟变为低电平,它将 SCL 线保持在该状态,直到达到时钟高电平状态。但是,如果另一个时钟仍在其低电平周期内,则该时钟从低电平到高电平的转换可能不会改变 SCL 线的状态。因此,SCL 线由主机以最长的低电平周期保持低电平。具有较短低电平周期的主控在此期间进入高电平等待状态

当所有相关的主机都计算完它们的低电平周期时,时钟线被释放并变为高电平。主时钟和 SCL 线的状态之间没有区别,所有主设备开始计算它们的高电平周期。第一个完成其高电平周期的主机再次将 SCL 线拉低。

这样,一个同步的 SCL 时钟就产生了,它的低电平周期由时钟低电平周期最长的主机决定,它的高电平周期由时钟高电平周期最短的主机决定

仲裁

仲裁与同步一样,指的是仅当系统中使用多个主机时才需要的协议的一部分。从站不参与仲裁程序。只有当总线空闲时,主机才可以开始传输。两个主机可能会在 START 条件的最短保持时间 (tHD;STA) 内生成 START 条件,从而在总线上产生有效的 START 条件。然后需要仲裁来确定哪个主机将完成其传输。

仲裁是一点一点进行的。在每一位期间,当 SCL 为高电平时,每个主机检查 SDA 电平是否与它发送的内容相匹配。这个过程可能需要很多位。只要传输是相同的,masters实际上可以毫无错误地完成整个传输。主机第一次尝试发送高电平,但检测到 SDA 电平为低电平时,主机知道它已失去仲裁并关闭其 SDA 输出驱动器。另一个主人继续完成它的传输。

在仲裁过程中不会丢失任何信息。仲裁失败的主机可以生成时钟脉冲,直到它失去仲裁的字节结束,并且必须在总线空闲时重新启动其事务处理。

如果一个主机也包含一个从机功能并且它在寻址阶段失去仲裁,则有可能获胜的主机正在尝试对其进行寻址。因此,丢失的主机必须立即切换到其从机模式。

下图显示了两个主机的仲裁程序。可能涉及更多,具体取决于有多少主设备连接到总线。当主机产生 DATA1 的内部数据电平与 SDA 线上的实际电平不同时,DATA1 输出被关闭。这不影响获胜的master发起的数据传输。

由于 I2C 总线的控制完全取决于竞争主机发送的地址和数据,因此没有中央主机,总线上也没有任何优先顺序。

如果在一个主机发送重复的 START 或 STOP 条件而另一个主机仍在发送数据时仲裁程序仍在进行中,则存在未定义的条件,以下情况会产生未定义条件:

• 主机1 发送一个重复的START 条件,主机2 发送一个数据位。

• 主机1 发送一个STOP 条件,主机2 发送一个数据位。

• Master 1 发送一个重复的START 条件,而Master 2 发送一个STOP 条件。

7位的地址格式

数据传输遵循下图所示的格式。在启动条件 (S) 之后,发送从机地址。该地址长 7 位,后面跟着第八位,这是数据方向位 (R/W)——“0”表示传输 (WRITE),“1”表示请求数据 (READ).数据传输总是由主机生成的停止条件 (P) 终止。但是,如果主机仍希望在总线上通信,它可以生成重复的起始条件 (Sr) 并寻址另一个从机,而无需首先生成停止条件。在这样的传输中,各种读/写格式的组合是可能的。

可能的数据传输格式是:

• 主发送器发送到从接收器。传输方向没有改变(见下图)。从接收器确认每个字节。

• 主机在第一个字节后立即读取从机(下图)。在第一个确认的时刻,主发送器变成主接收器,从接收器变成从发送器。这个第一个确认仍然由从设备生成。主机生成后续确认。 STOP 条件由主机生成,主机在 STOP 条件之前发送一个非确认 (NACK)。

• 组合格式(下图)。在一次传输中改变方向期间,START 条件和从地址都重复,但 R/W 位反转。如果主接收器发送重复 START 条件,它会在重复 START 条件之前发送一个不确认 (NACK)。

注意事项:

1. 可以使用组合格式,例如,控制串行存储器。必须在第一个数据字节期间写入内部存储器位置。重复 START 条件和从机地址后,即可传输数据。

2. 所有关于先前访问的内存位置的自动递增或递减等的决定均由设备设计者做出。

3. 每个字节后跟一个确认位,如序列中的 A 或A (NACK)块所示。

4. I2C 总线兼容设备必须在收到 START 或重复 START 条件时重置其总线逻辑,以便它们都预期发送从机地址,即使这些 START 条件未根据正确格式定位。

5. START 条件后紧跟 STOP 条件(无效消息)是非法格式。然而,许多设备被设计为在这种情况下正常运行。

6. 连接到总线的每个设备都可以通过唯一地址寻址。通常存在简单的主/从关系,但也可能有多个相同的从站可以同时接收和响应,例如在组广播中。

7位寻址

当发送了一个地址后 系统中的每个器件都在起始条件后将头 7 位与它自己的地址比较 如果一样 器件会认为它被主机寻址 至于是从机 接收器还是从机 发送器都由 R/ W 位决定。从机地址由一个固定和一个可编程的部分构成由于很可能在一个系统中有几个同样的器件从机地址的可编程部分使最大数量的这些器件可以连接到I2C总线上器件可编程地址位的数量由它可使用的管脚决定。

 GENERAL CALL

通用调用地址用于寻址同时连接到 I2C 总线的每个设备。但是,如果设备不需要通用调用结构中提供的任何数据,它可以忽略该地址。如果设备确实需要来自通用调用地址的数据,则它充当从属接收器。主站实际上不知道有多少设备响应广播呼叫。第二个和后面的字节由每个能够处理该数据的从接收器接收。不能处理这些字节之一的从站必须忽略它。一般调用地址的含义总是在第二个字节中指定

有两种情况需要考虑:

• 当最低有效位 B 为“0”时

• 当最低有效位 B 为“1”时

当位 B 为“0”时,第二个字节具有以下定义:

0000 0110 (06h) — 通过硬件复位和写入从地址的可编程部分。在接收到这个 2 字节序列时,所有设计为响应广播地址重置的设备并接收其地址的可编程部分。

0000 0100 (04h) — 由硬件写入从地址的可编程部分。行为如上,但设备不会重置。

0000 0000 (00h) — 此代码不允许用作第二个字节。编程过程的序列发布在相应的器件数据表中。其余代码尚未修复,设备必须忽略它们。

当 B 位为“1”时,忽略 2 字节序列。

Software reset

在一般呼叫 (0000 0000) 之后,发送 0000 0110 (06h) 作为第二个字节会导致软件复位。此功能是可选的,并非所有设备都会响应此命令。在接收到这个 2 字节序列时,所有设计为响应广播地址重置的设备并接收其地址的可编程部分。

START byte

微控制器可以通过两种方式连接到I2C总线。带有片上硬件 I2C 总线接口的微控制器可以被编程为仅被来自总线的请求中断。当设备没有这样的接口时,它必须通过软件不断地监控总线。显然,微控制器监视或轮询总线的次数越多,它执行其预期功能所花费的时间就越少。

因此,快速硬件设备和依赖于软件轮询的相对较慢的微控制器之间存在速度差异.

在这种情况下,数据传输之前可以有一个比正常情况长得多的启动过程(参见图 31)。启动程序包括: • 启动条件 (S) • 启动字节 (0000 0001) • 非应答时钟脉冲 (NACK) • 重复启动条件 (Sr)。

 在 START 条件 S 被需要总线访问的主机发送后,START 字节 (0000 0001) 被发送。因此,另一个微控制器可以以低采样率对 USDA 行进行采样,直到检测到 START 字节中的七个零之一。在 USDA 线上检测到这个低电平后,微控制器可以切换到更高的采样率以找到重复的 START 条件 Sr,然后将其用于同步。硬件接收器在收到重复的 START 条件 Sr 后重置,因此忽略 START 字节。在 START 字节之后产生一个与确认相关的时钟脉冲。这只是为了符合总线上使用的字节处理格式。不允许任何设备确认 START 字节。

BUS SPEEDS

双向总线:

– 标准模式 (Sm),比特率高达 100 kbit/s

– 快速模式 (Fm),比特率高达 400 kbit/s – 快速模式 Plus (Fm+),具有比特率高达 1 Mbit/s

– 高速模式(Hs 模式),比特率高达 3.4 Mbit/s。

• 单向总线:

– 超快速模式 (UFm),比特率高达 5 Mbit/s

Fast-mode

快速模式设备可以以高达 400 kbit/s 的速度接收和传输。最低要求是它们可以与 400 kbit/s 的传输同步;然后他们可以延长 SCL 信号的低电平周期以减慢传输速度。 SDA 和 SCL 线路的协议、格式、逻辑电平和最大容性负载与标准模式 I2C 总线规范相同。快速模式设备向下兼容,可以在 0 至 100 kbit/s I2C 总线系统中与标准模式设备通信。但是,作为标准模式设备,不向上兼容;它们不应包含在快速模式 I2C 总线系统中,因为它们无法遵循更高的传输速率并且会出现不可预测的状态。

与标准模式相比,快速模式 I2C 总线规范具有以下附加功能:

• 最大比特率增加到 400 kbit/s。

• 串行数据(SDA) 和串行时钟(SCL) 信号的时序已经过调整。不需要与其他总线系统(例如 CBUS)兼容,因为它们不能以增加的比特率运行。

• 快速模式设备的输入在SDA 和SCL 输入端包含尖峰抑制和施密特触发器。

• 快速模式设备的输出缓冲器包含对SDA 和SCL 信号下降沿的斜率控制。

• 如果快速模式设备的电源关闭,SDA 和SCL I/O 引脚必须悬空,这样它们才不会阻塞总线。

连接到总线线路的外部上拉设备必须进行调整,以适应快速模式 I2C 总线的较短的最大允许上升时间。对于高达 200 pF 的总线负载,每条总线的上拉设备可以是一个电阻;对于 200 pF 和 400 pF 之间的总线负载,上拉设备可以是电流源(最大 3 mA)或开关电阻电路。

Fast-mode Plus

Fast-mode Plus (Fm+) 设备提高了 I2C 总线传输速度和总总线电容。 Fm+ 设备可以以高达 1 Mbit/s 的比特率传输信息,但它们仍然完全向下兼容快速或标准模式设备,以便在混合速度总线系统中进行双向通信。与快速或标准模式系统保持相同的串行总线协议和数据格式。 Fm+ 设备还提供比快速或标准模式设备更高的驱动电流,使它们能够驱动更长和/或负载更重的总线,从而无需使用总线缓冲器。

Fast-mode Plus 部件中的驱动器足够强大,可以满足 Fast-mode Plus 时序规范,具有与标准模式部件相同的 400 pF 负载。为了向后兼容标准模式,它们还可以容忍标准模式部件的 1 μs 上升时间。在仅存在 Fast-mode Plus 部件的应用中,高驱动强度和对缓慢上升和下降时间的容差允许使用更大的总线电容,只要设置、最短 LOW 时间和最短 HIGH 时间用于 Fast-mode Plus都满足并且下降时间和上升时间不超过标准模式的 300 ns tf 和 1 μs tr 规格。总线速度可以与负载电容进行交易,以将最大电容增加大约十倍。

Hs-mode

高速模式(Hs 模式)设备提供了I2C总线传输速度的巨大飞跃。

Hs模式设备可以以高达 3.4 Mbit/s 的比特率传输信息,但它们仍然完全向下兼容 Fast-mode Plus、Fast- 或 Standard-mode (F/S) 设备,以混合速度进行双向通信总线系统。除了在 Hs 模式传输期间不执行仲裁和时钟同步外,与 F/S 模式系统保持相同的串行总线协议和数据格式。

High speed transfer

为了实现高达3.4 Mbit/s的位传输,对常规 I2C 总线规范进行了以下改进:

• Hs 模式主设备具有用于 SDAH 信号的开漏输出缓冲器和一个开路组合-SCLH 输出上的漏极下拉和电流源上拉电路。该电流源电路缩短了 SCLH 信号的上升时间。任何时候只有一个主机的电流源被启用,并且仅在 Hs 模式期间启用。

• 在多主机系统的Hs 模式传输期间不执行仲裁或时钟同步,这加快了位处理能力。在 F/S 模式下,仲裁过程总是在前面的主码传输之后完成。

Hs 模式主设备生成一个串行时钟信号,其高低比为 1 比 2。这减轻了建立和保持时间的时序要求。

• 作为一个选项,Hs 模式主设备可以有一个内置桥。在 Hs 模式传输期间,Hs 模式设备的高速数据 (SDAH) 和高速串行时钟 (SCLH) 线通过该桥与 F/S 模式设备的 SDA 和 SCL 线分开。这减少了 SDAH 和 SCLH 线路的容性负载,从而加快了上升和下降时间。

• Hs 模式从属设备和F/S 模式从属设备之间的唯一区别是它们的运行速度。 Hs 模式从机在 SCLH 和 SDAH 输出上有开漏输出缓冲器。 SCLH 引脚上的可选下拉晶体管可用于延长 SCLH 信号的低电平,尽管这仅在 Hs 模式传输中的确认位之后才允许。

• Hs 模式设备的输入在 SDAH 和 SCLH 输入处包含尖峰抑制和施密特触发器。

• Hs 模式器件的输出缓冲器结合了SDAH 和SCLH 信号下降沿的斜率控制。

Hs 模式下的串行数据格式

Hs 模式下的串行数据传输格式符合标准模式 I2C 总线规范。

Hs-mode 只能在以下条件后开始(所有这些都在 F/S-mode 中): 1. START 条件 (S) 2. 8 位主代码 (0000 1XXX) 3. 非应答位 (NACK)。

该主机代码有两个主要功能:

• 它允许以 F/S 模式速度在竞争主机之间进行仲裁和同步,从而产生一个获胜的主机。

• 它指示Hs 模式传输的开始。

Hs 模式主机代码是保留的 8 位代码,不用于从机寻址或其他目的。此外,由于每个主机都有自己唯一的主机代码,因此一个 I2C 总线系统上最多可以有 8 个 Hs 模式主机(尽管主机代码 0000 1000 应保留用于测试和诊断目的)。 Hs 模式主设备的主代码是软件可编程的,由系统设计人员选择。

仲裁和时钟同步仅在主代码和非确认位 (A) 的传输期间发生,此后一个获胜的主设备保持活动状态。

主码向其他设备指示 Hs 模式传输即将开始,并且连接的设备必须符合 Hs 模式规范。由于不允许任何设备确认主代码,因此主代码后跟一个不确认 (NACK)。

在非应答位 (A) 和 SCLH 线被上拉至高电平之后,活动主设备切换到 Hs 模式并启用(在时间 tH,参见图 34)电流源上拉SCLH信号电路。由于其他设备可以通过延长 SCLH 信号的低电平周期将串行传输延迟到 tH 之前,当所有设备都已释放 SCLH 线且 SCLH 信号已达到高电平时,活动主机启用其电流源上拉电路,从而加快了 SCLH 信号上升时间的最后部分。

然后,活动主机发送一个重复的起始条件 (Sr),后跟一个 7 位从机地址(或 10 位从机地址)和一个 R/W 位地址,并接收一个确认位 (A)从选定的奴隶。

在重复启动条件和每个确认位 (A) 或非确认位 (A) 之后,活动主设备禁用其电流源上拉电路。这使其他设备能够通过延长 SCLH 信号的低电平周期来延迟串行传输。当所有器件都释放且 SCLH 信号达到高电平时,活动主机再次重新启用其电流源上拉电路,从而加快 SCLH 信号上升时间的最后部分。

在下一个重复启动 (Sr) 之后,数据传输以 Hs 模式继续,并且仅在停止条件 (P) 之后切换回 F/S 模式。为减少主机代码的开销,主机可以链接多个 Hs 模式传输,由重复的 START 条件 (Sr) 分隔。

 

 Ultra Fast-mode

超快速模式 (UFm) 设备提高了 I2C 总线传输速度。 UFm 设备可以以高达 5 Mbit/s 的比特率传输信息。 UFm 设备提供推挽式驱动器,消除了上拉电阻,从而实现更高的传输速率。与 Sm、Fm 或 Fm+ 系统保持相同的串行总线协议和数据格式。 UFm 总线设备与双向 I2C 总线设备不兼容。

10位寻址

10 位寻址扩展了可能的地址数量。具有 7 位和 10 位地址的设备可以连接到相同的 I2C 总线,并且 7 位和 10 位寻址都可以用于所有总线速度模式。目前,10 位寻址还没有被广泛使用。

10 位从机地址由起始条件 (S) 或重复起始条件 (Sr) 后的前两个字节构成。

第一个字节的前七位是1111 0XX的组合,其中最后两位(XX)是10位地址的两个最高有效位(MSB);第一个字节的第八位是确定消息方向的 R/W 位。

虽然保留地址位 1111 XXX 有八种可能的组合,但只有四种组合 1111 0XX 用于 10 位寻址。其余四个组合 1111 1XX 保留用于未来的 I2C 总线增强。

前面针对 7 位寻址描述的读/写格式的所有组合都可以使用 10 位寻址。这里详细介绍几个:

• 主发送器向从接收器发送一个10 位的从地址。

传输方向没有改变(参见图 14)。当 10 位地址跟随 START 条件时,每个从机将从机地址 (1111 0XX) 的第一个字节的前七位与自己的地址进行比较,并测试第八位(R/W 方向位)是否为 0。可能不止一个设备找到匹配项并生成确认 (A1)。所有找到匹配的从机将从机地址 (XXXX XXXX) 的第二个字节的八位与它们自己的地址进行比较,但只有一个从机找到匹配并生成应答 (A2)。匹配的从机保持由主机寻址,直到它接收到停止条件 (P) 或重复的启动条件 (Sr) 后跟一个不同的从机地址

• 主接收器读取具有10 位从地址的从发送器。

传输方向在第二个 R/W 位之后改变(图 15)。直到并包括确认位 A2,该过程与主发送器寻址从接收器所描述的过程相同。在重复 START 条件 (Sr) 之后,匹配的从机记住它之前被寻址过。然后,该从机检查 Sr 之后的从机地址的第一个字节的前七位是否与启动条件 (S) 之后的相同,并测试第八位 (R/W) 是否为 1。

如果匹配,则从机认为它已被寻址为发送器并生成应答 A3。从发送器保持寻址状态,直到它接收到一个停止条件 (P) 或直到它接收到另一个重复的起始条件 (Sr),后跟一个不同的从地址。在重复 START 条件 (Sr) 后,所有其他从机设备也将从机地址 (1111 0XX) 的第一个字节的前七位与它们自己的地址进行比较,并测试第八 (R/W) 位。

但是,它们都不会被寻址,因为 R/W = 1(对于 10 位设备),或者 1111 0XX 从地址(对于 7 位设备)不匹配。

• 组合格式 主机发送数据到从机然后从相同的从机读数据, 相同的主机始终占用着总线。传输方向在第二个R/W位后改变。

 • 组合格式 主机发送数据到一个从机 然后发送数据到另一个从机 图 29 相同的主机始终占 用着总线。

 • 组合格式 在一个串行传输中组合了 10 位和 7 位寻址 图 30 在每个起始条件 S 或重复起 始条件 Sr 后 发送 10 位或 7 位的从机地址 图 30 显示了主机如何发送数据到一个 7 位地址 的从机然后发送数据到另一个 10 位地址的从机 相同的主机始终占用着总线

具有 10 位寻址的从设备对“广播呼叫”的反应方式与具有 7 位寻址的从设备相同。硬件主机可以在“一般呼叫”后传输其 10 位地址。在这种情况下,“广播呼叫”地址字节后跟两个连续的字节,其中包含主发送器的 10 位地址。格式所示,其中第一个数据字节包含主地址的八个最低有效位。

START 字节 0000 0001 (01h) 可以以与 7 位寻址相同的方式位于 10 位寻址之前。

电气连接规范

I2C硬件电路连接如下

在这里插入图片描述

I2C硬件电路特征:

  • 连接到I2C总线上的设备,必须是以开漏或开集电极的方式连接,这样才能实现线与、防止短路
  • SCL和SDA必须接上拉电阻,电阻的大小为4.7K到10K之间。
  • 连接到总线上的设备数量受400pF电容的限制。

参考数据内容来源:ZLG:I2C总线规范中文版、I2C官方标准文档_UM10204

UM10204_4 April 2014: I2C-bus specification and user manual_Rev.6

(40条消息) 一文搞懂I2C协议-硬件基础_i2c硬件电路_奔跑的码仔的博客-优快云博客

(40条消息) I2C中为什么线与?为什么要有上拉电阻?_i2c为什么一定要加上拉_小小verifier的博客-优快云博客

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值