📄 blk1_832.lst
字号:
BLK1_832 PAGE 1
1 ;======================================================================
2 ;
3 ; Author : ADI - Apps
4 ;
5 ; Date : April 20001
6 ;
7 ; Filename : blk1_832.asm
8 ;
9 ; Hardware : ADuC832
10 ;
11 ; Description : Blinks LED continuously at 5Hz
12 ; Pressing INT0 followed by a UART reception of 'U'
13 ; (for upgrade code) allows the code to be upgraded
14 ;
15 ; NOTE: This program will only work if the option to
16 ; always run code from E000H after download is
17 ; selected.
18 ;
19 ;======================================================================
20 ;
21 $MOD832
22 ;____________________________________________________________________
23 ; BEGINNING OF CODE
---- 24 CSEG
0000 25 ORG 0000H
26
0000 012C 27 AJMP MAIN
28
29 ;____________________________________________________________________
30 ; INT0 ISR
0003 31 ORG 0003H
32 ; wait to receive a character from the UART
0003 3098FD 33 JNB RI, $ ; wait for reception
0006 C298 34 CLR RI
0008 E599 35 MOV A, SBUF
000A B4551E 36 CJNE A, #'U', ERROR
37
38 ; plan to upgrade new code => set BOOTEN
000D 75C700 39 MOV EADRH, #0
0010 75C600 40 MOV EADRL, #0
0013 75B901 41 MOV ECON, #1 ; read page
0016 43BC01 42 ORL EDATA1, #1 ; SET LSB
0019 75B905 43 MOV ECON, #5 ; ERASE page
001C 75B902 44 MOV ECON, #2 ; program page
001F 75B904 45 MOV ECON, #4 ; verify page
0022 E5B9 46 MOV A, ECON
0024 7005 47 JNZ ERROR
48 ; use the watchdog timer to reset part...run from E000H after reset
0026 D2C0 49 SETB WDWR
0028 75C082 50 MOV WDCON, #82h
51
002B 52 ERROR:
002B 32 53 RETI
54
55
56 ;____________________________________________________________________
57 ; MAIN
002C 58 MAIN:
BLK1_832 PAGE 2
59 ; enable INT0
002C D288 60 SETB IT0 ; INT0 edge triggered
002E D2AF 61 SETB EA ; enable inturrupts
0030 D2A8 62 SETB EX0 ; enable INT0
63
64 ; configure at fastest freq
0032 75D700 65 MOV PLLCON, #0
66
67 ; configure UART for 115200
0035 759E82 68 MOV T3CON, #82h
0038 759D09 69 MOV T3FD, #09h
003B 759852 70 MOV SCON, #52H
71
003E 72 BLINK:
003E B2B4 73 CPL P3.4
0040 120045 74 CALL DELAY
0043 013E 75 AJMP BLINK
76
77
78 ;____________________________________________________________________
79 ; DELAY
0045 80 DELAY:
81 ; 92ms DELAY
0045 78FF 82 MOV R0,#255
0047 83 DLY:
0047 79FF 84 MOV R1,#255 ; 205 x 255 x 1.43us
0049 D9FE 85 DJNZ R1,$
004B D8FA 86 DJNZ R0,DLY
87
004D 22 88 RET
89 ;____________________________________________________________________
90
91
92 END
VERSION 1.2h ASSEMBLY COMPLETE, 0 ERRORS FOUND
BLK1_832 PAGE 3
BLINK. . . . . . . . . . . . . . C ADDR 003EH
DELAY. . . . . . . . . . . . . . C ADDR 0045H
DLY. . . . . . . . . . . . . . . C ADDR 0047H
EA . . . . . . . . . . . . . . . B ADDR 00AFH PREDEFINED
EADRH. . . . . . . . . . . . . . D ADDR 00C7H PREDEFINED
EADRL. . . . . . . . . . . . . . D ADDR 00C6H PREDEFINED
ECON . . . . . . . . . . . . . . D ADDR 00B9H PREDEFINED
EDATA1 . . . . . . . . . . . . . D ADDR 00BCH PREDEFINED
ERROR. . . . . . . . . . . . . . C ADDR 002BH
EX0. . . . . . . . . . . . . . . B ADDR 00A8H PREDEFINED
IT0. . . . . . . . . . . . . . . B ADDR 0088H PREDEFINED
MAIN . . . . . . . . . . . . . . C ADDR 002CH
P3 . . . . . . . . . . . . . . . D ADDR 00B0H PREDEFINED
PLLCON . . . . . . . . . . . . . D ADDR 00D7H PREDEFINED
RI . . . . . . . . . . . . . . . B ADDR 0098H PREDEFINED
SBUF . . . . . . . . . . . . . . D ADDR 0099H PREDEFINED
SCON . . . . . . . . . . . . . . D ADDR 0098H PREDEFINED
T3CON. . . . . . . . . . . . . . D ADDR 009EH PREDEFINED
T3FD . . . . . . . . . . . . . . D ADDR 009DH PREDEFINED
WDCON. . . . . . . . . . . . . . D ADDR 00C0H PREDEFINED
WDWR . . . . . . . . . . . . . . B ADDR 00C0H PREDEFINED
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -