⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dds9852.lst

📁 c8051f020+ad9852+12864+键盘(频率合成)贝一特电子
💻 LST
字号:
C51 COMPILER V8.05a   DDS9852                                                              01/11/2009 22:55:15 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE DDS9852
OBJECT MODULE PLACED IN dds9852.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE dds9852.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <main.h>
   2          #include <math.h>
   3          
   4          #define ad9852_D     P1
   5          #define ad9852A_Ctrl P2
   6          
   7          sbit ddsRST   =P3^5 ;
   8          sbit ddsWR    =P3^4 ;
   9          
  10          unsigned char Mul_fctrl=4,M_ctrl=0,PLL_BPnum=0x20;         //disable PLL
  11          unsigned long F0ctrl_word=0;                           //频率
  12          unsigned char AD9852_F0[6];
  13          
  14          /*****************写地址,写数据**************************/
  15          void Write_AD9852(unsigned char ADDR,unsigned char WRdata)
  16          {  
  17   1         ad9852A_Ctrl =ADDR;
  18   1         ad9852_D=WRdata;
  19   1         ddsWR=0;
  20   1         ddsWR=1;
  21   1      }
  22          
  23          /**********************工作模式选择***********************/
  24          
  25          void WR_AD9852Mode(unsigned char M_ctrl)
  26          {   
  27   1         Write_AD9852(0x1F,0x01|(M_ctrl<<1));
  28   1      }
  29          /**********************DDS初使化************************/
  30          void ddsInit()
  31          { 
  32   1         unsigned char i;
  33   1         for(i=15;i>0;i--); 
  34   1         ddsRST=0;
  35   1         for(i=15;i>0;i--); 
  36   1         ddsRST=1;
  37   1         for(i=15;i>0;i--); 
  38   1         ddsRST=0;
  39   1         ddsWR=1;
  40   1      
  41   1         Write_AD9852(0x1F,0X01);    //普通模式,内部更新时钟
  42   1         Write_AD9852(0x20,0x40);      //旁路反正弦
  43   1                      
  44   1      }
  45          /*******************DDS开始***********************/
  46          void start_dds(F0ctrl_word)
  47          {         
  48   1            unsigned char i; 
  49   1            for(i=0;i<4;i++)
  50   1                {  
  51   2                   AD9852_F0[i+2]=(unsigned char)( (long)(F0ctrl_word*85.89934592) >>(8*i) );         //f250m=17.179869184
  52   2               Write_AD9852((7-i),AD9852_F0[i+2]);                                                                                    //f50m=
  53   2                }                
  54   1      }
  55                                                                                                                                  
C51 COMPILER V8.05a   DDS9852                                                              01/11/2009 22:55:15 PAGE 2   



MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    126    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     13       3
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -