枭龙战机

AD9833写入28字节程序

0
阅读(1948)

void Write_28bit_One_FR(bit If_to_all, UNCHAR FREQ0_or_1, UNCHAR
low_14_h,UNCHAR low_14_l,UNCHAR high_14_h,UNCHAR high_14_l)
{
  if (If_to_all==1)  //写动作
  {      Write_16bit_All_Two(0x20,0x00);
    Write_16bit_All_Two(low_14_h,low_14_l);
    Write_16bit_All_Two(high_14_h,high_14_l);
  }
  else
  {      Write_16bit_One(0x20,0x00, FREQ0_or_1);
    Write_16bit_One(low_14_h,low_14_l, FREQ0_or_1);
    Write_16bit_One(high_14_h,high_14_l, FREQ0_or_1);
  }
}
void Write_16bit_All_Two(UNCHAR  Char_1,UNCHAR Char_2)
{
  UNCHAR t,i;
  i = 8;
  AD9833_SCLK = 1;
  P1 = 0xff;  //片选
  P1 = 0x03;
 
  for(i=0;i<8;i++)

{// _nop_();
if((Char_1<<i) &0x80)//确定SDATA上的数据
{
AD9833_SDATA = 1;
}
else
{
AD9833_SDATA = 0;
}
AD9833_SCLK = 0;
for(t=0;t<20;t++);
AD9833_SCLK = ~AD9833_SCLK;//在下降沿写?AD9833_Delay();
  //_nop_(); AD9833_Delay();
for(t=0;t<10;t++);
}
   for(i=0;i<8;i++)
{
if((Char_2<<i) &0x80)//确定SDATA上的数据
{
AD9833_SDATA = 1;
}
else
{
AD9833_SDATA = 0;
}
AD9833_SCLK = 0;
for(t=0;t<20;t++);
AD9833_SCLK = ~AD9833_SCLK;//在下降沿写?AD9833_Delay();
  //_nop_(); AD9833_Delay();
for(t=0;t<10;t++);
}
  P1 = 0xff; //片选拉高
Delay_N_MCLK(8);
}