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

📄 ad0809.lst

📁 AD采样实验
💻 LST
字号:
C51 COMPILER V7.06   AD0809                                                                04/04/2009 12:13:17 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE AD0809
OBJECT MODULE PLACED IN Ad0809.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Ad0809.c BROWSE DEBUG OBJECTEXTEND CODE

stmt level    source

   1          /**************************************************************/
   2          /*    文件名: AD0809.c                                        */
   3          /*    功能描述: AD采样实验,结果通过串口送PC显示(脱机运行)    */
   4          /*              结果送内部数据区30H,共16个(SoftIce调试)      */
   5          /**************************************************************/
   6          
   7          #include <reg51.h>
   8          #include "Absacc.h"
   9          //#include "stdio.h"
  10          
  11          #define STARTAD    XBYTE[0x7F00]
  12          #define ADRESULT   XBYTE[0x7F08]
  13          
  14          sbit ADBUSY  = P3^3;
  15          
  16          //unsigned char data a[16];
  17          
  18          unsigned char AD0809(void)
  19          {
  20   1              unsigned char result;
  21   1              STARTAD = 0;                    // 启动AD
  22   1              while(ADBUSY == 1);             // 等待转换结束
  23   1              result = ADRESULT;
  24   1              return result;
  25   1      }
  26          
  27          
  28          //**** 串口初始化 ****//
  29          /*void init_serial(void)
  30          {
  31                  SCON = 0x52;
  32                  TMOD = 0x20;
  33                  PCON = 0x80;
  34                  ES = 0;
  35                  TH1 = 0xFD;
  36                  TR1 = 1;
  37          }*/
  38          
  39          void main(void)
  40          {
  41   1              //unsigned char result;
  42   1              unsigned int i, j;
  43   1              //init_serial();
  44   1              for(j=0; j<16; j++)
  45   1              {
  46   2                      //result = AD0809();
  47   2                      //a[j] = AD0809();
  48   2                      DBYTE[0x30 + j] = AD0809();
  49   2                      //printf("AD0809_IN0_Result:  %bx\r", result);
  50   2                      for(i=0; i<20; i++);
  51   2              }
  52   1              while(1);
  53   1      }
C51 COMPILER V7.06   AD0809                                                                04/04/2009 12:13:17 PAGE 2   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION AD0809 (BEGIN)
                                           ; SOURCE LINE # 18
                                           ; SOURCE LINE # 19
                                           ; SOURCE LINE # 21
0000 907F00            MOV     DPTR,#07F00H
0003 E4                CLR     A
0004 F0                MOVX    @DPTR,A
0005         ?C0001:
                                           ; SOURCE LINE # 22
0005 20B3FD            JB      ADBUSY,?C0001
0008         ?C0002:
                                           ; SOURCE LINE # 23
0008 907F08            MOV     DPTR,#07F08H
000B E0                MOVX    A,@DPTR
000C FF                MOV     R7,A
;---- Variable 'result' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 24
                                           ; SOURCE LINE # 25
000D         ?C0003:
000D 22                RET     
             ; FUNCTION AD0809 (END)

             ; FUNCTION main (BEGIN)
                                           ; SOURCE LINE # 39
                                           ; SOURCE LINE # 40
                                           ; SOURCE LINE # 44
;---- Variable 'j' assigned to Register 'R4/R5' ----
0000 E4                CLR     A
0001 FD                MOV     R5,A
0002 FC                MOV     R4,A
0003         ?C0004:
                                           ; SOURCE LINE # 45
                                           ; SOURCE LINE # 48
0003 120000      R     LCALL   AD0809
0006 7430              MOV     A,#030H
0008 2D                ADD     A,R5
0009 F8                MOV     R0,A
000A A607              MOV     @R0,AR7
                                           ; SOURCE LINE # 50
;---- Variable 'i' assigned to Register 'R6/R7' ----
000C E4                CLR     A
000D FF                MOV     R7,A
000E FE                MOV     R6,A
000F         ?C0007:
000F 0F                INC     R7
0010 BF0001            CJNE    R7,#00H,?C0013
0013 0E                INC     R6
0014         ?C0013:
0014 EF                MOV     A,R7
0015 6414              XRL     A,#014H
0017 4E                ORL     A,R6
0018 70F5              JNZ     ?C0007
                                           ; SOURCE LINE # 51
001A         ?C0006:
001A 0D                INC     R5
001B BD0001            CJNE    R5,#00H,?C0014
001E 0C                INC     R4
001F         ?C0014:
001F ED                MOV     A,R5
C51 COMPILER V7.06   AD0809                                                                04/04/2009 12:13:17 PAGE 3   

0020 6410              XRL     A,#010H
0022 4C                ORL     A,R4
0023 70DE              JNZ     ?C0004
0025         ?C0010:
                                           ; SOURCE LINE # 52
0025 80FE              SJMP    ?C0010
             ; FUNCTION main (END)



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