Part Number: CC2530
Other Parts Discussed in Thread: Z-STACK
Hello everyone.
I am upgrading my project from zstack2.5.1a to zstack3.0.1.
I use POWER_SAVING to reduce power consumption in end device.
In Sleep Status, How can get UART packet?
I tried as following.
HAL_ISR_FUNCTION(P0_ISR, P0INT_VECTOR)
{
if(P0IFG == 0x04)
{
P0IFG = 0;
asm("NOP");
P0IF = 0;
SysPowerMode(4);
InitKey(0);
}
else
{
P0IFG = 0;
P0IF = 0;
}
}
void SysPowerMode(uint8 mode)
{
if(mode > 0 && mode < 4)
{
SLEEPCMD &= ~0x03;
SLEEPCMD |= mode;
PCON = 0x01;
}
else
{
SLEEPCMD = g_nSleepCmd;
asm("NOP");
PCON = 0x00;
}
asm("NOP");
}
// UART configuration
uartConfig.configured = TRUE; // 2x30 don't care - see uart driver.
#if defined(ZDO_COORDINATOR)
uartConfig.baudRate = HAL_UART_BR_230400;
#else
uartConfig.baudRate = HAL_UART_BR_115200;
#endif
uartConfig.flowControl = FALSE;
uartConfig.flowControlThreshold = 96; // 2x30 don't care - see uart driver.
uartConfig.rx.maxBufSize = 192; // 2x30 don't care - see uart driver.
uartConfig.tx.maxBufSize = 192; // 2x30 don't care - see uart driver.
uartConfig.idleTimeout = 6; // 2x30 don't care - see uart driver.
uartConfig.intEnable = TRUE; // 2x30 don't care - see uart driver.
uartConfig.callBackFunc = CallbackRecvUart;
HalUARTOpen (0, &uartConfig);
But I can't get UART packet in sleep status.
Please help me.
Thanks in advance.
Piao