📄 isd51.lst
字号:
A51 MACRO ASSEMBLER ISD51 08/27/2002 15:25:01 PAGE 1
MACRO ASSEMBLER A51 V7.00
OBJECT MODULE PLACED IN Isd51.OBJ
ASSEMBLER INVOKED BY: C:\KEIL\C51\BIN\A51.EXE Isd51.a51 SET(LARGE) DEBUG EP
LOC OBJ LINE SOURCE
1 $nomod51
2 ;------------------------------------------------------------------------------
3 ; ISD51 In-System Debugger for 8051 based microcontrollers
4 ; Copyright KEIL ELEKTRONIK GmbH and Keil Software, Inc. 2000 - 2002
5 ; Version 1.00 Beta 0
6 ;------------------------------------------------------------------------------
7 ; ISD51.A51: This module needs to be added to the user application
8 ;
9 ; Copy this file to your project folder and add the copy to your uVision2
10 ; project. You can customize several parameters of the ISD51 In-System
11 ; Monitor within this configuration file.
12 ;
13 ;------------------------------------------------------------------------------
14
15 ;#include "ISD51.H"
+1 16
+1 17
+1 18
+1 19
+1 20
+1 21
+1 22
+1 23
+1 24
+1 25
+1 26
+1 27
+1 28
+1 29
+1 30
+1 31
+1 32
+1 33
+1 34
+1 35
+1 36
+1 37
+1 38
+1 39
+1 40
+1 41
+1 42
+1 43
+1 44
+1 45
+1 46
+1 47
+1 48
+1 49
+1 50
+1 51
+1 52
0098 +1 53 sfr SCON = 0x98;
0099 +1 54 sfr SBUF = 0x99;
00A8 +1 55 sfr IEN = 0xA8;
+1 56
+1 57
+1 58
A51 MACRO ASSEMBLER ISD51 08/27/2002 15:25:01 PAGE 2
0099 +1 59 sbit TI = SCON^1;
0098 +1 60 sbit RI = SCON^0;
+1 61
+1 62
00AC +1 63 sbit ES = IEN^4;
+1 64
+1 65 CLR_TI MACRO ; Clear Transmit Interrupt Flag
+1 66 CLR TI ; No CPU register may be changed here
+1 67 ENDM
+1 68
+1 69 SET_TI MACRO ; Set Transmit Interrupt Flag
+1 70 SETB TI ; No CPU register may be changed here
+1 71 ENDM
+1 72
+1 73 SBYTE MACRO ; Transmit Byte in ACC via serial UART
+1 74 JNB TI,$ ; PSW may be modified without saving it
+1 75 CLR TI
+1 76 MOV SBUF,A
+1 77 ENDM
+1 78
+1 79 JB_RI MACRO label ; Jump if Receiver Interrupt Flag set
+1 80 JB RI,label ; ACC and PSW may be modified without saving it
+1 81 ENDM
+1 82
+1 83 JNB_RI MACRO label ; Jump if Receiver Interrupt Flag not set
+1 84 JNB RI,label ; ACC and PSW may be modified without saving it
+1 85 ENDM
+1 86
+1 87 RBYTE MACRO ; Read one Byte from serial UART to ACC
+1 88 MOV A,SBUF ; ACC and PSW may be modified without saving it
+1 89 CLR RI
+1 90 ENDM
+1 91
+1 92 SET_ES MACRO ; Enable Serial Interrupt
+1 93 SETB ES ; No CPU register may be changed here
+1 94 ENDM
+1 95
0023 +1 96 SINTRVEC EQU 0x23 ; Interrupt Vector Address of UART interrupt
+1 97
+1 98
+1 99
+1 100
+1 101
+1 102
+1 103
+1 104
+1 105
+1 106
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
A51 MACRO ASSEMBLER ISD51 08/27/2002 15:25:01 PAGE 3
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1 146
+1 147
+1 148
+1 149
+1 150
+1 151
152
153
154 ;------------------------------------------------------------------------------
155 ;----------------- !!! Do not modify code sections below !!! ------------------
156 ;------------------------------------------------------------------------------
157
158 NAME ISD51_CONFIGURATION
159 ;
160 GBYTE MACRO ; Receive one Character from 8051 Serial Interface
161 JNB_RI $
162 RBYTE
163 ENDM
164
165
166
0080 167 sfr P0 = 0x80;
0090 168 sfr P1 = 0x90;
00A0 169 sfr P2 = 0xA0;
00B0 170 sfr P3 = 0xB0;
00D0 171 sfr PSW = 0xD0;
00E0 172 sfr ACC = 0xE0;
00F0 173 sfr B = 0xF0;
0081 174 sfr SP = 0x81;
0082 175 sfr DPL = 0x82;
0083 176 sfr DPH = 0x83;
008E 177 sfr AUXR = 0x8E;
178
179
00FF 180 ?ISD?RAMTOP EQU 0x100-1
181
182 EXTRN NUMBER (?ISD?CORE)
183
184 PUBLIC ?ISD?RAMTOP
185 PUBLIC ?ISD?RESTART
186 PUBLIC ?ISD?CMDLOOP
187 PUBLIC ?ISD?GETBYTE
188 PUBLIC ?ISD?SENDBYTE
189 PUBLIC ?ISD?READSFR00
190 PUBLIC ?ISD?READSFR01
A51 MACRO ASSEMBLER ISD51 08/27/2002 15:25:01 PAGE 4
191 PUBLIC ?ISD?READSFR02
192 PUBLIC ?ISD?READSFR03
193 PUBLIC ?ISD?READSFR04
194 PUBLIC ?ISD?READSFR05
195 PUBLIC ?ISD?READSFR06
196 PUBLIC ?ISD?READSFR07
197 PUBLIC ?ISD?READSFR08
198 PUBLIC ?ISD?READSFR09
199 PUBLIC ?ISD?READSFR10
200 PUBLIC ?ISD?READSFR11
201 PUBLIC ?ISD?READSFR12
202 PUBLIC ?ISD?READSFR13
203 PUBLIC ?ISD?READSFR14
204 PUBLIC ?ISD?READSFR15
205 PUBLIC ?ISD?READSFR16
206 PUBLIC ?ISD?READSFR17
207 PUBLIC ?ISD?READSFR18
208 PUBLIC ?ISD?WRITESFR00
209 PUBLIC ?ISD?WRITESFR01
210 PUBLIC ?ISD?WRITESFR02
211 PUBLIC ?ISD?WRITESFR03
212 PUBLIC ?ISD?VERSION
213 PUBLIC __isd_init
214
0064 215 ?ISD?VERSION EQU 100 ; Version 1.00
216
217 ?PR?ISD51 SEGMENT CODE INBLOCK
218
---- 219 CSEG AT SINTRVEC ; Serial Interrupt
0023 020000 F 220 LJMP SerialInterrupt
221
222
223
---- 224 RSEG ?PR?ISD51
225 USING 0 ; Assume Registerbank 0 for ARx symbols
226
0000 227 SerialInterrupt:
0000 C0D0 228 PUSH PSW
0002 C0E0 229 PUSH ACC
0004 75D000 230 MOV PSW,#0 ; Select Register Bank 0
0007 C000 231 PUSH AR0
0009 C001 232 PUSH AR1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -