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

📄 dacsine.lst

📁 aduc842原程序代码 ad公司芯片应用笔记
💻 LST
字号:
DACSINE                                                                                                       PAGE 1

                       1    ;********************************************************************
                       2    ;
                       3    ; Author        : ADI - Apps            www.analog.com/MicroConverter
                       4    ;
                       5    ; Date          : October 2003
                       6    ;
                       7    ; File          : DACsine.asm
                       8    ;
                       9    ; Hardware      : ADuC842
                      10    ;
                      11    ; Description   : Outputs a sine waves on DAC0 at 1.03kHz.
                      12    ;                 Rate calculations assume a 2.09 Mclk, pllcon=3
                      13    ;
                      14    ;********************************************************************
                      15    
                      16    $MOD842                         ; Use 8052&ADuC842 predefined symbols
                      17    
  00B4                18    LED     EQU     P3.4            ; P3.4 drives red LED on eval board
                      19    
                      20    ;____________________________________________________________________
                      21                                                      ; BEGINNING OF CODE
----                  22    CSEG
                      23    
0000                  24    ORG 0000h
0000 75EF80           25            MOV     ADCCON1,#80H
0003 75D703           26            MOV     PLLCON,#03h
0006 75FD0D           27            MOV     DACCON,#00Dh    ; DAC0 on, 12bit, asynchronous
0009 75FA08           28            MOV     DAC0H,#008h
000C 75F900           29            MOV     DAC0L,#000h     ; DAC0 to mid-scale
                      30    
000F 901000           31            MOV     DPTR,#TABLE
                      32    
0012 E4               33    STEP:   CLR     A               ;                                   
0013 93               34            MOVC    A,@A+DPTR       ; get high data byte from table..   
0014 F5FA             35            MOV     DAC0H,A         ; ..and move it into DAC register   
0016 A3               36            INC     DPTR            ; move on to get low byte           
                      37    
0017 E4               38            CLR     A               ;                                   
0018 93               39            MOVC    A,@A+DPTR       ; get low data byte from table..    
0019 F5F9             40            MOV     DAC0L,A         ; ..and update DAC output           
001B A3               41            INC     DPTR            ; move on for next data point       
                      42    
001C 53827F           43            ANL     DPL,#07Fh       ; wrap around at end of table       
                      44    
001F E5FA             45            MOV     A,DAC0H         ;                                   
0021 A2E3             46            MOV     C,ACC.3         ; MSB of DAC0 value                 
0023 92B4             47            MOV     LED,C           ; LED = MSB of DAC0                 
                      48    
0025 80EB             49            JMP     STEP            ;                                   
                      50    
                      51    ;____________________________________________________________________
                      52                                                      ; SINE LOOKUP TABLE
1000                  53    ORG 01000h
                      54    
1000                  55    TABLE:
                      56    
1000 07FF             57    DB  007h, 0FFh
1002 08C8             58    DB  008h, 0C8h
DACSINE                                                                                                       PAGE 2

1004 098E             59    DB  009h, 08Eh
1006 0A51             60    DB  00Ah, 051h
1008 0B0F             61    DB  00Bh, 00Fh
100A 0BC4             62    DB  00Bh, 0C4h
100C 0C71             63    DB  00Ch, 071h
100E 0D12             64    DB  00Dh, 012h
1010 0DA7             65    DB  00Dh, 0A7h
1012 0E2E             66    DB  00Eh, 02Eh
1014 0EA5             67    DB  00Eh, 0A5h
1016 0F0D             68    DB  00Fh, 00Dh
1018 0F63             69    DB  00Fh, 063h
101A 0FA6             70    DB  00Fh, 0A6h
101C 0FD7             71    DB  00Fh, 0D7h
101E 0FF5             72    DB  00Fh, 0F5h
1020 0FFF             73    DB  00Fh, 0FFh
1022 0FF5             74    DB  00Fh, 0F5h
1024 0FD7             75    DB  00Fh, 0D7h
1026 0FA6             76    DB  00Fh, 0A6h
1028 0F63             77    DB  00Fh, 063h
102A 0F0D             78    DB  00Fh, 00Dh
102C 0EA5             79    DB  00Eh, 0A5h
102E 0E2E             80    DB  00Eh, 02Eh
1030 0DA7             81    DB  00Dh, 0A7h
1032 0D12             82    DB  00Dh, 012h
1034 0C71             83    DB  00Ch, 071h
1036 0BC4             84    DB  00Bh, 0C4h
1038 0B0F             85    DB  00Bh, 00Fh
103A 0A51             86    DB  00Ah, 051h
103C 098E             87    DB  009h, 08Eh
103E 08C8             88    DB  008h, 0C8h
1040 07FF             89    DB  007h, 0FFh
1042 0736             90    DB  007h, 036h
1044 0670             91    DB  006h, 070h
1046 05AD             92    DB  005h, 0ADh
1048 04EF             93    DB  004h, 0EFh
104A 043A             94    DB  004h, 03Ah
104C 038D             95    DB  003h, 08Dh
104E 02EC             96    DB  002h, 0ECh
1050 0257             97    DB  002h, 057h
1052 01D0             98    DB  001h, 0D0h
1054 0159             99    DB  001h, 059h
1056 00F1            100    DB  000h, 0F1h
1058 009B            101    DB  000h, 09Bh
105A 0058            102    DB  000h, 058h
105C 0027            103    DB  000h, 027h
105E 0009            104    DB  000h, 009h
1060 0000            105    DB  000h, 000h
1062 0009            106    DB  000h, 009h
1064 0027            107    DB  000h, 027h
1066 0058            108    DB  000h, 058h
1068 009B            109    DB  000h, 09Bh
106A 00F1            110    DB  000h, 0F1h
106C 0159            111    DB  001h, 059h
106E 01D0            112    DB  001h, 0D0h
1070 0257            113    DB  002h, 057h
1072 02EC            114    DB  002h, 0ECh
1074 038D            115    DB  003h, 08Dh
1076 043A            116    DB  004h, 03Ah
DACSINE                                                                                                       PAGE 3

1078 04EF            117    DB  004h, 0EFh
107A 05AD            118    DB  005h, 0ADh
107C 0670            119    DB  006h, 070h
107E 0736            120    DB  007h, 036h          ; end of table
                     121    
                     122    ;____________________________________________________________________
                     123    
                     124    END

VERSION 1.2h ASSEMBLY COMPLETE, 0 ERRORS FOUND
DACSINE                                                                                                       PAGE 4

ACC. . . . . . . . . . . . . . .  D ADDR  00E0H  PREDEFINED  
ADCCON1. . . . . . . . . . . . .  D ADDR  00EFH  PREDEFINED  
DAC0H. . . . . . . . . . . . . .  D ADDR  00FAH  PREDEFINED  
DAC0L. . . . . . . . . . . . . .  D ADDR  00F9H  PREDEFINED  
DACCON . . . . . . . . . . . . .  D ADDR  00FDH  PREDEFINED  
DPL. . . . . . . . . . . . . . .  D ADDR  0082H  PREDEFINED  
LED. . . . . . . . . . . . . . .    NUMB  00B4H  
P3 . . . . . . . . . . . . . . .  D ADDR  00B0H  PREDEFINED  
PLLCON . . . . . . . . . . . . .  D ADDR  00D7H  PREDEFINED  
STEP . . . . . . . . . . . . . .  C ADDR  0012H  
TABLE. . . . . . . . . . . . . .  C ADDR  1000H  

⌨️ 快捷键说明

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