Hi all:
I have a question about how to manul reset CC2500 after its inital power up.
According to the CC2500 datasheet, page 41 of 92, section 19.1.2 Manual Reset: the procedure should be as following:
1: Set SCLK = 1 and SI = 0, to avoid potential problems with pin contorl mode.
2: Strobe CSn low / high (does this mean we toggle CSn pin from low to high or what?)
3: Hold CSn high for at least 40 uS relative to pulling CSn low.
4: Pull SXn low and wait for SO to go low.
5: Issue the SRES strobe on the SI line.
6: When SO goes low again, reset is complete.
But from the code example MSP430 CC1100/2500(slaa 325) from T.I., in file TI_CC_spi.c:
void TI_CC_PowerupResetCCxxxx(void)
{
TI_CC_CSn_PxOUT |= TI_CC_CSn_PIN;
TI_CC_Wait(30);
TI_CC_CSn_PxOUT &= ~TI_CC_CSn_PIN;
TI_CC_Wait(30);
TI_CC_CSn_PxOUT |= TI_CC_CSn_PIN;
TI_CC_Wait(45);
TI_CC_CSn_PxOUT &= ~TI_CC_CSn_PIN; // /CS enable
while (TI_CC_SPI_USART0_PxIN&TI_CC_SPI_USART0_SOMI);// Wait for CCxxxx ready
U0TXBUF = TI_CCxxx0_SRES; // Send strobe
// Strobe addr is now being TX'ed
IFG1 &= ~URXIFG0; // Clear flag
while (!(IFG1&URXIFG0)); // Wait for end of addr TX
while (TI_CC_SPI_USART0_PxIN&TI_CC_SPI_USART0_SOMI);
TI_CC_CSn_PxOUT |= TI_CC_CSn_PIN; // /CS disable
}
I can not see how the code example manages to reset CC1100/2500 according to the datasheet.
Can anyone help me out here?
Thank you