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.