AD9361 介绍 (下)

AD936x 系列快速入口

数据接口(LVDS) SPI和附加接口信号在AD9361 介绍 (终)

MGC、Slow AGC、Fast AGC补充: AD9361 补充(上)

通过AD936x Evaluation Software加深了解: AD936x 配置软件介绍 上



九、校准

在这里插入图片描述
AD9361上电后进入SLEEP状态,功耗极低,在AD9361工作之前,时钟必须要完成使能和初始校准。初始化校准是每次AD9361器件上电或使用RESETB引脚硬复位时必须运行的校准。
在这里插入图片描述
如上表所示,一些校准只需要在初始化期间运行一次,在运行期间不需要重新校准,一些校准取决于载波频率、温度或其他参数,需要在初始时和某些事件发生时运行(例如载波频率变化100 MHz以上)。只要AD9361器件通着电(包括SLEEP状态),校准结果就会被存储。
在这里插入图片描述
校准序列状态机控制一部分校准的校准顺序。上表显示了校准控制中的六个校准,当校准序列状态保持0x1的值时,校准完成。由于一些校准取决于先前其他运行校准的结果,如果寄存器在一次写入中使能了多个校准,校准将按照状态机中设置的顺序进行。

  • Rx基带滤波器和Tx基带滤波器校准不被校准序列状态机控制,应该在其他校准都未运行时进行校准。

9.1 BBPLL VCO calibration

BBPLL VCO 校准必须在AD9361初始化期间运行,通过ad9361_bbpll_set_rate函数,最大校准时间可以通过下面的公式计算。
在这里插入图片描述

9.2 RF synthesizer charge pump calibration

在AD9361器件初始化期间,电荷泵校准必须运行一次,通过ad9361_txrx_synth_cp_calib函数。

  • 该校准必须在AD9361首次进入ALERT状态时运行。

9.3 RF synthesizer vco calibration

AD9361内置两个独立频率合成器。使用TDD模式时,Rx频率合成器仅在TXNRX为低电平时启用,Tx合成器仅在TXNRX为高电平时启用。在初始校准期间,建议将AD9361器件设置为FDD模式,可以在处于ALERT状态时使能两个合成器,从而简化校准。

VCO校准通过ad9361_set_rx_lo_freq和ad9361_set_tx_lo_freq函数。校准时间与校准精度需要权衡,对于 FDD,可以使用较长的校准时间来提高精度,因为一旦进入FDD状态,VCO校准可能需要很长时间才能再次进行。

在TDD中,需要调整设置校准时间以满足TDD转换时间,同时尽可能实现精确的校准。在TDD中,每次接收频率合成器上电时(TxRNX从高逻辑电平切换到低逻辑电平时),都会进行Rx VCO 校准。每次发射频率合成器上电时都会进行Tx VCO校准(TxRNX从低逻辑电平切换到高逻辑电平时)。

在某些情况下,例如fast lock synthesizer模式,或者需要HFDD应用时,可以屏蔽(禁用)压控振荡器校准。校准完成可以通过读取Rx PLL Lock 位和 Tx PLL Lock位来获知,PLL被锁定后,该位可以读取到逻辑1。

9.4 baseband Rx analog filter calibration

基带Rx模拟滤波器校准调整三阶巴特沃斯抗混叠滤波器的截止频率。接收滤波器位于接收信号路径中ADC的前方,通常校准至1.4倍基带通道带宽(BBBW)。该校准对于Rx干扰抑制非常重要,BBBW是复数带宽的一半,强制在28 MHz至0.20 MHz之间。为了校准该滤波器,使用专用于该模块的可以进行1-511分频的分频器对BBPLL进行分频。

Rx基带模拟滤波器校准通过ad9361_set_rx_rf_bandwidth函数。Rx基带滤波器校准完成时校准位清零,可以通过控制输出引脚或读取校准控制寄存器来监测。因为滤波器计算使用向上取整来生成分频器,所以会对转折频率进行一些量化。如果量化太大,可能需要调整所需要的BBBW进行补偿。

9.5 baseband Tx analog filter calibration

基带发射模拟滤波器校准调整三阶巴特沃斯抗镜像滤波器的截止频率。发射滤波器位于发射信号路径中DAC之后,通常校准至1.6倍基带带宽。BBBW是复数带宽的一半,强制在20 MHz至0.625 MHz之间。为了校准该滤波器,使用专用于该模块的可以进行1-511分频的分频器对BBPLL进行分频。

Tx基带模拟滤波器校准通过ad9361_set_tx_rf_bandwidth函数。Tx基带滤波器校准完成时校准位清零,可以通过控制输出引脚或读取校准控制寄存器来监测。与基带Rx模拟滤波器类似,Tx模拟滤波器也有转折频率的量化。如果量化变得太大,可能需要调整所需要的BBBW。

9.6 Tx secondary filter

基带发射secondary滤波器是基带发射模拟滤波器之后的可调单极滤波器。TX secondary滤波器转折频率最好设置为基带带宽的5倍,以帮助滤除带外发射噪声。可调用ad9361_set_tx_rf_bandwidth函数对该滤波器编程。

9.7 Rx TIA calibration

Rx跨阻放大器(TIA)位于混频器和Rx基带模拟滤波器之间。TIA有两种增益设置(0 dB增益和6 dB增益),并采用一个单极滤波器,3dB可编程频率为基带带宽的2.5倍,通过ad9361_set_rx_rf_bandwidth函数编程。当AD9361 Rx增益表中的增益指针改变Rx TIA增益设置时,AD9361将自动调整放大器,以保持相同的转折频率。

9.8 Rx ADC setup

RX ADC是一个三阶delta-sigma 调制器,可以高度编程。 ADC寄存器中许多值随采样时钟频率而变化,一些值不变,其正确的初始设置对正常工作至关重要。ADC采用ad9361_set_rx_rf_bandwidth函数进行编程。

9.9 Baseband DC offset calibration

建议在 ALERT 状态下的器件初始化期间运行一次基带DC偏移校准。由于基带信号路径不会随着不同的无线标准或时钟频率而改变,因此不需要再次运行。基带直流偏置校正值存储在所有Rx模拟基带滤波器中,根据当前接收增益表索引,当接收增益改变时,应用相应校正值。该校准在ad9361_bb_dc_offset_calib函数调用期间运行。

9.10 RF DC offset calibration

RF DC偏移校准应在初始化期间运行一次,或者载波频率调整后与之前载波频率相差超过100 MHz时进行校准,该校准在ALERT状态下Rx频率合成器使能时进行。LUT存储RF Rx A输入的校准结果。如果将RF Rx B或C输入与RF Rx A输入一起使用,应该运行校准两次,每次选择一个输入频段。校准每个频段后,从A输入切换到B或C输入不需要再进行校准,由于RF Rx B和C输入使用相同的校准结果,从B切换到C可能需要运行RF DC 偏移校准。

当使用 Full Rx gain表时,RF DC偏移校准仅对接收增益表中指定的索引进行校准。这是因为几个连续的增益步长可能会使前端增益保持相同的设置,而只改变基带增益设置,RF DC偏移校正仅用于消除信号链射频部分引起的DC偏移。通过仅在前端增益实际发生改变时运行校准,校准时间得以缩短。在分割接收增益表的情况下,校准在每个LMT增益索引下运行。

9.11 Rx quadrature tracking

Rx正交跟踪使用Rx数据来持续最小化接收路径中的相位和增益误差。跟踪算法在ad9361_tracking_control函数中配置和使能,一旦AD9361 ENSM进入 Rx或FDD状态,跟踪将开始最小化正交误差。

9.12 Tx quadrature calibration

发射正交校准使用内部校准信号来最小化发射DC偏移、增益和相位误差,从而提高发射链的性能。该校准在ALERT状态下初始化期间通过ad9361_tx_quad_calib函数配置并运行,可以通过读取校准控制寄存器来监控校准的完成。当载波频率改变时,如果需要更新Tx偏移、增益和相位误差校正,可以启动更快的刷新校准。

十、数据接口 CMOS模式

在这里插入图片描述
如下图所示,AD9361数据接口主要有并行数据端口和串行外设接口(SPI),支持AD9361与BBP之间传输数据和控制/状态信息。数据接口有两种工作模式:标准CMOS兼容模式或低压差分信号(LVDS)兼容模式,本节介绍CMOS模式下的数据接口。
在这里插入图片描述

10.1 数据和时钟信号

CMOS模式下,AD9361数据接口可以使用一个或两个并行数据端口(P0、P1)在AD9361和BBP之间传输数据。传输总线使用简单的硬件握手信令来控制,这两个端口可以在FDD模式或TDD模式下工作。在FDD模式下,一半的bit发送数据,另一半接收数据。在 TDD模式下,发送数据和接收数据在不同的时隙,在同一引脚上进行AD9361和BPP之间交替传输。对于不要求快速有效数据速率的应用场景,可以使用单个端口来最大限度地减少与AD9361的连接。数据接口部分信号如下:

  • P0_D[11:0] and P1_D[11:0] : Port 0 (P0)和Port 1 (P1)都是12 比特的并行数据总线(D[11:0]),用于在BBP和AD9361之间传输数据。每条总线在大小和功能上都与另一条相同,因此D[11:0]用于指P0或P1,这些总线可以配置为仅发送、仅接收或双向。

  • DATA_CLK: DATA_CLK信号作为RX数据时的主时钟提供给BBP。在 CMOS模式下,它在内部产生,并在DATA_CLK_P引脚上输出(DATA_CLK_N不连接)。P0、P1使用相同的时钟,具体取决于数据总线配置。BBP使用该主时钟作为接口数据传输和基带数据处理的时序参考。DATA_CLK提供源同步时序,在接收操作期间用双边沿捕捉(DDR)或单上升沿捕捉(SDR)数据。DATA_CLK频率取决于系统架构(如射频通道数量、过采样程度和带宽模式)。

  • FB_CLK: FB_CLK是在CMOS模式下从BBP输出到FB_CLK_P引脚的DATA_CLK的反馈(环回)版本(FB_CLK_N未连接)。FB_CLK用于对突发控制信号(TX_FRAME, ENABLE和TXNRX)进行上升沿采样的源同步时序。FB_CLK还在Tx突发期间为D[11:0] (P0和P1)数据信号提供双边沿捕获(DDR)或单上升沿捕获(SDR)的源同步时序。 FB_CLK必须是DATA_CLK的反馈版本(频率和占空比完全相同),但两个时钟信号之间相位关系没有要求。

  • RX_FRAME : RX_FRAME由AD9361驱动,用于识别RX数据路径(P0和P1)的有效数据。高逻辑电平转换表示帧的开始,RX_FRAME可以设置为突发开始时的单个高电平转换,并在整个突发期间保持高电平;也可以设置为在每个帧开始时具有上升沿的脉冲序列(50%占空比)。在CMOS模式下,该信号从RX_FRAME_P引脚输出(RX_FRAME_N可以不连接)。

  • TX_FRAME: TX_FRAME由BBP驱动,用于识别Tx 数据中的有效数据(P0和P1)。高逻辑电平转换表示帧的开始,BBP可以在突发开始时将发送帧设置为单个高电平转换,并在整个突发期间保持高电平;也可以将发送帧设置为在每帧开始时具有上升沿的脉冲序列(50%占空比)。在CMOS模式下,该信号输入到TX_FRAME_P引脚(TX_FRAME_N接地)。 TX_FRAME指示有效数据之前, AD9361一直传输空数据(全零)。

  • ENABLE : ENABLE由BBP驱动,在TDD模式下提供突发数据传输控制(与TXNRX一起)。脉冲模式下,BBP置位ENABLE至少一个DATA_CLK周期,以表明每个突发的开始,随后再次置位最少一个DATA_CLK周期,来表明每个突发的结束。AD9361内部跟踪ENABLE脉冲序列,以将每个脉冲正确地作为每次突发的开始或结束。
    ENABLE信号也可以配置为电平模式,在这种模式下,边沿转换(不是脉冲)决定ENSM何时在状态之间移动。在TDD模式下,每次ENABLE启用时,采样TXNRX上的电平信号来 控制总线方向。BBP和AD9361分别使用 RX_FRAME和TX_FRAME信号来确定有效数据。
    在FDD模式下,ENABLE信号单独控制ENSM的状态。还有一种可选的独立 FDD模式,ENABLE信号可以重新定义为RxON,来控制接收功能。在这种模式下,BBP独立控制接收功能,从而节省功耗。

  • TXNRX : 当数据总线处于TDD模式时,TXNRX由BBP驱动,提供突发数据传输控制(与ENABLE一起)。当AD9361将ENABLE信号采样为高电平以启动突发时,TXNRX上的电平也会被采样以确定数据方向。在TDD模式下,TXNRX采样为高电平表示发送突发,TXNRX采样为低电平表示接收突发。
    TXNRX信号电平必须在整个数据突发传输期间保持不变(有效的逻辑电平)。在TDD模式下当ENSM处于ALERT状态时,TXNRX信号直接给合成器上电和断电。
    在正常FDD模式下,TXNRX信号被忽略,但必须保持有效的逻辑电平。独立的FDD模式下TXNRX信号可以重新定义为TxON。在这种模式下,BBP独立控制发射功能,从而节省功耗。

10.2 最大时钟速率和信号带宽 CMOS

在这里插入图片描述
上表中列出的数据比较了CMOS数据总线配置在不同工作模式下的最大数据时钟速率和最大射频信号带宽。列出了两种情况下的最大射频带宽:使用避免混叠的最小采样速率采样,以及使用2倍过采样采样。数据速率受最大DATA_CLK速率61.44MHz和最大56MHz模拟滤波器带宽限制。

10.3 单端口半双工模式 CMOS

在这里插入图片描述
上图显示了单端口半双工模式下AD9361与BBP之间的连接,该模式用于TDD且数据速率低于61.44 MHz的通信场景。在这种模式下,总线以双向方式使用,因此数据可以在同一条线上接收或传输。该模式可用于所有接收-发射配置(1R1T、2R1T、1R2T和2R2T),通常用于PCB空间有限或BBP只有一个数据总线端口可用的情况,数据总线可以采用SDR或DDR。在这种模式下,启用的端口在发送和接收操作之间复用,而未使用的端口被禁用。启用端口由SPI寄存器0x012中的Swap Ports位决定。

在 Rx 突发期间,D[11:0]由AD9361驱动,DATA_CLK和D[11:0]之间的建立和保持时间足够以允许BBP使用DATA_CLK捕获数据。在Tx突发期间,D[11:0]由BBP驱动,FB_CLK和D[11:0]之间的建立和保持时间足够以允许AD9361使用FB_CLK捕获数据。

ENABLE和TXNRX依据AD9361 介绍 (中) 8.2节使ENSM处于Rx状态时,总线配置为接收方向(数据从AD9361传输至BBP),当ENSM处于 Tx状态,ENSM将总线改变为传输方向(数据从BBP传输至AD9361)。

数据采用二进制补码格式,D[11]为数字最高有效位,D[0]为最低有效位。换句话说,最大正的采样值是0x7FF,最大负的采样值是0x800。在这种模式下,I和Q数据在数据总线上时间交错传输。

对于1R1T系统,I和Q样本以双向交错方式传输: I, Q, I, Q, … 对于使用两个 Rx/Tx通道的系统,来自射频通道1和2的I和Q样本以4路交错方式传输:I1, Q1, I2, Q2, I1, Q1, I2, Q2, …

对于2R1T或1R2T配置的系统,时钟频率、采样周期和数据捕获时序与2R2T系统的配置相同。但是,在仅使用单个通道的路径中,每个数据组中被禁用的通道I-Q数据未被使用,这些未使用的时隙被AD9361忽略。例如,在仅使用1个发射通道的2R1T系统中,发送数据将有两个未使用的时隙,如下所示:I, Q, X, X, I, Q, X, X, …

BBP可以用任意数据值来填充未使用的X时隙。这些值可以是固定的常数值,或者可以重复前面的数据样本值,来减少总线切换和功耗。

10.31 单口TDD时序 CMOS

在这里插入图片描述
由于0X012=0X2C,D5位为1,下图为单边沿SDR,而不是DDR时序
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
感觉下图上半部分应该是1R1T的时序图,其中0X010寄存器中2R2T Timing位被置位,迫使数据传输格式与2R2T情况相同。这种模式对于需要在单通道和多通道操作之间切换但不能更改数据传输格式的单端口系统非常有用,如果设备未配置为1R1T模式,2R2T位无效。
在这里插入图片描述
单端口TDD模式下Rx路径的总线信号之间的关系图上图所示。这些图中显示了 SDR和DDR模式的时序示例,并且除了1R1T和2R2T场景之外,还显示了1R2T配置,以说明它的时序与2R2T配置相同。Tx路径类似,Tx_FRAME 和Tx 数据必须满足与FB_CLK相关的建立和保持要求。

10.4 单端口全双工模式 CMOS

在这里插入图片描述
单端口全双工模式下AD9361与BBP之间的连接如上图所示,单端口全双工用于FDD模式,数据速率低于30.72 MHz的应用。在这种模式下,总线分为两半,六位专用于接收数据,六位专用于发送数据。该模式可用于所有接收器-发射器配置,总线可以作为SDR或DDR操作。如只有P0端口被使能,并且数据总线被分成独立的子总线。每个子总线同时工作,允许BBP和AD9361之间全双工发送和接收数据。因为在全双工模式下,总线必须完成两倍的数据传输,所以数据总线必须以两倍于TDD模式的速度运行,来实现相同的发送和接收数据速率(因为两者在全双工模式下同时运行)。

传输数据由BBP在P0_D[11:6]上驱动,需要FB_CLK和P0_D[11:6]之间的建立和保持时间足够以允许AD9361使用FB_CLK来捕获数据。接收数据由AD9361在P0_D[5:0]上驱动,需要到达BBP的DATA_CLK和P0_D[5:0]之间的建立和保持时间足够以使BBP能够使用DATA_CLK捕获数据。

传输数据采用二进制补码格式,第一个6比特字节(P0_D[11:6])包含MSB,第二个6比特字节(P0_D[11:6])包含LSB。P0_D[11]是数字最高有效位,P0_D[6]是最低有效位。接收数据也采用二进制补码格式,第一个6比特字节(P0_D[5:0])包含MSB,第二个6比特字节(P0_D[5:0])包含LSB。P0_D[5]是数字最高有效位,P0_D[0]是最低有效位。在这两种情况下,最大正的采样值是0x7FF,第一个字节是0x1F,第二个字节是0x3F。最大负的采样值为0x800,第一个字节为0x20,第二个字节为0x00。

在这种模式下, I和Q数据样本在数据总线上时间交错。对于1R1T系统,数据以4路交错方式传输,如下所示:IMSB, QMSB, ILSB, QLSB, …

对于具有两个 Rx/Tx通道的系统,射频通道1和通道2的I和Q样本以8路交错方式传输,如下所示: I1 MSB, Q1 MSB, I1 LSB, Q1 LSB, I2 MSB, Q2 MSB, I2 LSB, Q2 LSB, …

对于2R1T或1R2T配置的系统,时钟频率、采样周期和数据采集时序与2R2T系统的配置相同。但是,在仅使用单个通道的路径中,每个数据组中禁用通道的I-Q数据未被使用。这些未使用的时隙被AD9361忽略。例如,对于使用发射信道1的2R1T系统,发射突发将有四个未使用的时隙,如下所示:I1 MSB, Q1 MSB, I1 LSB, Q1 LSB, X, X, X, X, …

BBP可以用任意数据值来填充未使用的X时隙。这些值可以是常数值,或者可以重复前面的数据采样值,以降低总线切换,降低功耗。

10.41 CMOS 单端口FDD时序

在这里插入图片描述
上图说明了单端口FDD模式下接收数据路径总线信号之间的关系,发射路径类似。

10.5 CMOS 双端口半双工模式

在这里插入图片描述
双端口半双工模式用于TDD模式和高达122.88 MHz数据速率的应用。在这种模式下,两个数据端口都被使用,P0分配给 I 数据,P1分配给Q数据。端口可以双向工作,数据方向发送还是接收通道有效决定。每条总线都可以SDR或DDR 进行操作。该模式可用于所有接收器-发射器配置。

在接收突发期间,两个端口都由AD9361驱动,DATA_CLK和到达BBP的每个数据样本之间的建立和保持时间足够以使BBP能够使用DATA_CLK来捕获数据。在发射突发期间,两个端口(P0_D[11:0]和P1_D[11:0])都由BBP驱动,FB_CLK和每个端口[11:0]之间的建立和保持时间足够以允许AD9361使用FB_CLK来捕获数据。

数据采用二进制补码格式,其中D[11]为数字最高有效位,D[0]为最低有效位。最大正的采样值为0x7FF,最大负的采样值为0x800。对于1R1T系统,I和Q样本通过P0_D[11:0]上的I数据和P1_D[11:0]上的Q数据进行分离,如下所示:P0: I, I, I, … P1: Q, Q, Q, …

对于具有两个接收通道的系统,来自射频路径1和射频路径2的I和Q样本以双向交错方式传输,P0上的I样本和P1上的Q样本。P0: I1, I2, I1, I2, … P1: Q1, Q2, Q1, Q2, …

对于2R1T或1R2T配置的系统,时钟频率、采样周期和数据采集时序与2R2T系统的配置相同。但是,在仅使用单个通道的路径中,每个数据组中禁用通道的I-Q数据未被使用。例如,对于仅使用发射通道1的2R1T系统,发射突发将有两个未使用的时隙,如下所示:P0: I1, X, I1, X , …P1: Q1, X, Q1, X , …

10.5.1 CMOS 双端口TDD时序

在这里插入图片描述
该时序图说明了双端口时分双工模式接收数据路径总线信号之间的关系,发射时序类似。

10.6 CMOS 双端口全双工模式

在这里插入图片描述
双端口全双工模式(全端口)用于FDD模式和数据速率低于61.44 MHz的应用。在这种模式下,两个数据端口都被利用,P0被分配用于接收数据,P1被分配用于发送数据。每条总线同时工作,允许在BBP和AD9361之间全双工传输发送和接收数据。对于这种模式,每条数据总线必须以两倍于双端口TDD模式的速度运行,以实现相同的发送和接收数据速率。在这种配置中,每条总线都可以作为SDR或 DDR 进行操作。该模式可用于所有接收器-发射器配置。

传输数据由BBP在P1_D[11:0]上驱动,FB_CLK和数据之间的建立和保持时间足够以允许AD9361使用FB_CLK捕获数据。接收数据由AD9361在P0_D[11:0]上驱动,DATA_CLK和到达BBP的数据之间的建立和保持时间足够以使BBP能够使用DATA_CLK来捕获数据。

对于每个方向的单个射频路径,数据传输如下:Px: I, Q, I, Q, I, Q, …

对于具有两个接收/发送通道的系统,来自射频通道1和2的输入和输出样本如下:Px: I1, Q1, I2, Q2, …

对于2R1T或1R2T配置的系统,时钟频率、采样周期和数据捕获时序与2R2T系统的配置相同。在仅使用单个通道的路径中,每个数据组中禁用通道的I-Q数据未被使用。这些未使用的时隙被AD9361忽略。对于使用发射通道1的2R1T系统,发射脉冲串将有两个未使用的时隙,如下所示: P1: I1, Q1, X, X, …

10.6.1 CMOS 双端口FDD时序

在这里插入图片描述
时序图说明了双端口全双工模式下接收路径总线信号之间的关系,发射时序类似。

10.7 数据总线空闲、周转期与数据路径时序参数

P0_D[11:0]和P1_D[11:0]总线信号通常由BBP或AD9361主动驱动。在任何空闲期间,数据总线值都被忽略。即使它们未被使用,两个端口也必须具有有效的逻辑电平。
在这里插入图片描述
上表中列出的时序参数为AD9361与BBP接口提供了指导。
在这里插入图片描述
数据时钟和硬件控制输入信号之间的关系如上图所示

  • Tcp指DATA_CLK时钟周期,其最大61.44MHz
  • Tmp指DATA_CLK 和FB_CLK高和/或低电平的最小脉冲宽度(包括占空比失真、周期抖动、周期抖动和半周期抖动的影响)
  • Tsc指控制信号(ENABLE、TXNRX)对FB_CLK的建立时间
  • Thc指控制信号(ENABLE、TXNRX)对FB_CLK的保持时间

在这里插入图片描述
所有参数之间的关系如上图所示。


从参考手册和寄存器手册等资料学习总结,如有不对的地方,欢迎大家在评论区指正,非常感谢!

  • 17
    点赞
  • 75
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值