AnsweredAssumed Answered

Ask a question about ad9910's psk modulation.(use ram )

Question asked by JamesYao on Jan 15, 2011
Latest reply on Jan 27, 2011 by DSB

Hello!

       i'm a user of ad9910  from China. some days ago   i  used ad9910 to do psk modulation.First  i  used single tone modle.but be  if  has  a strange problem.The engineer of  adi  told me to use ram modle,i  had tried ,but failed,so i come here to ask the way of Ram modulation  of  psk. the follow are the codes of  my program  .please have a  see ,if you can tell  me  the wrong place ,i must  say  thank you very much!   Thank you !   The microcontrolor i have  used is MSP430 of TI.

void main(void)
{
    int i;
   P6SEL=0;
    P6DIR=0XFF;
    P6OUT =0X80;                  //POWER Control
    MCU_Initiate();    //MSP430 Initialization
  
   
   
   RegisterData[0] = 0x00000002;//SDIO Input Only
WriteToAD9910ViaSpi(0x00,1,RegisterData);//3-Wire Communication

   
   RegisterData[0] = 0x183F4000;
WriteToAD9910ViaSpi(0x02,1,RegisterData);//System Clock =

 

RegisterData[0] = 0x00400000;//SYNC_CLK  nable

WriteToAD9910ViaSpi(0x01,1,RegisterData);
 
   
    //Load RAM
    
 
    RegisterData[0] =0x80004008;
   RegisterData[1] =0x00000C00;

WriteToAD9910ViaSpi(0x0E,2,RegisterData);
    
   RegisterData[0] =0x00028008;

RegisterData[1] =0x00000C04;
    WriteToAD9910ViaSpi(0x0F,2,RegisterData);
   
     RegisterData[0] =0xC0320008; 

RegisterData[1] =0x00000C33;
    WriteToAD9910ViaSpi(0x10,2,RegisterData);
   
     RegisterData[0] =0xC04B0008;

   RegisterData[1] =0x00000C4C;
    WriteToAD9910ViaSpi(0x11,2,RegisterData);
   
     RegisterData[0] =0xC0640008;

   RegisterData[1] =0x00000C65;
    WriteToAD9910ViaSpi(0x12,2,RegisterData);
   
     RegisterData[0] =0xC07D0008;

   RegisterData[1] =0x00000C7E;
    WriteToAD9910ViaSpi(0x13,2,RegisterData);
   
     RegisterData[0] =0xC0960008;

   RegisterData[1] =0x00000C97;
    WriteToAD9910ViaSpi(0x14,2,RegisterData);
   
     RegisterData[0] =0xC0AF0008;

   RegisterData[1] =0x00000CB0;
    WriteToAD9910ViaSpi(0x15,2,RegisterData);
      RegisterData[0] = 0xA0000002;
WriteToAD9910ViaSpi(0x00,1,RegisterData);//3-Wire Communication
   
       
   P1OUT&=~BIT1;//select ram profile0
    RegisterData[0] =0x00000000;/the contrl word of  phase  not changed

  WriteToAD9910ViaSpi(0x16,1,RegisterData);

 

 

P1OUT|=BIT1;//select ram profile1
    RegisterData[0] =0x80000000;//the contrl word of  phase change pi
    WriteToAD9910ViaSpi(0x16,1,RegisterData);

 

        //RAM playback
         RegisterData[0] = 0xA0000002;
WriteToAD9910ViaSpi(0x00,1,RegisterData);//3-Wire Communication

      while(1)
  {
    P1OUT&=~BIT1;//selsect ram profile0
   
    delay(10);//delay  a  time
          P1OUT|=BIT1;//select ram profile1
    
   
   
  


   }

}
 

 

GOOD WISHES!!

Outcomes