枭龙战机

ADF4360寄存器配置

0
阅读(4048)

可编程锁相环ADF4360一直被应用很广,今天分享下它的读数及配置的程序

 

//AD4360写入设置
void ADF4360BIT(unsigned char val) 
{
   unsigned int Bitcounter="8";
   unsigned char temp;
   do
    {
     temp="val";
     ADF4360_CLK=1;
  _nop_();

  _nop_();
     if((temp&0x80)==0x80)
     ADF4360_DATA=1;
     else
     ADF4360_DATA=0;
    ADF4360_CLK=0;
     temp="val"<<1;
     val="temp";
     Bitcounter--;
    }while(Bitcounter);
    ADF4360_CLK=1;

 }

 
    //寄存器配置
void set_R(unsigned char *R_REG)              

{
    uchar R2=R_REG[0];

    uchar R1=R_REG[1];

    uchar R0=R_REG[2]; 
    ADF4360_CS=0;
    ADF4360BIT(R2);
    ADF4360BIT(R1);
    ADF4360BIT(R0);
   ADF4360_CS=1;
}
void set_ctr(unsigned char *CTR_REG)              //设置控制寄存器
{
 uchar CTR2=CTR_REG[0];
  uchar CTR1=CTR_REG[1];
  uchar CTR0=CTR_REG[2]; 
    ADF4360_CS=0;
    ADF4360BIT(CTR2);
    ADF4360BIT(CTR1);
    ADF4360BIT(CTR0);  
    ADF4360_CS=1;
}
void set_N(unsigned char *N_REG)           
{
    uchar N2=N_REG[0];
    uchar N1=N_REG[1];
    uchar N0=N_REG[2];
    delay(50);
    ADF4360_CS=0; 
    ADF4360BIT(N2);
 ADF4360BIT(N1);
 ADF4360BIT(N0);
    ADF4360_CS=1;
 }