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

📄 adcpin.lst

📁 aduc812精典源代码下载,适合初学者
💻 LST
字号:
ADCPIN                                                                                                        PAGE 1

                       1    ;********************************************************************
                       2    ;
                       3    ; Author        : ADI - Apps            www.analog.com/MicroConverter
                       4    ;
                       5    ; Date          : 15 July 1999
                       6    ;
                       7    ; File          : ADCpin.asm
                       8    ;
                       9    ; Hardware      : ADuC812
                      10    ;
                      11    ; Description   : Performs hardware pin driven ADC conversions and
                      12    ;                 outputs results on P0 & P2.  Continuously flashes
                      13    ;                 LED (independently of ADC routine) at approximately
                      14    ;                 5Hz (assuming an 11.0592MHz Mclk).
                      15    ;               
                      16    ;********************************************************************
                      17    
                      18    $MOD812                         ; Use 8052&ADuC812 predefined symbols
                      19    
  00B4                20    LED     EQU     P3.4            ; P3.4 drives red LED on eval board
  0000                21    CHAN    EQU     0               ; convert this ADC input channel..
                      22                                    ; ..chan values can be 0 thru 8
                      23    ;____________________________________________________________________
                      24                                                      ; BEGINNING OF CODE
----                  25    CSEG
                      26    
0000                  27    ORG 0000h
                      28    
0000 02004B           29            JMP     MAIN            ; jump to main program
                      30    ;____________________________________________________________________
                      31                                                 ; INTERRUPT VECTOR SPACE
0033                  32    ORG 0033H ; (ADC ISR)
                      33    
0033 85D980           34            MOV     P0,ADCDATAL     ; ADC result low byte to Port0  
0036 85DAA0           35            MOV     P2,ADCDATAH     ; high nibble and channel ID to Port2
0039 32               36            RETI
                      37    
                      38    ;====================================================================
                      39                                                           ; MAIN PROGRAM
004B                  40    ORG 004Bh
                      41    
004B                  42    MAIN:
                      43    
                      44    ; PRECONFIGURE...
                      45    
004B 75EF64           46            MOV     ADCCON1,#064h   ; power up ADC, 6.51us conv+acq time
004E 75D800           47            MOV     ADCCON2,#CHAN   ; select channel to convert
                      48    
                      49    ; LAUNCH CONTINUOUS CONVERSIONS...
                      50    
0051 D2AF             51            SETB    EA              ; enable interrupts
0053 D2AE             52            SETB    EADC            ; enable ADC interrupt
0055 43EF01           53            ORL     ADCCON1,#001h   ; enable hardware CONVST pin
                      54    
                      55    ; CONTINUE WITH OTHER CODE...
                      56    
0058 B2B4             57    AGAIN:  CPL     LED             ; blink (complement) the LED
005A 12005F           58            CALL    DELAY           ; delay 100ms
ADCPIN                                                                                                        PAGE 2

005D 80F9             59            JMP     AGAIN           ; repeat
                      60    
                      61    ; the micro is free to continue with other tasks (flashing the LED in
                      62    ; this case) while the ADC is converting, synchronously to the
                      63    ; external CONVST pin.  results are being handled by the ADC
                      64    ; interrupt service routine.
                      65    
                      66    ;____________________________________________________________________
                      67                                                             ; SUBROUTINE
                      68    
005F                  69    DELAY:                          ; delay 100ms
                      70    
005F 7FC8             71            MOV     R7,#200         ; 200 * 500us = 100ms
0061 7EE5             72    DLY1:   MOV     R6,#229         ; 229 * 2.17us = 500us
0063 DEFE             73            DJNZ    R6,$            ; sit here for 500us
0065 DFFA             74            DJNZ    R7,DLY1         ; repeat 200 times (100ms total)
0067 22               75            RET
                      76    
                      77    ;____________________________________________________________________
                      78    
                      79    END

VERSION 1.2h ASSEMBLY COMPLETE, 0 ERRORS FOUND
ADCPIN                                                                                                        PAGE 3

ADCCON1. . . . . . . . . . . . .  D ADDR  00EFH  PREDEFINED  
ADCCON2. . . . . . . . . . . . .  D ADDR  00D8H  PREDEFINED  
ADCDATAH . . . . . . . . . . . .  D ADDR  00DAH  PREDEFINED  
ADCDATAL . . . . . . . . . . . .  D ADDR  00D9H  PREDEFINED  
AGAIN. . . . . . . . . . . . . .  C ADDR  0058H  
CHAN . . . . . . . . . . . . . .    NUMB  0000H  
DELAY. . . . . . . . . . . . . .  C ADDR  005FH  
DLY1 . . . . . . . . . . . . . .  C ADDR  0061H  
EA . . . . . . . . . . . . . . .  B ADDR  00AFH  PREDEFINED  
EADC . . . . . . . . . . . . . .  B ADDR  00AEH  PREDEFINED  
LED. . . . . . . . . . . . . . .    NUMB  00B4H  
MAIN . . . . . . . . . . . . . .  C ADDR  004BH  
P0 . . . . . . . . . . . . . . .  D ADDR  0080H  PREDEFINED  
P2 . . . . . . . . . . . . . . .  D ADDR  00A0H  PREDEFINED  
P3 . . . . . . . . . . . . . . .  D ADDR  00B0H  PREDEFINED  

⌨️ 快捷键说明

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