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

📄 ad9851.lst

📁 计算实用教程adadad9851实用教程
💻 LST
字号:
C51 COMPILER V7.06   AD9851                                                                05/24/2007 21:29:25 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE AD9851
OBJECT MODULE PLACED IN D:\MYDOCU~1\AD9851~1\TEST_9~1\AD9851.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE D:\MYDOCU~1\AD9851~1\TEST_9~1\AD9851.C DB SB OE

stmt level    source

   1          #include<reg52.h>
   2          #include<absacc.h>
   3          #include<math.h>
   4          
   5          #define uchar   unsigned char
   6          #define uint   unsigned int
   7          #define ulong   unsigned long
   8          
   9          #define FRE1_A XBYTE [0x9000]        //频率控制字一正弦波,调幅载波,FSK载波f1,ASK,PSK载波
  10          #define FRE1_B XBYTE [0x9001]
  11          #define FRE1_C XBYTE [0x9002]
  12          #define FRE1_D XBYTE [0x9003]
  13          #define FRE2_A XBYTE [0x9005]        //频率控制字二 FSK载波f2
  14          #define FRE2_B XBYTE [0x9006]
  15          #define FRE2_C XBYTE [0x9007]
  16          #define FRE2_D XBYTE [0x9008]
  17          #define MODE   XBYTE [0x9004]
  18          #define DDS_D0 XBYTE [0xc000]        //AM调制波控制字
  19          #define DDS_D1 XBYTE [0xc001]
  20          #define DDS_D2 XBYTE [0xc002]
  21          #define DDS_D3 XBYTE [0xc003]
  22          #define DA0832 XBYTE [0xd000]        //AM调制波幅度控制端口
  23          
  24          sbit  PINPIAN=P1^3;   //1:5KHZ  0:10KHZ
  25          sbit  AM_CS=P1^4;    //数子调制脉冲使能 低电平有效
  26          
  27          void DDS(ulong F)
  28          {
  29   1        ulong M;
  30   1        float fre=10.73621578383221;           //参数为0.1Hz精度的整数,故除10
  31   1        //fre=(float)(F);                      //fout=fosc*K/2e32
  32   1        //fre=fre*107.3621578383221;             //K=fout*2e32/fosc
  33   1        fre=fre*F;
  34   1        M=(ulong)(fre);                          //fosc=40.004480MHz
  35   1        DDS_D0=(uchar)(M&0x000000ff);
  36   1        DDS_D1=(uchar)((M>>8)&0x000000ff);
  37   1        DDS_D2=(uchar)((M>>16)&0x000000ff);
  38   1        DDS_D3=(uchar)((M>>24)&0x000000ff);
  39   1      }
  40          /********************************************************/
  41          /*********AD9851**************/
  42          void AD9851_DDS(ulong frequence)
  43          {
  44   1        //float abc=23.858257297405;//fosc=40.004480*4.5;
  45   1      
  46   1        //float abc=29.826472471;   //fosc=23.999750*6;
  47   1      
  48   1        float abc=2.8636145307;                  //fosc=25.000000*6;  除10
  49   1      
  50   1        ulong ku;
  51   1        abc=abc*frequence;
  52   1        ku=(ulong)(abc);
  53   1      
  54   1        FRE1_D=(uchar)((ku>>24)&0x000000ff);
  55   1      
C51 COMPILER V7.06   AD9851                                                                05/24/2007 21:29:25 PAGE 2   

  56   1        FRE1_C=(uchar)((ku>>16)&0x000000ff);
  57   1      
  58   1        FRE1_B=(uchar)((ku>>8)&0x000000ff);
  59   1      
  60   1        FRE1_A=(uchar)(ku&0x000000ff);
  61   1      
  62   1        //MODE=0x01;
  63   1      }
  64          void main(void)
  65          {
  66   1        DA0832=200;             //给0800的参考电压
  67   1        DDS(10000);
  68   1      
  69   1       AD9851_DDS(10000000);    //正弦信号产生
  70   1       MODE=0x01;              //SIN
  71   1      
  72   1       AD9851_DDS(1000000);
  73   1       MODE=0x02;              //FM
  74   1      
  75   1       MODE=0x03;              //ASK
  76   1       MODE=0x04;              //FSK
  77   1       MODE=0x05;              //PSK
  78   1      }
C51 COMPILER V7.06   AD9851                                                                05/24/2007 21:29:25 PAGE 3   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


P1 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0090H  1
P3 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B0H  1
IE . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00A8H  1
IP . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B8H  1
main . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
SCON . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0098H  1
TCON . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0088H  1
_DDS . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  F. . . . . . . . . . . . . . . . . .  AUTO     DATA   U_LONG   0000H  4
  M. . . . . . . . . . . . . . . . . .  AUTO     DATA   U_LONG   0004H  4
  fre. . . . . . . . . . . . . . . . .  AUTO     DATA   FLOAT    0008H  4
T2CON. . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00C8H  1
_AD9851_DDS. . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  frequence. . . . . . . . . . . . . .  AUTO     DATA   U_LONG   0000H  4
  abc. . . . . . . . . . . . . . . . .  AUTO     DATA   FLOAT    0004H  4
  ku . . . . . . . . . . . . . . . . .  AUTO     DATA   U_LONG   0008H  4
PSW. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00D0H  1


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