tim2_ar.asm

来自「ADUC814单片机的例程,包括单片机的所有模块」· 汇编 代码 · 共 54 行

ASM
54
字号
;====================================================================
;
; Author        : ADI - Apps
;
; Date          : Febuary 2001
;
; File          : Tim2_AR.asm
;
; Hardware      : ADuC814
;
; Description   : Flashes light every 256*56 machine cycles (@ 4Hz
;                 for core freq = 2.097152MHz) using timer 2 in Auto 
;                 Reload Mode. 
;____________________________________________________________________
$MOD814                       ;Use 8052 predefined Symbols

LED	EQU	P3.3

;____________________________________________________________________
                                                  ; BEGINNING OF CODE
CSEG
ORG 0000H

	JMP MAIN
;____________________________________________________________________
                                          ; TIMER 2 INTERRUPT ROUTINE
ORG 002Bh

        CPL     LED        ; Flash the light
        CLR     TF2        ; The TF2 flag must be cleared in software
        RETI


;____________________________________________________________________
                                                       ; MAIN PROGRAM
ORG 0060h                    ; Start code at address above interrupts			

MAIN:                         ; Main program

        SETB     ET2          ; Enable timer2 interrupt

        MOV      TL2, #00h    ; Initialise timer 2 registers & Reload 
        MOV      TH2, #0C9h    ; values to rollover every 55*256
        MOV      RCAP2L, #00h ; machine cycles (17.47us)
        MOV      RCAP2H, #0C8h

        SETB     EA           ; Enable interrupts

	MOV	 T2CON, #04h  ; Start timer 2 in 16-bit reload mode

        JMP      $            ; Wait here for timer Interrupts

END

⌨️ 快捷键说明

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