由于工艺与温度的偏差,导致I0、C1、C2的值发生变化,A点的纹波大小会发生变化。在RF1为正弦波,也就是数据为1的时候,若A点的纹波大于2(VREF6~VREF3),数据解调将发生错误。比较器在有效数据为1时应输出高电压,但是由于A点电压纹波过大导致比较器输出在数据为1输出13.56 MHz的方波,解调失败。可以通过提高VREF6的值,从而提高A点纹波的容忍度,来解决这个问题。但是若A点电压过高,使A点反应速度低于放大器带宽,数据由1变为0时,A点不能迅速作出反应,产生低电压,所以不能解调出数据0.所以VREF6的值的选取需要适中,最好可以由系统动态配置。
3.3 数据发送
图5为数据发送电路,即调制电路。卡发送到读卡器的是载波为13.56MHz,数据率为847kb/s的幅度调制信号。此电路的原理是采用负载调制的方法达到协议要求的幅度调制的目的。当不需要发送数据时,数据线为0,RF1、RF2为13.56MHz的载波。需要发送数据时,数据线为847 kHz米勒编码的方波。当数据为0时,RF1、RF2上的正弦电压幅值较大。当数据为1时,M1打开,将RF1、RF2上的电压拉低,即RF1、RF2上正弦信号的幅值变低,数据的变化会导致RF1、RF2上载波幅值变化,从而完成数据的发送。
卡向读卡器发送数据时,系统上作出了优化,使模拟电路的设计变得简单可靠。当发送数据1时,由线圈耦合过来的能量大部分由M1释放,从而导致用于芯片正常工作的能量变少,使芯片不能正常工作,交互失败。所以,当向外发送数据时,软件使芯片内部嵌入的8051处理器进入休眠模式,降低整个芯片的功耗,从而使芯片安全渡过电源不足的阶段。
4 仿真与测试
图6为仿真结果,卡与读卡器的交互分为3个阶段:
①二者无数据交互,此时卡开始上电或者处理接收到的数据,此时电源电压稳定;
②接收数据,线圈发出的上是100%的幅度调制信号,DATA_IN为解调后的数据;
③发送数据,卡产生的DATA_OUT是847 kHz的方波,对线圈上的电压进行负载调制,调制后线圈上的电压信号是幅度调制信号,这些信号会被读卡器耦合并解调。