I use MCU to write the registers of LMX2582 according to TICS pro. But no output is found. I need help.
I use 26MHz signal to get 920MHz signal, this is code i write. The register map of LMX2582 is got from TCIS pro.
int main(void)
{
uint32_t registers[44] = {0x00221A,0x010808,0x020500,0x041943,0x0728B2,0x081084,0x090302,0x0A10D8,
0x0B0018,0x0C7001,0x0D4000,0x0E0FFF,0x130965,0x14012C,0x162300,0x178842,
0x180509,0x190000,0x1C2924,0x1D0084,0x1E0434,0x1F0601,0x204210,0x214210,
0x22C3F0,0x23001B,0x240C10,0x254000,0x260046,0x278404,0x280000,0x2900D0,
0x2A0000,0x2B0000,0x2C0000,0x2D0051,0x2E0F24,0x2F00CF,0x3003FC,0x3B0000,
0x3D0001,0x3E0000,0x4003AF,0x00221C};
SystemInit();
GPIOInit();
GPIOSetDir(PORT0,9,1); //CSB
GPIOSetDir(PORT2,2,1);// CLK
GPIOSetDir(PORT0,6,1);//DATA
LMX2582_SPI_Wdata(registers,44);
}
LMX2582_WR_byte(uint32_t da)
{
int j;
for(j=0;j<24;j++)
{
GPIOSetValue(PORT0,6,(da&0x800000));
GPIOSetValue(PORT2,2,1);
da = da<<1;
GPIOSetValue(PORT2,2,0);
}
}
void LMX2582_SPI_Wdata(uint32_t *Tdata,uint32_t size)
{
int i;
GPIOSetValue(PORT2,2,0);
GPIOSetValue(PORT0,9,1);
for(i = 0;i < size;i++)
{
GPIOSetValue(PORT0,9,0);
ADF4351_WR_byte(Tdata[i]);
GPIOSetValue(PORT0,9,1);
}
}
WHY I FAIL?
THANKS!