📄 blink.lst
字号:
BLINK PAGE 1
1 ;********************************************************************
2 ;
3 ; Author : ADI - Apps www.analog.com/MicroConverter
4 ;
5 ; Date : October 2003
6 ;
7 ; File : blink.asm
8 ;
9 ; Hardware : ADuC842/ADuC843
10 ;
11 ; Description : Blinks LED continuously.
12 ; 200mSec period @ 50% duty cycle.
13 ;
14 ;********************************************************************
15
16 $MOD842 ; use 8052 predefined symbols
17
00B4 18 LED EQU P3.4 ; P3.4 is red LED on eval board
19
20 ;____________________________________________________________________
21 ; MAIN PROGRAM
---- 22 CSEG
23
0000 24 ORG 0000h
25
0000 740A 26 MOV A,#010
0002 B2B4 27 BLINK: CPL LED ; flash (complement) the red LED
0004 120009 28 CALL DELAY ; call software delay
0007 80F9 29 JMP BLINK ; repeat indefinately
30
31 ;____________________________________________________________________
32 ; SUBROUTINES
0009 33 DELAY: ; Delays by ms 10* A
34 ; 10mSec based on 2.094MHZ
35 ; Core Clock
36 ; i.e. default ADuC842 Clock
37
0009 F9 38 MOV R1,A ; Acc holds delay variable (1 clock)
000A 7A1B 39 DLY0: MOV R2,#01Bh ; Set up delay loop0 (2 clocks)
000C 7BFF 40 DLY1: MOV R3,#0FFh ; Set up delay loop1 (2 clocks)
000E DBFE 41 DJNZ R3,$ ; Dec R3 & Jump here until R3 is 0 (3 clocks)
0010 DAFA 42 DJNZ R2,DLY1 ; Dec R2 & Jump DLY1 until R2 is 0 (3 clocks)
0012 D9F6 43 DJNZ R1,DLY0 ; Dec R1 & Jump DLY0 until R1 is 0 (3 clocks)
0014 22 44 RET ; Return from subroutine
45 ;____________________________________________________________________
46
47 END
VERSION 1.2h ASSEMBLY COMPLETE, 0 ERRORS FOUND
BLINK PAGE 2
BLINK. . . . . . . . . . . . . . C ADDR 0002H
DELAY. . . . . . . . . . . . . . C ADDR 0009H
DLY0 . . . . . . . . . . . . . . C ADDR 000AH
DLY1 . . . . . . . . . . . . . . C ADDR 000CH
LED. . . . . . . . . . . . . . . NUMB 00B4H
P3 . . . . . . . . . . . . . . . D ADDR 00B0H PREDEFINED
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -