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

📄 ad9850.lst

📁 最新发布AD9850模块相关资料125M参考时钟
💻 LST
字号:
C51 COMPILER V8.05a   AD9850                                                               05/30/2011 15:53:22 PAGE 1   


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

line level    source

   1          #include "ad9850.h" 
   2          #include <intrins.h>
   3                          
   4          double Con_Word_1_9850 = 0x00;          
   5          double Con_Word_2_9850 = 0x00;
   6          
   7          long uint ConTrol_Word_9850 = 0x00;  
   8                          
   9          void Send_Control_Word_9850(long uint ConTrol_Word)
  10          { 
  11   1        unsigned char loop_variable;
  12   1        unsigned char phase_data;
  13   1                              
  14   1        loop_variable=32;
  15   1        while(loop_variable!=0) {                     
  16   2                dataport_9850 = ConTrol_Word&1;                       
  17   2                w_clk_9850=1;                         
  18   2                w_clk_9850=0; 
  19   2                ConTrol_Word=_lror_(ConTrol_Word,1);
  20   2                loop_variable--;
  21   2        }
  22   1                              
  23   1        loop_variable=8;
  24   1        phase_data=0x00;
  25   1        while(loop_variable!=0) {                     
  26   2                dataport_9850 = phase_data&1;                 
  27   2                w_clk_9850=1;                         
  28   2                w_clk_9850=0; 
  29   2                phase_data=_cror_(phase_data,1);
  30   2                loop_variable--;
  31   2        }
  32   1        fqud_9850=1;
  33   1        fqud_9850=0;                  
  34   1      }
  35          
  36          void Calculate_Control_Word_9850(long uint Frequency_Out_9850)  
  37           {      
  38   1        Con_Word_1_9850 = Frequency_Out_9850 * 34;            //算出整数部分
  39   1        Con_Word_2_9850 = Frequency_Out_9850 * 0.3597;        //算出小数部分 (系数=2^32/CLK )
  40   1        Con_Word_2_9850 = Con_Word_2_9850 + 0.5;                      //小数部分修正
  41   1        Con_Word_1_9850 = Con_Word_1_9850 + Con_Word_2_9850;  //整数+修正后的小数                                                     
  42   1        ConTrol_Word_9850 = Con_Word_1_9850 / 1;                              //换成整型
  43   1       }
  44           
  45                                          
  46          void init_9850(void)
  47          {       
  48   1              w_clk_9850      =       0;                      
  49   1              fqud_9850       =       0;
  50   1      
  51   1              reset_9850  =  0;
  52   1              reset_9850  =  1;                       
  53   1              reset_9850  =  0; 
  54   1              
  55   1              w_clk_9850      =       0;
C51 COMPILER V8.05a   AD9850                                                               05/30/2011 15:53:22 PAGE 2   

  56   1              w_clk_9850      =       1;
  57   1              w_clk_9850      =       0;
  58   1              
  59   1              fqud_9850       =       0;
  60   1              fqud_9850       =       1;
  61   1              fqud_9850       =       0;              
  62   1      }
  63          void Write_9850(long unsigned int Frequency_Out_9850)
  64          {
  65   1              Calculate_Control_Word_9850(Frequency_Out_9850);        
  66   1              Send_Control_Word_9850(ConTrol_Word_9850);  
  67   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    237    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     12       8
   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 + -