📄 start_xc.lst
字号:
AX51 MACRO ASSEMBLER START_XC 01/01/03 05:11:18 PAGE 1
MACRO ASSEMBLER AX51 V2.15
OBJECT MODULE PLACED IN START_XC.OBJ
ASSEMBLER INVOKED BY: e:\Keil\C51\BIN\AX51.EXE START_XC.a51 SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
1 $nomod51
2 ;------------------------------------------------------------------------------
3 ; This file is part of the C51 Compiler package
4 ; Startup Code for the Infineon XC8xx devices
5 ; Copyright (c) 1988-2005 Keil Elektronik GmbH and Keil Software, Inc.
6 ; Version 1.00
7 ;
8 ; *** <<< Use Configuration Wizard in Context Menu >>> ***
9 ;------------------------------------------------------------------------------
10 ; STARTUP.A51: This code is executed after processor reset.
11 ;
12 ; To translate this file use A51 with the following invocation:
13 ;
14 ; A51 STARTUP.A51
15 ;
16 ; To link the modified STARTUP.OBJ file to your application use the following
17 ; Lx51 invocation:
18 ;
19 ; Lx51 your object file list, STARTUP.OBJ controls
20 ;
21 ;------------------------------------------------------------------------------
22 ;
23 ;<e> Use off-chip XTAL
24 ;<i> XC8xx series runs by default from on-chip osciallator.
25 ;<i> optionally you may use a off-chip XTAL
0000 26 XTAL EQU 0 ; set to 1 for off-chip XTAL
27
28 ; <o> PLL N-Divider
29 ; <0=> N=14
30 ; <1=> N=15
31 ; <2=> N=16 (10 MHz XTAL)
32 ; <3=> N=17
33 ; <4=> N=18
34 ; <5=> N=19
35 ; <6=> N=20 (8 MHz XTAL)
36 ; <7=> N=21
37 ; <8=> N=24
38 ; <9=> N=28
39 ; <10=> N=30
40 ; <11=> N=32 (5 MHz XTAL)
41 ; <12=> N=40
42 ; <13=> N=42
43 ; <14=> N=45
44 ; <15=> N=50
0002 45 NDIV EQU 2 ; default 2
46 ;</e>
47 ;------------------------------------------------------------------------------
48 ;
49 ; User-defined <h> Power-On Initialization of Memory
50 ;
51 ; With the following EQU statements the initialization of memory
52 ; at processor reset can be defined:
53 ;
54 ;<o> IDATA memory length <0x0-0x100>
55 ;<i> Note: The absolute start-address of IDATA memory is always 0
56 ;<i> The IDATA space overlaps physically the DATA and BIT areas.
0080 57 IDATALEN EQU 0x80
58 ;
AX51 MACRO ASSEMBLER START_XC 01/01/03 05:11:18 PAGE 2
59 ; <o> XDATA memory start address <0x0-0xFFFF>
60 ; <i> absolute start-address of XDATA memory
F000 61 XDATASTART EQU 0xF000
62 ;
63 ; <o> XDATA memory length <0x0-0xFFFF>
64 ; <i> length of XDATA memory in bytes.
0200 65 XDATALEN EQU 0x200
66 ;
67 ; <o> PDATA memory start address <0x0-0xFFFF>
68 ; <i> absolute start-address of PDATA memory
0000 69 PDATASTART EQU 0H
70 ;
71 ; <o> PDATA memory length <0x0-0xFF>
72 ; <i> length of PDATA memory in bytes.
0000 73 PDATALEN EQU 0H
74 ;
75 ; </h>
76 ;------------------------------------------------------------------------------
77 ;
78 ; <h> Reentrant Stack Initilization
79 ;
80 ; The following EQU statements define the stack pointer for reentrant
81 ; functions and initialized it:
82 ;
83 ; Stack Space for reentrant functions in the SMALL model.
84 ; <e> Activate reentrant Stack (SMALL model)
0000 85 IBPSTACK EQU 0 ; set to 1 if small reentrant is used.
86 ; <o> top of stack <0x0-0xFF>
87 ; <i> set top of stack to highest location+1
0100 88 IBPSTACKTOP EQU 0xFF +1 ; default 0FFH+1
89 ; </e>
90 ;
91 ; Stack Space for reentrant functions in the LARGE model.
92 ; <e> Activate reentrant Stack (LARGE model)
0000 93 XBPSTACK EQU 0 ; set to 1 if large reentrant is used.
94 ; <o> top of stack <0x0-0xFFFF>
95 ; <i> set top of stack to highest location+1.
00010000 96 XBPSTACKTOP EQU 0xFFFF +1 ; default 0FFFFH+1
97 ; </e>
98 ;
99 ; Stack Space for reentrant functions in the COMPACT model.
100 ; <e> Activate reentrant Stack (COMPACT model)
0000 101 PBPSTACK EQU 0 ; set to 1 if compact reentrant is used.
102 ;
103 ; <o> top of stack <0x0-0xFF>
104 ; <i> set top of stack to highest location+1.
0100 105 PBPSTACKTOP EQU 0xFF +1 ; default 0FFH+1
106 ; </e>
107 ; </h>
108 ;------------------------------------------------------------------------------
109 ;
110 ; <e>Set Memory Page for Using the Compact Model with 64 KByte xdata RAM
111 ;
112 ; <i>Define the xdata page used for pdata variables.
113 ; <i>PPAGE must conform with the PPAGE set in the linker invocation.
114 ;
115 ; Enable pdata memory page initalization
0000 116 PPAGEENABLE EQU 0 ; set to 1 if pdata object are used.
117 ;
118 ; <o> PPAGE number <0x0-0xFF>
119 ; <i> uppermost 256-byte address of the page used for pdata variables.
00F0 120 PPAGE EQU 0xF0
121 ;
122 ; <o> SFR address which supplies uppermost address byte <0x0-0xFF>
123 ; <i> most 8051 variants use P2 as uppermost address byte
00A0 124 PPAGE_SFR DATA 0A0H
AX51 MACRO ASSEMBLER START_XC 01/01/03 05:11:18 PAGE 3
125 ;
126 ; </e>
127 ;------------------------------------------------------------------------------
128
129 ; Standard SFR Symbols
00E0 130 ACC DATA 0E0H
00F0 131 B DATA 0F0H
0081 132 SP DATA 81H
0082 133 DPL DATA 82H
0083 134 DPH DATA 83H
135
136 ; XC8xx specific SFR Symbols used in STARTUP code
00BF 137 sfr SCU_PAGE = 0xBF
00B7 138 sfr PLL_CON = 0xB7
00B6 139 sfr OSC_CON = 0xB6
00BB 140 sfr PASSWD = 0xBB
141
142
143 NAME ?C_STARTUP
144
145
------ 146 ?C_C51STARTUP SEGMENT CODE
------ 147 ?STACK SEGMENT IDATA
148
------ 149 RSEG ?STACK
000000 150 DS 1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -