Olimex Support Forum

Microcontrollers => MSP430 => Topic started by: bechtold on December 16, 2013, 03:21:38 pm

Title: msp430-ccrflcd example for rf not working
Post by: bechtold on December 16, 2013, 03:21:38 pm
Hi,
we need to implement a rf connection between msp430s.
Unfortunately we don't get the rf connection to work at all.
The examples that are provided https://www.olimex.com/Products/MSP430/Starter/MSP430-CCRFLCD/resources/MSP430-CCRFLCD_DemoSoftware-IAR-for-MSP-v4.21.zip (https://www.olimex.com/Products/MSP430/Starter/MSP430-CCRFLCD/resources/MSP430-CCRFLCD_DemoSoftware-IAR-for-MSP-v4.21.zip) don't work.

Mainly we work with ccs, but we have tried flashing both examples with iar and ccs.
One thing we noticed, that "asm("NOP");" needs to be replaced with "_nop();" for the examples to be compilable in ccs.
When the examples are flashed, nothing happens.
When we debug it calls in file RF_Connection.c on line 135 ReceiveOn(), then it calls in file RF1A.c on line 184 Strobe( RF_SIDLE),
the code then stops at file RF1A.c line 39 if (strobe != 0x30) while( !(RF1AIFCTL1 & RFSTATIFG) );
So it seems to be waiting. But I don't quite understand what for.

Is here anyone who can help me on this or at least give me some link e.g. to a working example?
That would be awesome.

Thanks
bechtold
Title: Re: msp430-ccrflcd example for rf not working
Post by: bechtold on December 17, 2013, 01:53:27 pm
Quote from: bechtold on December 16, 2013, 03:21:38 pm
When we debug it calls in file RF_Connection.c on line 135 ReceiveOn(), then it calls in file RF1A.c on line 184 Strobe( RF_SIDLE),
the code then stops at file RF1A.c line 39 if (strobe != 0x30) while( !(RF1AIFCTL1 & RFSTATIFG) );
So it seems to be waiting. But I don't quite understand what for.


So this happens when we debug with the debug session. Since rf stuff is dependant on timing this breaks while debugging.

Now I'm debugging with only toggeling a led, so I know the above stated is not the error.

Now I'm stuck on line 193 of RF1A.c. If I turn the led on before the call of the delay its working. Turning on the led after the delay is not working anymore. But when I debug inside the delay function the while loop finishes normally.

Any Ideas?