微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > MCP2030在有源射频标签中的应用

MCP2030在有源射频标签中的应用

时间:07-31 来源:互联网 点击:


图4 激活信号检测电路

如图4所示,MCP2030与控制器通过SPI接口进行连接,SPI接口定义分别为LFDATA、SCCLK、MCCS。该接口命令由16位的控制字组成,命令格式如下:

D13~D15为命令类型,MCP2030根据命令类型确定后续的数据含义并执行相应的操作。其中,0x07为写数据命令,0x06为读数据命令。如果是写数据或读数据命令,则后续D9~D12为寄存器地址,分别指定该命令所要操作的寄存器地址,D1~D8为寄存器数据内容,D0为该命令行校验信息;如果不是写数据或读数据命令,则D0~D12的数据内容无意义。

为使MCP2030正常工作,系统上电复位时要对该器件进行正确的初始化配置。在此设定无线信号数字滤波序列为2 ms有2 ms无,使能通道自动选择功能和解调信号输出功能,初始化程序段如下:

void Init_MCP2030(void) {
  ShiftOutSpi(0xe1,0x41);//reg0 111 0000 1010 0000 1
  ShiftOutSpi(0xe2,0x01);//reg1 111 0001 0000 0000 1
  ShiftOutSpi(0xe4,0x01);//reg2 111 0010 0000 0000 1
  ShiftOutSpi(0xe6,0x01);//reg3 111 0011 0000 0000 1
  ShiftOutSpi(0xe8,0x01);//reg4 111 0100 0000 0000 1
  ShiftOutSpi(0xeb,0x81);//reg5 111 0101 1100 0000 1
  ShiftOutSpi(0xed,0x3f);//reg6 111 0110 1001 1111 1
}

控制器向MCP2030发送数据的程序实现如下:

//数据预先存储在OutData1和OutData2中
void ShiftOutSpi(unsigned char OutData1,unsigned char OutData2) {
  unsigned char i;
  SCCLK=0;
  MCCS=0;
  for(i=0;i8;i++) {
    LFDATA=OutData1 0x80;
    OutData1=OutData11;
    SCCLK=1;
    SCCLK=0;
  }
  for(i=0;i8;i++) {
    LFDATA=OutData2 0x80;
    OutData2=OutData21;
    SCCLK=1;
    SCCLK=0;
  }
  MCCS=1;
}

控制器从MCP2030接收数据的程序段如下:

//数据存储在AFESpiInDataH和AFESpiInDataL中
void ShiftInSpi(void) {
  unsigned char i;
  SCCLK=0;
  MCCS=0;
  for(i=0;i8;i++) {
    SCCLK=1;
    AFESpiInDataH=AFESpiInDataH LFDATA;
    AFESpiInDataH=AFESpiInDataH1;
    SCCLK=0;
  }
  for(i=0;i8;i++) {
    SCCLK=1;
    AFESpiInDataL=AFESpiInDataL LFDATA;
    AFESpiInDataL=AFESpiInDataL1;
    SCCLK=0;
  }
  MCCS=1;
}

结语

本文针对MCP2030的特点具体介绍了其在有源射频标签中的应用。该器件不仅集成有3通道低频接收电路以及3方向的磁场检测接收电路,而且功耗低,具备多种节能工作模式,非常适合于其他要求低功耗无线激活的嵌入式系统应用。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top