(12)mifare卡读写器开发心得『转』--整理重发贴

发信人: cxshj 发表时间: 2003-08-22 13:03:39
--------------------------------------------------------------------------------
已看了你前面的帖子,我的eeprom中第1块和第2块数据没有被修改,RFU值也没有被修改!!!
菲利普的提示如下:供后来者参考
1. don't change RFU- bits!
2. don't interrupt WriteE2 command!
3. don't exceed the AC and DC-limits, that are given in the datasheet!
Regarding the nr 3:
a) Make sure, that the load impedance of the antenna including the
EMC-filter does not go below 30 Ohms, i.e. if the MF RC500 " sees" a load
of 25 Ohms /Tx Pin or less, it could be damaged. (The maximum output
current of Itx = 200mA @ 5V is specified in the datasheet.)
This could happen, if the series resonance of the antenna is very close to
the 13.56 MHz: in this case a metal plate or any other environmental
influence detunes the antenna and tunes the low impedance series resonance
to 13.56 MHz.
b) Please make sure, that the hw doesn't exceed the supply voltage limits
as given in the datasheet. This was the problem with some simulators, but
the same could of course happen with a general controller hw.

发信人: irenehan 发表时间: 2003-08-25 12:04:03
--------------------------------------------------------------------------------
我看了看你以前的贴子,你用龙珠对531操作时是用的查询方式,
你用起来怎么样,稳定吗?
我现在对PSAM卡的操作不知道为什么发给它5个字节的命令,它总没有
回应,加上两个字节后,返回62,8E.我是用串口对PSAM卡操作的。WRITE指令
用超级终端测试了一下(向超级终端发送数据,将超级终端设为38400偶校验)
没问题,可能会是什么原因呢?

发信人: irenehan 发表时间: 2003-08-25 12:15:12
--------------------------------------------------------------------------------
你遇到过这种情况吗:程序开始运行时好用,运行一段时间后就没反应了,
必须重新复位531才能好用:(

发信人: jiangbo123 发表时间: 2003-08-26 09:45:43
--------------------------------------------------------------------------------
发信人: irenehan 发表时间: 2003-08-26 10:48:57
--------------------------------------------------------------------------------
我现在不知道为什么,程序跑一段时间后(很短),就在也寻不到卡了,总是超时退出。怎么回事呢?

发信人: jiangbo123 发表时间: 2003-08-26 13:07:09
--------------------------------------------------------------------------------
你可以在启动之后读出所有的寄存器的值,然后不能寻卡之后再次读出寄存器的值,然后比较,应该可以找到问题。
如果所有的寄存器设置都正确,而且操作没有变化,肯定是应该得到同样的结果。

发信人: irenehan 发表时间: 2003-08-29 08:35:46
--------------------------------------------------------------------------------
我的531已经能正常工作了,谢谢你给我的帮助:)
另外我还想问点psam卡方面的问题。
psam卡可以3.3v供电吗?我现在给它发送5字节的命令
它还是没有回应,发给它7个字节,它有时能返回6e 82,
可能是什么原因呢?

发信人: gingko 发表时间: 2003-09-01 10:51:11
--------------------------------------------------------------------------------
e_mail:
luckytcp@163.com

发信人: jiangbo123 发表时间: 2003-09-01 15:08:48
--------------------------------------------------------------------------------
cpu卡里面其实有一个单片机系统,起码要保证这个单片机系统能够正常工作,一般有一个允许电压范围,但是起码也在4v以上,3.3v的供电估计不能正常工作。

发信人: 独孤豹 发表时间: 2003-09-01 15:34:49
--------------------------------------------------------------------------------
6.2  操作条件
6.2.1  操作条件的类别
  本部分定义了操作条件的两个类别。通过触点VCC,接口设备应向卡提供下列通常的电压支持。
A类:5V
B类:3V
因此,卡和接口设备应或者仅工作在A类、或者仅工作在B类、或者工作在A类及B类(以AB类表示)。
    A类卡应能操作在A类和AB类接口设备上。AB类卡应能操作在A类、B类和AB类接口设备上。B类卡应能操作在B类和AB类的接口设备上;应以这种方法设计:在A类操作条件下他们不被损坏。
6.3.2 VCC
    本触点用来提供电源电压Vcc,在下表中,电流值是平均大于1ms,最大电流由卡定义。接口设备应能在规定电压值范围内传送此电流值或更大的电流。
表1  正常操作条件下Vcc的电特性
A类    4.5    5.5
B类      2.7    3.3

发信人: jiangbo123 发表时间: 2003-09-01 16:15:18
--------------------------------------------------------------------------------
很感谢独孤豹翻出标准来,那应该根据标准,你如果想使用3.3V的供电,那么就应该购买使用B类卡。

发信人: 独孤豹 发表时间: 2003-09-02 09:57:30
--------------------------------------------------------------------------------
我很需要一款2.0V以上能工作的

发信人: yyj011 发表时间: 2003-09-02 13:43:11
--------------------------------------------------------------------------------
哪位找兼职高手,本人可以胜任

发信人: jinbiao 发表时间: 2003-09-02 20:51:54
--------------------------------------------------------------------------------
大家好,我用的是RC500,现在发现刷卡一段时间后,发现不能刷卡了,重新启动机子,又可以刷卡了,不知为什么会这样,请各位大哥帮忙解释一下

发信人: jinbiao 发表时间: 2003-09-02 21:19:26
--------------------------------------------------------------------------------
大家好 我用RC500,发现多次刷卡后,就不能再刷卡了,在重新启动机子后又可以刷卡了不知这是什么原因造成的。请各位大哥帮忙解释一下,谢谢

发信人: jiangbo123 发表时间: 2003-09-04 09:20:46
--------------------------------------------------------------------------------
怀疑是程序运行时修改了rc500的寄存器值,另外如果操作卡的时候出现错误,接下来的操作都不会成功,必须重新寻卡。

发信人: gingko 发表时间: 2003-09-04 09:59:32
--------------------------------------------------------------------------------
发信人: jinbiao 发表时间: 2003-09-04 12:06:37
--------------------------------------------------------------------------------
谢谢jiangbo123 ,那我可不可以采用这种方法,就是在刷卡一段时间后,对RC500复位一次,因为我这边一般是刷卡上千次后,有些就会出现不能刷卡,所以我想采用这个办法来弥补一下,不知可不可以?

发信人: Barton 发表时间: 2003-09-12 14:08:09
--------------------------------------------------------------------------------
jiangbo,你好!
  我是深圳飞环电子Barton,请告之你的联系方式!
Best Regards,
**************************************
Barton Luo
FAE Engineer
Fly Ring Electronics Ltd.
Tel:86-755-83165361
Fax:86-755-83165389
E-mail: barton@flyring-sz.com
**************************************

发信人: jiangbo123 发表时间: 2003-09-12 15:06:51
--------------------------------------------------------------------------------
chou_jiang@163.com

发信人: cxshj 发表时间: 2003-09-16 16:36:31
--------------------------------------------------------------------------------
同样的程序在其它板能刷卡,只是这块板新画的,难道画的板有问题

发信人: irenehan 发表时间: 2003-09-17 09:17:59
--------------------------------------------------------------------------------
你的psam卡是通过定时器中断来实现通信的波特率的,所以我想问点有关定时器中断的问题:)
我现在在做pwm语音输出,我用的定时器中断,我注册了一个pwm的设备,然后在这个设备的open函数里注册了这样一个中断。
if ((ret = request_irq(pwm_timer_IRQ, pwm_timer_irq,
                       SA_ interrupt," pwm",NULL)))
{
    printk(" wave_pwm_init: failed to register pwm_timer_IRQ\n");
     return ret;
}
static void pwm_timer_irq( int irq, void *dev_id, struct pt_regs *regs)
{
     status =*TC_SR(0) ;   
    count=1;
    *AIC_EOICR= status;      //* and we are writing to the End Of interrupt Command register to end the interrupt at AIC Level
}
在中断处理程序里我主要实现计数,当count=1表明中断发生,在pwm设备的write函数里判断count的值,进行处理。我是想让程序的中断频率为8k,这样符合语音的采样频率,可是linux进入和退出中断处理程序还需要一定的时间,这样就使得输出结果不正确。同样的方法在sdt(无linux的情况下)可以正确发出声音,我的中断申请和处理有什么问题吗?
发信人: jjy27 发表时间: 2003-09-17 09:25:47
--------------------------------------------------------------------------------
     采用PHILIPS提供的天线设计方案,对某些TYPE B卡不是很好用,如MOTOROLA的MM4000L就是这样,太远了不行,太近还是不行,读SIEMEMS、WATCH data 的TYPE B卡的效果也一般,不知那位大侠能指点迷津,谢谢!

发信人: jiangbo123 发表时间: 2003-09-17 10:19:12
--------------------------------------------------------------------------------
cxshj:有发射波形说明rc500初始化成功了,查查硬件其他方面的问题。
irenehan:你的中断为什么要在open里面注册呢,这样好像不合适吧,最好是在init函数里面注册,采样频率的设置直接操作PWM的寄存器就可以了,我只用过44b0x的pwm,计时是非常准确的。
jjy27 :我直接用原来的硬件,只是将rc500换成rc531就可以支持type b卡了,我用的是atmel的卡。只是读写距离比type a卡要短的多。

发信人: irenehan 发表时间: 2003-09-17 10:28:34
--------------------------------------------------------------------------------
还是在驱动的其他程序中做的?

发信人: jiangbo123 发表时间: 2003-09-17 11:31:55
--------------------------------------------------------------------------------
发信人: irenehan 发表时间: 2003-09-17 11:38:07
--------------------------------------------------------------------------------
我的程序在没有linux时运行正常,加入linux后不正常
是不是和我的中断申请有关系呢?
我采用的sram是70ns的,速度是不是太慢了,这个会不会也有一些影响呢?
另外你用pwm输出语音时,是将整段话输出完毕在返回应用级
还是每输出一个采样点就返回应用呢?

发信人: yyj011 发表时间: 2003-09-17 15:49:19
--------------------------------------------------------------------------------
to jiangbo123 friend:
  其实RC500在复位的时候,前面的 while是不用去掉的。不过飞利浦公司的源代码中在config中是有几个错误需要更改过来的。在VALUE这个函数中也存在一些错误,有一个地方是没有出口的,需要屏蔽掉才能得到正确返回。不过我还好,去年的六月份就调试出来了,没有烧过一片。
发信人: cxshj 发表时间: 2003-09-17 15:50:21
--------------------------------------------------------------------------------
硬件的连线我一根一根的测,都好的呀!再焊块板子,还是不行!难道是器件布局走线有影响,我哭啊!!
这日子如何是好,5555555

发信人: jiangbo123 发表时间: 2003-09-18 12:16:19
--------------------------------------------------------------------------------
cxshj:天线的适配电路的走线好像有些要求,再看看文档吧。

发信人: jiangbo123 发表时间: 2003-09-18 12:22:06
--------------------------------------------------------------------------------
各位搞卡的同行,有什么好的机会,记得通知一声,谢了!呵呵。

发信人: sactor 发表时间: 2003-09-19 14:01:59
--------------------------------------------------------------------------------
RC531关于Type B的开发,请各位大侠指点迷津。

发信人: hying616 发表时间: 2003-09-19 14:03:19
--------------------------------------------------------------------------------
我公司急需熟悉射频卡读卡器的设计人员,请问是否有意在广州工作

发信人: jiangbo123 发表时间: 2003-09-19 16:57:43
--------------------------------------------------------------------------------
呵呵,广州深圳都不错呀。能大概介绍一下公司情况吗?或者给我发email:chou_jiang@163.com

发信人: jiangbo123 发表时间: 2003-09-19 16:59:57
--------------------------------------------------------------------------------
发信人: sactor 发表时间: 2003-09-19 17:22:47
--------------------------------------------------------------------------------
to all:
我在调试TYPE A的时候,还比较顺利,但在写卡,增值,减值的时候容易失败,总是返回MI_FRAMINGERR的错误,但卡上的值已经按我输入的值操作成功了,我不知道是什么原因?各位大虾,有何高见?

发信人: sactor 发表时间: 2003-09-20 15:16:03
--------------------------------------------------------------------------------
我调试RC531的TYPEB时,
M500PcdConfigISOType(TypeB)的设置如下,
{
Clear bitMask(RegControl,0x08);        // disable crypto 1 unit    
WriteRawIO(RegTxControl,0x4b);           // disable force100ASk
WriteRawIO(Reg coderControl,0x20);     // NRZ-L, TypeB baud 106kbps
WriteRawIO(RegRxControl1,0x73);       //
WriteRawIO(RegDe coderControl,0x19);   // BPSK coding
WriteRawIO(RegCRCPresetLSB,0xff);       // set CRC preset to 0xffff
WriteRawIO(RegCRCPresetMSB,0xff);
WriteRawIO(RegTypeBFraming,0x23);     // EGT=0        ETU  Address = 0x17  Page 43
WriteRawIO(RegBPSKDemControl,0x7e);     // ignore EOF, on amp. detect WriteRawIO(RegModConductance,0x05);    // set modulation index at 12%
WriteRawIO(RegCwConductance,0x3f);           
WriteRawIO(RegRxThreshold,0x20);       // Reduce MinLevel & ColLevel.
                                // Increase higher nibble if carrier
                                // present but not detect
WriteRawIO(RegRxWait,0x03); // Rx wait time have to set to minimum (3)
          // for the disturbance filter (RxMultiple)
                    // to work properly
    TYPE = TYPEB;
}
发信人: sactor 发表时间: 2003-09-20 17:25:22
--------------------------------------------------------------------------------
to : cwcyxy jiangbo123
    我现在用的RC531,TYPE A的已经调通了。但TYPE B的还没有办法,ISO14443看了关于TYPE B的部分,但不知道如何进行下去了,你们是如何搞定的?请多指教。非常感谢!
我的E-mail: sactor@sohu.com.
OICQ :29889305

发信人: sactor 发表时间: 2003-09-21 16:15:00
--------------------------------------------------------------------------------
发信人: jiangbo123 发表时间: 2003-09-22 10:30:20
--------------------------------------------------------------------------------
发信人: jiangbo123 发表时间: 2003-09-22 10:33:59
--------------------------------------------------------------------------------
发信人: jiangbo123 发表时间: 2003-09-22 10:39:33
--------------------------------------------------------------------------------
char M500PcdConfigISOType( unsigned char type)
{
   if(type==TYPEA)
   {
     WriteIO(RegTxControl,0x5b);      // force100ASK, TX1 & TX2 enable
     WriteIO(Reg coderControl,0x19);      // Miller coding, 106kbps
     WriteIO(RegRxControl1,0x73);
     WriteIO(RegDe coderControl,0x08);    // Manchester Coding
     WriteIO(RegCRCPresetLSB,0x63);      // set CRC preset to 0x6363
     WriteIO(RegCRCPresetMSB,0x63);
     WriteIO(RegRxThreshold,0xff);       // set max MinLevel & ColLevel.
     TYPE = TYPEA;    
   }
    else
   {
     WriteIO(RegTxControl,0x4b);           // disable force100ASk
     WriteIO(Reg coderControl,0x20);      // NRZ-L, TypeB baud 106kbps
     WriteIO(RegRxControl1,0x73);        //
     WriteIO(RegDe coderControl,0x19);    // BPSK coding
     WriteIO(RegCRCPresetLSB,0xff);      // set CRC preset to 0xffff
     WriteIO(RegCRCPresetMSB,0xff);
     WriteIO(RegTypeBFraming,0);      // EGT=0
     WriteIO(Reg bitFraming,0x07);      // jiang 增加
     WriteIO(RegBPSKDemControl,0x3e);    // ignore EOF, on amp. detect
     WriteIO(RegModConductance,0x06);     // set modulation index at 12%
     WriteIO(RegChannelRedundancy, 0x2c); //RegChannelRedundancy
     WriteIO(RegRxThreshold,0x44);   // Reduce MinLevel & ColLevel.
                     // Increase higher nibble if carrier
                     // present but not detect
     TYPE = TYPEB;
   }
    return MI_OK;
}

发信人: jiangbo123 发表时间: 2003-09-22 10:45:52
--------------------------------------------------------------------------------
接下来就可以request和attrib了,最后就是针对卡的一些密码验证、数据读写操作了。

发信人: sactor 发表时间: 2003-09-22 14:53:29
--------------------------------------------------------------------------------
ro jiangbo123
   现在request 的时候返回的是MI_NOTAGERR,我想这与我用的测试卡用关,我用的是ASK的TypeB类型的纸质存储卡,我还是需要找到CPU卡。

发信人: irenehan 发表时间: 2003-09-22 17:33:03
--------------------------------------------------------------------------------
从哪些资料上能够了解到卡片的具体的交易流程呢?这应该和
具体应用相联系是吧,单从iso7816,iso14443协议是不够的是吧?

发信人: cwcyxy 发表时间: 2003-09-23 12:24:16
--------------------------------------------------------------------------------
type B卡必须遵照iso14443-3的标准,rc531才能对其读写,
但是各个公司的type B卡并不是一样的,如:EGT 每个公司的卡可能不一样,认真看看卡的手册( datasheet),你可能调出来。
还有你的射频和天线非常重要,匹配不好的话,只能读type A,typeB偶尔能读出,但大多数读不出来。有兴趣加我qq:37893427,不过我很少聊天。

发信人: wzhlin 发表时间: 2003-09-23 15:41:36
--------------------------------------------------------------------------------
大伙有用TI开发射频卡的没?TI怎么支持TYPE B卡?可有DEMO

发信人: cxshj 发表时间: 2003-09-25 16:45:04
--------------------------------------------------------------------------------
第一块上去,能刷卡了,过了几小时再上电发现不能正常初始化,有时可以,来来回回几次后,就是不能刷卡
再焊一块,kao,rc500一次都不能初始化,555555555555
就这么几根线,测了几回没发现错误?
难道我再焊一块,或再画一稿
我的天

发信人: cxshj 发表时间: 2003-09-26 12:45:33
--------------------------------------------------------------------------------
发信人: sactor 发表时间: 2003-09-27 15:53:26
--------------------------------------------------------------------------------
发信人: jiangbo123 发表时间: 2003-09-27 16:25:11
--------------------------------------------------------------------------------
不同的是对卡的具体操作,根据 datasheet调试。

发信人: wsy15 发表时间: 2003-09-27 20:42:06
--------------------------------------------------------------------------------
dfgdfd

发信人: wsy15 发表时间: 2003-09-27 20:51:30
--------------------------------------------------------------------------------
我听说深圳华视的RC500代码有问题,是吗?
我把RC500的代码按MC200的方式改写,原代码看起来很麻烦;但调试REQUEST时出现NOTAGER错误,能否给代码参考一下或能帮我看一下代码;谢谢
wsy@lzdigao.net

发信人: jiangbo123 发表时间: 2003-09-28 08:26:35
--------------------------------------------------------------------------------
发信人: cxshj 发表时间: 2003-09-28 11:45:01
--------------------------------------------------------------------------------
在demo程序的初始化为
void     init ( void)
{
  RC500RST    = FALSE;
  RC500_CS    = TRUE;     // Enable the CS for RC500
            
  CmdReceived = FALSE;
  CmdValid    = FALSE;
  Quit        = FALSE;
  LLfReady    = TRUE;
  SendReady   = TRUE;
  Idle        = TRUE;
    .
    .
    .
}
main.h
#define FALSE            0
#define TRUE             1
其中RC500_CS脚为rc500的片选脚,应为低电平选通,为何置1?
且程序还能运行,没想明白,望指点

发信人: jiangbo123 发表时间: 2003-09-28 14:30:29
--------------------------------------------------------------------------------
发信人: cxshj 发表时间: 2003-09-28 16:41:34
--------------------------------------------------------------------------------
ni你最后是如何写的,我程序里RC500_CS=1或RC500_CS =0都能跑起来,神奇了     

发信人: dramatic 发表时间: 2003-09-30 12:26:28
--------------------------------------------------------------------------------
你好,我现在也是只靠 datasheet来做。你有什么联系方式吗?我们可以交流交流,好吗?

发信人: cxshj 发表时间: 2003-09-30 16:27:21
--------------------------------------------------------------------------------
出错返回码是MI_FRAMINGERR,一直返回这个错误

发信人: cxshj 发表时间: 2003-10-09 10:52:23
--------------------------------------------------------------------------------
发信人: ljl_xyz 发表时间: 2003-10-09 15:01:51
--------------------------------------------------------------------------------
发信人: jiangbo123 发表时间: 2003-10-09 17:18:50
--------------------------------------------------------------------------------
只是对rc500的内部操作,与卡和天线没有关系,所以应该是程序有问题。

发信人: jiangbo123 发表时间: 2003-10-09 17:20:09
--------------------------------------------------------------------------------
可以在地址计算之后,进行读写操作之前设置断点,确定地址计算准确无误。

发信人: sactor 发表时间: 2003-10-13 10:11:15
--------------------------------------------------------------------------------
发信人: jiangbo123 发表时间: 2003-10-14 08:27:52
--------------------------------------------------------------------------------
发信人: ahzhong 发表时间: 2003-10-15 09:56:37
--------------------------------------------------------------------------------
发信人: sactor 发表时间: 2003-10-15 14:50:55
--------------------------------------------------------------------------------
有谁用过Atmel的CPU卡(支持Type B)?如果有用过,请告知,非常感激!
sactor@sohu.com

发信人: jiangbo123 发表时间: 2003-10-15 15:20:38
--------------------------------------------------------------------------------
呵呵,但是没有做过atmel的type b协议的cpu卡。

发信人: sactor 发表时间: 2003-10-15 18:38:58
--------------------------------------------------------------------------------
to jiangbo123,tpu,handf,qin_peng,cwcyxy
你们的TYPE B 已经调通了吧?能否介绍以下你们所用的card?指点迷津。我已找到一张西门子的CPU卡(支持Type B).但531的程序还是没有太多的头绪,难道是ISO14443-3,4没看明白?我都懵了。再次感谢各位大虾!

发信人: john wu 发表时间: 2003-10-16 15:13:24
--------------------------------------------------------------------------------
有人需要MFRC531用PIC驱动的程序吗?本人免费奉送

发信人: fdl 发表时间: 2003-10-16 22:41:40
--------------------------------------------------------------------------------
发信人: irenehan 发表时间: 2003-10-17 11:41:33
--------------------------------------------------------------------------------
irenehan@163.com

发信人: srz 发表时间: 2003-10-17 14:08:27
--------------------------------------------------------------------------------
发信人: sactor 发表时间: 2003-10-17 14:37:11
--------------------------------------------------------------------------------
john wu
我也有531的demo程序,可以交流一下吗?
发信人: john wu 发表时间: 2003-10-17 15:25:03
--------------------------------------------------------------------------------
to irenehan:
sorry!我对进度估计的有些乐观,不过最棘手的问题已解决了就是ANTICOLLSION
做完后我准备贴出来。

发信人: ericfM 发表时间: 2003-10-17 15:26:10
--------------------------------------------------------------------------------
谢谢,我也要,可以给我一份吗,谢谢,EIRCFM@SOHU.COM

发信人: lqtd2000 发表时间: 2003-10-18 10:29:58
--------------------------------------------------------------------------------
我在执行M500PcdConfig()函数的时候,在 while (((mi=ReadRawIO(RegCommand) & 0x3F) != 0x3F) && !T2IR);中读到的数据是命令码3F,也就是复位命令,但是在 while ((mii=ReadRawIO(RegCommand) & 0x3F) && !T2IR);中读到的命令码还是3F,也就是说复位操作一直在进行,直到超时结束,我后来把start_timeout(42000);和stop_timeout();都去掉,程序就一直在 while ((mii=ReadRawIO(RegCommand) & 0x3F) && !T2IR);处循环,也就是说一直都没有复位完成,请问这可能是什么原因?

发信人: liujl 发表时间: 2003-10-20 09:43:14
--------------------------------------------------------------------------------
我的一个52,掉电唤醒后,外部IO口可以操作,可是就是外接的RC500工作不起来,不知道为什么?另外,如果再次进入掉电状态后,就再也唤醒不了了,不知道是什么问题。不知道有没有高人愿意说两句?

发信人: lqtd2000 发表时间: 2003-10-20 16:43:43
--------------------------------------------------------------------------------
发信人: sactor 发表时间: 2003-10-20 17:33:38
--------------------------------------------------------------------------------
发信人: dramatic 发表时间: 2003-10-22 13:33:53
--------------------------------------------------------------------------------
你好,我以前弄过cm200的模块,现在准备应用rc500,你能给我提供点资料吗?谢谢了
email: qinmingfan@eyou.com
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值