?? startup.lst
字號:
ARM Macro Assembler Page 1
1 00000000 ; <<< Use Configuration Wizard in Context Menu >>>
2 00000000 ;*******************************************************
***********************
3 00000000 ;
4 00000000 ; Startup.s - Startup code for Stellaris.
5 00000000 ;
6 00000000 ; Copyright (c) 2006 Luminary Micro, Inc. All rights re
served.
7 00000000 ;
8 00000000 ; Software License Agreement
9 00000000 ;
10 00000000 ; Luminary Micro, Inc. (LMI) is supplying this software
for use solely and
11 00000000 ; exclusively on LMI's Stellaris Family of microcontroll
er products.
12 00000000 ;
13 00000000 ; The software is owned by LMI and/or its suppliers, and
is protected under
14 00000000 ; applicable copyright laws. All rights are reserved.
Any use in violation of
15 00000000 ; the foregoing restrictions may subject the user to cri
minal sanctions under
16 00000000 ; applicable laws, as well as to civil liability for the
breach of the terms
17 00000000 ; and conditions of this license.
18 00000000 ;
19 00000000 ; THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHE
THER EXPRESS, IMPLIED
20 00000000 ; OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED W
ARRANTIES OF
21 00000000 ; MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE A
PPLY TO THIS SOFTWARE.
22 00000000 ; LMI SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPE
CIAL, INCIDENTAL, OR
23 00000000 ; CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
24 00000000 ;
25 00000000 ; This is part of revision 852 of the Stellaris Driver L
ibrary.
26 00000000 ;
27 00000000 ;*******************************************************
***********************
28 00000000
29 00000000 ;*******************************************************
***********************
30 00000000 ;
31 00000000 ; <h> Stack Configuration
32 00000000 ; <o> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8>
33 00000000 ; </h>
34 00000000 ;
35 00000000 ;*******************************************************
***********************
36 00000000 00000100
Stack EQU 0x00000100
37 00000000
38 00000000 ;*******************************************************
***********************
39 00000000 ;
40 00000000 ; <h> Heap Configuration
41 00000000 ; <o> Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
ARM Macro Assembler Page 2
42 00000000 ; </h>
43 00000000 ;
44 00000000 ;*******************************************************
***********************
45 00000000 00000000
Heap EQU 0x00000000
46 00000000
47 00000000 ;*******************************************************
***********************
48 00000000 ;
49 00000000 ; Allocate space for the stack.
50 00000000 ;
51 00000000 ;*******************************************************
***********************
52 00000000 AREA STACK, NOINIT, READWRITE, ALIGN
=3
53 00000000 StackMem
54 00000000 SPACE Stack
55 00000100
56 00000100 ;*******************************************************
***********************
57 00000100 ;
58 00000100 ; Allocate space for the heap.
59 00000100 ;
60 00000100 ;*******************************************************
***********************
61 00000100 AREA HEAP, NOINIT, READWRITE, ALIGN=
3
62 00000000 HeapMem
63 00000000 SPACE Heap
64 00000000
65 00000000 ;*******************************************************
***********************
66 00000000 ;
67 00000000 ; Indicate that the code in this file preserves 8-byte a
lignment of the stack.
68 00000000 ;
69 00000000 ;*******************************************************
***********************
70 00000000 PRESERVE8
71 00000000
72 00000000 ;*******************************************************
***********************
73 00000000 ;
74 00000000 ; Place code into the reset code section.
75 00000000 ;
76 00000000 ;*******************************************************
***********************
77 00000000 AREA RESET, CODE, READONLY
78 00000000 THUMB
79 00000000
80 00000000 ;*******************************************************
***********************
81 00000000 ;
82 00000000 ; The vector table.
83 00000000 ;
84 00000000 ;*******************************************************
***********************
85 00000000 EXPORT __Vectors
ARM Macro Assembler Page 3
86 00000000 __Vectors
87 00000000 00000100 DCD StackMem + Stack ; Top of Stack
88 00000004 00000000 DCD Reset_Handler ; Reset Handler
89 00000008 00000000 DCD NmiSR ; NMI Handler
90 0000000C 00000000 DCD FaultISR ; Hard Fault Handle
r
91 00000010 00000000 DCD IntDefaultHandler
; MPU Fault Handler
92 00000014 00000000 DCD IntDefaultHandler
; Bus Fault Handler
93 00000018 00000000 DCD IntDefaultHandler ; Usage Fault
Handler
94 0000001C 00000000 DCD 0 ; Reserved
95 00000020 00000000 DCD 0 ; Reserved
96 00000024 00000000 DCD 0 ; Reserved
97 00000028 00000000 DCD 0 ; Reserved
98 0000002C 00000000 DCD IntDefaultHandler
; SVCall Handler
99 00000030 00000000 DCD IntDefaultHandler ; Debug Monit
or Handler
100 00000034 00000000 DCD 0 ; Reserved
101 00000038 00000000 DCD IntDefaultHandler
; PendSV Handler
102 0000003C 00000000 DCD IntDefaultHandler
; SysTick Handler
103 00000040 00000000 DCD IntDefaultHandler ; GPIO Port A
104 00000044 00000000 DCD IntDefaultHandler ; GPIO Port B
105 00000048 00000000 DCD IntDefaultHandler ; GPIO Port C
106 0000004C 00000000 DCD IntDefaultHandler ; GPIO Port D
107 00000050 00000000 DCD IntDefaultHandler ; GPIO Port E
108 00000054 00000000 DCD IntDefaultHandler ; UART0
109 00000058 00000000 DCD IntDefaultHandler ; UART1
110 0000005C 00000000 DCD IntDefaultHandler ; SSI
111 00000060 00000000 DCD IntDefaultHandler ; I2C
112 00000064 00000000 DCD IntDefaultHandler ; PWM Fault
113 00000068 00000000 DCD IntDefaultHandler
; PWM Generator 0
114 0000006C 00000000 DCD IntDefaultHandler
; PWM Generator 1
115 00000070 00000000 DCD IntDefaultHandler
; PWM Generator 2
116 00000074 00000000 DCD IntDefaultHandler ; Quadrature
Encoder
117 00000078 00000000 DCD IntDefaultHandler
; ADC Sequence 0
118 0000007C 00000000 DCD IntDefaultHandler
; ADC Sequence 1
119 00000080 00000000 DCD IntDefaultHandler
; ADC Sequence 2
120 00000084 00000000 DCD IntDefaultHandler
; ADC Sequence 3
ARM Macro Assembler Page 4
121 00000088 00000000 DCD IntDefaultHandler ; Watchdog
122 0000008C 00000000 DCD IntDefaultHandler ; Timer 0A
123 00000090 00000000 DCD IntDefaultHandler ; Timer 0B
124 00000094 00000000 DCD IntDefaultHandler ; Timer 1A
125 00000098 00000000 DCD IntDefaultHandler ; Timer 1B
126 0000009C 00000000 DCD IntDefaultHandler ; Timer 2A
127 000000A0 00000000 DCD IntDefaultHandler ; Timer 2B
128 000000A4 00000000 DCD IntDefaultHandler ; Comp 0
129 000000A8 00000000 DCD IntDefaultHandler ; Comp 1
130 000000AC 00000000 DCD IntDefaultHandler ; Comp 2
131 000000B0 00000000 DCD IntDefaultHandler
; System Control
132 000000B4 00000000 DCD IntDefaultHandler
; Flash Control
133 000000B8
134 000000B8 ;*******************************************************
***********************
135 000000B8 ;
136 000000B8 ; This is the code that gets called when the processor f
irst starts execution
137 000000B8 ; following a reset event.
138 000000B8 ;
139 000000B8 ;*******************************************************
***********************
140 000000B8 EXPORT Reset_Handler
141 000000B8 Reset_Handler
142 000000B8 ;
143 000000B8 ; Call __main() in the C library, which will call the ap
plication
144 000000B8 ; supplied main().
145 000000B8 ;
146 000000B8 IMPORT __main
147 000000B8 4802 LDR R0, =__main
148 000000BA 4700 BX R0
149 000000BC
150 000000BC ;*******************************************************
***********************
151 000000BC ;
152 000000BC ; This is the code that gets called when the processor r
eceives a NMI. This
153 000000BC ; simply enters an infinite loop, preserving the system
state for examination
154 000000BC ; by a debugger.
155 000000BC ;
156 000000BC ;*******************************************************
***********************
157 000000BC NmiSR
158 000000BC E7FE B NmiSR
159 000000BE
160 000000BE ;*******************************************************
***********************
161 000000BE ;
162 000000BE ; This is the code that gets called when the processor r
eceives a fault
163 000000BE ; interrupt. This simply enters an infinite loop, prese
rving the system state
164 000000BE ; for examination by a debugger.
165 000000BE ;
166 000000BE ;*******************************************************
ARM Macro Assembler Page 5
***********************
167 000000BE FaultISR
168 000000BE E7FE B FaultISR
169 000000C0
170 000000C0 ;*******************************************************
***********************
171 000000C0 ;
172 000000C0 ; This is the code that gets called when the processor r
eceives an unexpected
173 000000C0 ; interrupt. This simply enters an infinite loop, prese
rving the system state
174 000000C0 ; for examination by a debugger.
175 000000C0 ;
176 000000C0 ;*******************************************************
***********************
177 000000C0 IntDefaultHandler
178 000000C0 E7FE B IntDefaultHandler
179 000000C2
180 000000C2 ;*******************************************************
***********************
181 000000C2 ;
182 000000C2 ; Make sure the end of this section is aligned.
183 000000C2 ;
184 000000C2 ;*******************************************************
***********************
185 000000C2 00 00 ALIGN
186 000000C4
187 000000C4 ;*******************************************************
***********************
188 000000C4 ;
189 000000C4 ; Some code in the normal code section for initializing
the heap and stack.
190 000000C4 ;
191 000000C4 ;*******************************************************
***********************
192 000000C4 00000000 AREA |.text|, CODE, READONLY
193 00000000
194 00000000 ;*******************************************************
***********************
195 00000000 ;
196 00000000 ; The function expected of the C library startup code fo
r defining the stack
197 00000000 ; and heap memory locations.
198 00000000 ;
199 00000000 ;*******************************************************
***********************
200 00000000 IMPORT __use_two_region_memory
201 00000000 EXPORT __user_initial_stackheap
202 00000000 __user_initial_stackheap
203 00000000 4802 LDR R0, =HeapMem
204 00000002 4903 LDR R1, =(StackMem + Stack)
205 00000004 4A01 LDR R2, =(HeapMem + Heap)
206 00000006 4B03 LDR R3, =StackMem
207 00000008 4770 BX LR
208 0000000A
209 0000000A ;*******************************************************
***********************
210 0000000A ;
211 0000000A ; Make sure the end of this section is aligned.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -