HYi.

void(Init)

{

 SSIConfigSetExpClk(SSI1_BASE, SysCtlClockGet(), SSI_FRF_MOTO_MODE_0,SSI_MODE_MASTER, 4000000,8);
  SSIEnable(SSI1_BASE);
  GPIOPinTypeSSI(GPIO_PORTE_BASE,GPIO_PIN_0 | GPIO_PIN_3 | GPIO_PIN_2 | GPIO_PIN_1);

}

unsigned char Read_cc2420_RAM(unsigned short adr)
{
 unsigned long l;
 SSIDataPut(SSI1_BASE,0x80 | (adr & 0x7f));
 SSIDataPut(SSI1_BASE,((adr >> 1) & 0xc0) | 0x20);
 SSIDataGet(SSI1_BASE,&l);
 return (unsigned char) l;
}

void Write_cc2420_RAM(unsigned short adr,unsigned char dat)
{
 SSIDataPut(SSI1_BASE,0x80 | (adr & 0x7f));                
    SSIDataPut(SSI1_BASE,(adr >> 1) & 0xc0); 
 SSIDataPut(SSI1_BASE,dat);                  
}

int main(void)

{

 RSTnL;
 RSTnL;
 RSTnL;
 RSTnH;
 VREGenH;  

TurnOnOsc();

while(1)
    {

      Write_cc2420_RAM(0x30,0x13);
   a = Read_cc2420_RAM(0x30);
   sprintf(pucBuf,"Ram is %3d ",a);
   RIT128x96x4StringDraw(&pucBuf[0],1, 20, 15);

}

I get the value of 64 all the time, It looks like the cc2420 returns all the time the status only.

Please Advise

Ephraim Oved

CS.

 

SI.

 

SO.