|
楼主 |
发表于 2012-12-7 09:18:41
|
显示全部楼层
pentong 发表于 2012-12-6 09:40
如果430和4432一直处于sleep低功休眠耗模式,应该在几个uA以内;
使用WUT模式,这个跟你的配置参数有关,如 ...
谢谢,我只是把07号寄存器写0了。这样Si4432 就在sleep模式了,但电流有300uA, 不正常。 我QQ 23542276, 请教
代码入下:
/*******************************************************************************
*
********************************************************************************/
void RF_SetWUT(UINT16 WUT_ms)
{
UINT8 WUT1_ms = WUT_ms&0xFF;
UINT8 WUT2_ms = (WUT_ms&0xFF00)>>8;
// Wut = 4*M*Power(2, reg(0x14))/32.768ms
SpiWriteAddressData((REG_WRITE | 0x14), 0x05); // 4*M: ms. set R
SpiWriteAddressData((REG_WRITE | 0x16), WUT1_ms);
SpiWriteAddressData((REG_WRITE | 0x15), WUT2_ms);
}
/*******************************************************************************
*
********************************************************************************/
void RF_SetTLDC(UINT8 TLDC_ms)
{
SpiWriteAddressData((REG_WRITE | 0x19), TLDC_ms); // *4ms
SpiWriteAddressData((REG_WRITE | InterruptEnable1 ), 0x02);
SpiWriteAddressData((REG_WRITE | InterruptEnable2), 0x00);
// EN Bit2 and BIT4
SpiWriteAddressData((REG_WRITE | OperatingFunctionControl1), 0x01);
SpiWriteAddressData((REG_WRITE | OperatingFunctionControl1), 0x00);
SpiWriteAddressData((REG_WRITE | OperatingFunctionControl2), 0x14);
// Read interrupt status regsiters. It clear all pending interrupts
// and the nIRQ pin goes back to high.
SpiReadRegister(0x03);
SpiReadRegister(0x04);
} |
|