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

📄 main.lst

📁 这个程序显示的是如何运用Aduc812进行AD设置与转换
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.00  MAIN                           06/28/2002 15:36:03 PAGE 1   


C51 COMPILER V7.00, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND CO
                    -DE SYMBOLS PAGEWIDTH(80) PAGELENGTH(80)

stmt level    source

   1          #include <stdio.h>
   2          #include <ADUC812.H>
   3          
   4          void main (void)
   5          {
   6   1      /*-------------------------------------
   7   1      Setup the serial port
   8   1      -------------------------------------*/
   9   1      SCON  = 0x50;
  10   1      TMOD |= 0x20;
  11   1      TH1   = 0xFA;
  12   1      TR1   = 1;
  13   1      TI    = 1;
  14   1      PCON |= 0x80;
  15   1      
  16   1      /*-------------------------------------
  17   1      Configure the D/A converters:
  18   1        12-bit mode, 0-VDD range, DAC0 DAC1
  19   1        DACCON = 0111 1?01
  20   1      -------------------------------------*/
  21   1      DACCON = 0x7B;               
  22   1      
  23   1      /*-------------------------------------
  24   1      Loop thru all 4096 counts updating
  25   1      DAC0 and DAC1.
  26   1      -------------------------------------*/
  27   1      while (1)
  28   1        {
  29   2        unsigned int i;
  30   2      
  31   2      // Full 12 bit scale: 2^12 = 4096
  32   2        for (i = 0; i < 4096; i++)   
  33   2          {
  34   3          DACCON &= ~0x04;   // CLR SYNC bit
  35   3      
  36   3          DAC0H = i >> 8;
  37   3          DAC0L = i & 0xFF;
  38   3      
  39   3          DAC1H = (4095 - i) >> 8;
  40   3          DAC1L = (4095 - i) & 0xFF;
  41   3      
  42   3          DACCON |=  0x04;   // SET SYNC bit
  43   3      
  44   3          printf ("Output %4.4X to DAC0 (%1.4fV)  ", (unsigned) i, (floa
             -t) i * 5.0 / 4095.0);
  45   3          printf ("Output %4.4X to DAC1 (%1.4fV)\n", (unsigned) 4095-i, 
             -(float) (4095-i) * 5.0 / 4095.0);
  46   3          }
  47   2        }
  48   1      }
  49          
  50          
C51 COMPILER V7.00  MAIN                           06/28/2002 15:36:03 PAGE 2   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION main (BEGIN)
                                           ; SOURCE LINE # 4
                                           ; SOURCE LINE # 5
                                           ; SOURCE LINE # 9
0000 759850            MOV     SCON,#050H
                                           ; SOURCE LINE # 10
0003 438920            ORL     TMOD,#020H
                                           ; SOURCE LINE # 11
0006 758DFA            MOV     TH1,#0FAH
                                           ; SOURCE LINE # 12
0009 D28E              SETB    TR1
                                           ; SOURCE LINE # 13
000B D299              SETB    TI
                                           ; SOURCE LINE # 14
000D 438780            ORL     PCON,#080H
                                           ; SOURCE LINE # 21
0010 75FD7B            MOV     DACCON,#07BH
0013         ?C0001:
                                           ; SOURCE LINE # 27
                                           ; SOURCE LINE # 28
                                           ; SOURCE LINE # 32
0013 E4                CLR     A
0014 F500        R     MOV     i,A
0016 F500        R     MOV     i+01H,A
0018         ?C0003:
                                           ; SOURCE LINE # 33
                                           ; SOURCE LINE # 34
0018 53FDFB            ANL     DACCON,#0FBH
                                           ; SOURCE LINE # 36
001B E500        R     MOV     A,i
001D F5FA              MOV     DAC0H,A
                                           ; SOURCE LINE # 37
001F AD00        R     MOV     R5,i+01H
0021 ED                MOV     A,R5
0022 F5F9              MOV     DAC0L,A
                                           ; SOURCE LINE # 39
0024 C3                CLR     C
0025 74FF              MOV     A,#0FFH
0027 9500        R     SUBB    A,i+01H
0029 740F              MOV     A,#0FH
002B 9500        R     SUBB    A,i
002D F5FC              MOV     DAC1H,A
                                           ; SOURCE LINE # 40
002F C3                CLR     C
0030 74FF              MOV     A,#0FFH
0032 9D                SUBB    A,R5
0033 F5FB              MOV     DAC1L,A
                                           ; SOURCE LINE # 42
0035 43FD04            ORL     DACCON,#04H
                                           ; SOURCE LINE # 44
0038 850000      E     MOV     ?_printf?BYTE+03H,i
003B 850000      E     MOV     ?_printf?BYTE+04H,i+01H
003E AC00        R     MOV     R4,i
0040 AD00        R     MOV     R5,i+01H
0042 E4                CLR     A
0043 120000      E     LCALL   ?C?FCASTI
0046 E4                CLR     A
0047 FB                MOV     R3,A
0048 FA                MOV     R2,A
0049 79A0              MOV     R1,#0A0H
004B 7840              MOV     R0,#040H
004D 120000      E     LCALL   ?C?FPMUL
0050 7B00              MOV     R3,#00H
0052 7AF0              MOV     R2,#0F0H
0054 797F              MOV     R1,#07FH
0056 7845              MOV     R0,#045H
0058 120000      E     LCALL   ?C?FPDIV
005B 8F00        E     MOV     ?_printf?BYTE+08H,R7
005D 8E00        E     MOV     ?_printf?BYTE+07H,R6
005F 8D00        E     MOV     ?_printf?BYTE+06H,R5
0061 8C00        E     MOV     ?_printf?BYTE+05H,R4
0063 7BFF              MOV     R3,#0FFH
0065 7A00        R     MOV     R2,#HIGH ?SC_0
0067 7900        R     MOV     R1,#LOW ?SC_0
0069 120000      E     LCALL   _printf
C51 COMPILER V7.00  MAIN                           06/28/2002 15:36:03 PAGE 3   

                                           ; SOURCE LINE # 45
006C C3                CLR     C
006D 74FF              MOV     A,#0FFH
006F 9500        R     SUBB    A,i+01H
0071 FD                MOV     R5,A
0072 740F              MOV     A,#0FH
0074 9500        R     SUBB    A,i
0076 FC                MOV     R4,A
0077 F500        E     MOV     ?_printf?BYTE+03H,A
0079 8D00        E     MOV     ?_printf?BYTE+04H,R5
007B E4                CLR     A
007C 120000      E     LCALL   ?C?FCASTI
007F E4                CLR     A
0080 FB                MOV     R3,A
0081 FA                MOV     R2,A
0082 79A0              MOV     R1,#0A0H
0084 7840              MOV     R0,#040H
0086 120000      E     LCALL   ?C?FPMUL

⌨️ 快捷键说明

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