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

📄 ex.lst

📁 利用单片机以及DA0832产生正弦波的C51源程序
💻 LST
字号:
C51 COMPILER V7.09   EX                                                                    09/17/2004 11:42:02 PAGE 1   


C51 COMPILER V7.09, COMPILATION OF MODULE EX
OBJECT MODULE PLACED IN ex.OBJ
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE ex.c BROWSE DEBUG OBJECTEXTEND CODE

line level    source

   1          #include "reg52.h"
   2          #include "absacc.h"
   3          
   4          #define DA0832 XBYTE[0X6000]
   5          
   6          
   7          
   8          sbit    P3_5=P3^5;
   9          
  10          unsigned char code SINE_DATA[]={128, 130, 132, 135, 137, 139, 141, 144, 146, 148,
  11                                                          150, 152, 155, 157, 159, 161, 163, 165, 168, 170,
  12                                                                          172, 174, 176, 178, 180, 182, 184, 186, 188, 190,
  13                                                                          192, 194, 196, 198, 200, 201, 203, 205, 207, 209,
  14                                                                          210, 212, 214, 215, 217, 219, 220, 222, 223, 225,
  15                                                                          226, 227, 229, 230, 232, 233, 234, 235, 237, 238,
  16                                                                          239, 240, 241, 242, 243, 244, 245, 246, 247, 247,
  17                                                                          248, 249, 250, 250, 251, 252, 252, 253, 253, 254,
  18                                                                          254, 254, 255, 255, 255, 255, 255, 255, 255, 255,
  19                                                                          255, 255, 255, 255, 255, 255, 255, 255, 255, 254,
  20                                                                          254, 254, 253, 253, 252, 252, 251, 250, 250, 249,
  21                                                                          248, 247, 247, 246, 245, 244, 243, 242, 241, 240,
  22                                                                          239, 238, 237, 235, 234, 233, 232, 230, 229, 227,
  23                                                                          226, 225, 223, 222, 220, 219, 217, 215, 214, 212,
  24                                                                          210, 209, 207, 205, 203, 201, 200, 198, 196, 194,
  25                                                                          192, 190, 188, 186, 184, 182, 180, 178, 176, 174,
  26                                                                          172, 170, 168, 165, 163, 161, 159, 157, 155, 152,
  27                                                                          150, 148, 146, 144, 141, 139, 137, 135, 132, 130,
  28                                                                          128, 126, 124, 121, 119, 117, 115, 112, 110, 108,
  29                                                                          106, 104, 101, 99, 97, 95, 93, 91, 88, 86,
  30                                                                          84, 82, 80, 78, 76, 74, 72, 70, 68, 66,
  31                                                                          64, 62, 60, 58, 56, 55, 53, 51, 49, 47,
  32                                                                          46, 44, 42, 41, 39, 37, 36, 34, 33, 31,
  33                                                                          30, 29, 27, 26, 24, 23, 22, 21, 19, 18,
  34                                                                          17, 16, 15, 14, 13, 12, 11, 10, 9, 9,
  35                                                                          8, 7, 6, 6, 5, 4, 4, 3, 3, 2,
  36                                                                          2, 2, 1, 1, 1, 0, 0, 0, 0, 0,
  37                                                                          0, 0, 0, 0, 0, 0, 1, 1, 1, 2,
  38                                                                          2, 2, 3, 3, 4, 4, 5, 6, 6, 7,
  39                                                                          8, 9, 9, 10, 11, 12, 13, 14, 15, 16,
  40                                                                          17, 18, 19, 21, 22, 23, 24, 26, 27, 29,
  41                                                                          30, 31, 33, 34, 36, 37, 39, 41, 42, 44,
  42                                                                          46, 47, 49, 51, 53, 55, 56, 58, 60, 62,
  43                                                                          64, 66, 68, 70, 72, 74, 76, 78, 80, 82,
  44                                                                          84, 86, 88, 91, 93, 95, 97, 99, 101, 104,
  45                                                                          106, 108, 110, 112, 115, 117, 119, 121, 124, 126,
  46                                                                          128};
  47          
  48          unsigned char dat=0xff;
  49          
  50          main()
  51          {
  52   1      unsigned char i;
  53   1      unsigned int ii;
  54   1              while(1)
  55   1              {
C51 COMPILER V7.09   EX                                                                    09/17/2004 11:42:02 PAGE 2   

  56   2                      for(ii=0;ii<361;ii++)
  57   2                      {
  58   3                              i=10;
  59   3                              DA0832=SINE_DATA[ii];
  60   3                              while(i--);
  61   3                      }
  62   2              }
  63   1      }
C51 COMPILER V7.09   EX                                                                    09/17/2004 11:42:02 PAGE 3   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION main (BEGIN)
                                           ; SOURCE LINE # 50
                                           ; SOURCE LINE # 51
0000         ?C0001:
                                           ; SOURCE LINE # 54
                                           ; SOURCE LINE # 55
                                           ; SOURCE LINE # 56
;---- Variable 'ii' assigned to Register 'R6/R7' ----
0000 E4                CLR     A
0001 FF                MOV     R7,A
0002 FE                MOV     R6,A
0003         ?C0003:
                                           ; SOURCE LINE # 57
                                           ; SOURCE LINE # 58
;---- Variable 'i' assigned to Register 'R5' ----
0003 7D0A              MOV     R5,#0AH
                                           ; SOURCE LINE # 59
0005 7400        R     MOV     A,#LOW SINE_DATA
0007 2F                ADD     A,R7
0008 F582              MOV     DPL,A
000A 7400        R     MOV     A,#HIGH SINE_DATA
000C 3E                ADDC    A,R6
000D F583              MOV     DPH,A
000F E4                CLR     A
0010 93                MOVC    A,@A+DPTR
0011 906000            MOV     DPTR,#06000H
0014 F0                MOVX    @DPTR,A
0015         ?C0006:
                                           ; SOURCE LINE # 60
0015 AC05              MOV     R4,AR5
0017 1D                DEC     R5
0018 EC                MOV     A,R4
0019 70FA              JNZ     ?C0006
                                           ; SOURCE LINE # 61
001B         ?C0005:
001B 0F                INC     R7
001C BF0001            CJNE    R7,#00H,?C0009
001F 0E                INC     R6
0020         ?C0009:
0020 BE01E0            CJNE    R6,#01H,?C0003
0023 BF69DD            CJNE    R7,#069H,?C0003
0026 80D8              SJMP    ?C0001
             ; FUNCTION main (END)



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