This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

The problem in CC430F5137 tranceiver

Hello all,

I am running a 430F5137 to transmit and reeceiver data.

I've used a debbuger, and found out that the code is stuck in an infinite loop while trying to perform a reading of the IOCFG2 register:

uint8 ReadSingleReg(uint8 addr)
{
uint8 data_out;

// Check for valid configuration register address, 0x3E refers to PATABLE
if ((addr <= 0x2E) || (addr == 0x3E))
// Send address + Instruction + 1 dummy byte (auto-read)
RF1AINSTR1B = (addr | RF_SNGLREGRD);
else
// Send address + Instruction + 1 dummy byte (auto-read)
RF1AINSTR1B = (addr | RF_STATREGRD);

while (!(RF1AIFCTL1 & RFDOUTIFG) ); // <====== STUCK FOREVER.....

data_out = RF1ADOUTB; // Read data and clears the RFDOUTIFG

return data_out;
}

I may know while it stop here, I closed transmitter part and if I opened it, the chip can work agan. But I want the receiver part do some other work if there is no transmiiter, and if the receiver stuck in while (!(RF1AIFCTL1 & RFDOUTIFG) ); it can not do anying else.

Thanks.
Rui