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

📄 blk2_831.asm

📁 大量ADuc831的程序员代码
💻 ASM
字号:
;======================================================================
;
; Author        : ADI - Apps
;
; Date          : April 2002
;
; Filename      : blk2_831.asm
;
; Hardware      : ADuC831
;
; Description   : Blinks LED continuously at 5Hz
;		      Pressing INT0 followed by a UART reception of 'U'
;                 (for upgrade code) allows the code to be upgraded
;
;			NOTE: This program will only work if the option to
;                       always run code from E000H after download is
;				selected.
;
;======================================================================
;       
$MOD831
;____________________________________________________________________
                                                  ; BEGINNING OF CODE
CSEG
ORG     0000H

AJMP     MAIN

;____________________________________________________________________
                                                           ; INT0 ISR
ORG     0003H
	; wait to receive a character from the UART
	JNB	RI, $				; wait for reception
	CLR	RI
	MOV	A, SBUF
	CJNE	A, #'U', ERROR
		
	; plan to upgrade new code => set BOOTEN
	MOV	EADRH, #0
	MOV	EADRL, #0
	MOV	ECON, #1			; read page
	ORL	EDATA1, #1			; SET LSB
	MOV	ECON, #5			; ERASE page
	MOV	ECON, #2			; program page
	MOV	ECON, #4			; verify page
	MOV	A, ECON
	JNZ	ERROR
	; use the watchdog timer to reset part...run from E000H after reset
	
	SETB	WDWR
	MOV	WDCON, #82h

ERROR:	RETI

;____________________________________________________________________
                                                               ; MAIN
MAIN:	
	; enable INT0
	SETB	IT0			; INT0 edge triggered
	SETB	EA			; enable inturrupts
	SETB	EX0			; enable INT0

	; configure UART for 115200
	MOV	T3CON, #81h
	MOV	T3FD, #20h
	MOV	SCON, #52H

BLINK:
	CPL	P3.4
	CALL	DELAY
	CALL	DELAY
	CALL	DELAY
	CALL	DELAY
	CALL	DELAY
	AJMP	BLINK


;____________________________________________________________________
                                                              ; DELAY
DELAY:
	; 70ms DELAY 
	MOV	R0,#255
DLY:
	MOV	R1,#255			; 255 x 255 x 1.08us
	DJNZ	R1,$
	DJNZ	R0,DLY

	RET
;____________________________________________________________________


END

⌨️ 快捷键说明

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