首先CC1101C的功耗怎么测?我测的结果是:电池供电,电流表串联在供电电路上,整个设备1.9mA,拔掉CC1101之后是1.2mA;如果只测CC1101,串联在CC1101的VCC上是1.6mA,串联在CC1101的GND上是0.8mA。单独测量CC1101的功耗是该串VCC上还是GND上,结果怎么不一样啊?
第二个问题是这个功耗还是有点大,别人都说可以做到40uA,选最低占空比0.195%,21mA * 0.195% = 40uA左右。
求大神帮忙看一下,问题出在哪,下面是我的程序,多谢了。
void init_WOR(void)
{
halSpiStrobe(CCxxx0_SIDLE);
//3ms/1.9s = 0.158%,选择占空比0.195%, WOR_RES = 0, MCSM2 = 6
halSpiWriteReg(CCxxx0_MCSM2, 0x06);
//使能RC校验
halSpiWriteReg(CCxxx0_MCSM0, 0x18);
//Teven0 = 3ms/0.195% = 1.538s; T_rx_timeout = 3ms;
// T_event0 = (750 / f_xosc) * EVENT0 * 2**(5*WOR_RES)
//得出 EVENT0 = 0xD045
halSpiWriteReg(CCxxx0_WOREVT1, 0xff);
halSpiWriteReg(CCxxx0_WOREVT0, 0x45);
//WOR.EVENT1 = 3; X = 12; Tevent1 = x*750/f_xosc = 0.346ms
halSpiWriteReg(CCxxx0_WORCTRL, 0x78);
//halSpiWriteReg(CCxxx0_IOCFG2, 0x06);
}
void start_WOR(void)
{
//halSpiStrobe(CCxxx0_SIDLE);
//halSpiStrobe(CCxxx0_SFRX);
//Resets the real time clock
halSpiStrobe(CCxxx0_SWORRST);
//Starts Wake-on-Radio
halSpiStrobe(CCxxx0_SWOR);
}
Barbara Wu:
您好
请参考文档
http://www.ti.com/lit/an/swra126b/swra126b.pdf
以及如下link
http://e2e.ti.com/support/wireless_connectivity/proprietary_sub_1_ghz_simpliciti/f/156/p/16567/63888