Can't write to RF Data register, don't know why?!

Discussion in 'Embedded Systems and Microcontrollers' started by hazzman, Mar 25, 2008.

  1. hazzman

    Thread Starter Member

    Dec 17, 2007
    hi people,

    i'm working on the cc2430 SoC and seem to be coming across a problem i don't understand.
    I am trying to Tx a frame and have initialised and set up the header, payload and footer accordingly and when i debug i can see everything is fine. All i now need 2 do is write my Tx Packet out onto the TXFIFO to be transmitted, but i can't seem to write to this RF data register (RFD).
    When my frame has been set up and has a payload, i call writeTxFifo as shown below:

    Code ( (Unknown Language)):
    2. void writeTxFifo(uint8 *pData, uint8 len) //pData is a pointer to a struct
    3. {
    4.   do
    5.   {
    6.     RFD = *pData;
    7.     pData++;
    8.     len--;
    9.   }
    10.   while (len);
    11. }
    But when i debug RFD is not written to! It remains zeroed out.
    Then i need to strobe the CSMA/CA radio to transmit by writing an opcode, ISTXON for example and nothing happens again when i debug, that register is also zero!
    Im trying to following the cc2430 datasheet, but don't understand what the problem is, its quite annoying as the packet is all ready to Tx but it can't....!!

    any ideas?