Arm Community
Site
Search
User
Site
Search
User
Groups
Arm Research
DesignStart
Education Hub
Graphics and Gaming
High Performance Computing
Innovation
Multimedia
Open Source Software and Platforms
Physical
Processors
Security
System
Software Tools
TrustZone for Armv8-M
中文社区
Blog
Announcements
Artificial Intelligence
Automotive
Healthcare
HPC
Infrastructure
Innovation
Internet of Things
Machine Learning
Mobile
Smart Homes
Wearables
Forums
All developer forums
IP Product forums
Tool & Software forums
Support
Open a support case
Documentation
Downloads
Training
Arm Approved program
Arm Design Reviews
Community Help
More
Cancel
Developer Community
Tools and Software
Software Tools
Jump...
Cancel
Software Tools
Arm Development Studio forum
Cortex M3 - how the startup works
Tools, Software and IDEs blog
Forums
Videos & Files
Help
Jump...
Cancel
New
Replies
4 replies
Subscribers
126 subscribers
Views
3787 views
Users
0 members are here
Related
Cortex M3 - how the startup works
Offline
Sebastian Gaertner
over 7 years ago
Note: This was originally posted on 15th May 2009 at http://forums.arm.com
Hi all,
I have some problems understanding the startup procedure of the ARM, here Cortex M3.
Address 0x0000.0000 holds the MSP (main Stack Pointer) and it is the 1st register the Cortex will read after a reset/start.
Address 0x0000.0004 holds the Reset Vector and it will be read after reading the MSP before. Then it jumps to the address that is placed in this register. The rest of the program is then called.
Now the question is: when do I write the values to the both registers at address 0x0 and 0x4?
E.g. if I have my bootcode at address at flash address 0x100 I need to write the value into the register 0x4. But when I power on the device it just will read from 0x4 before I can write to there.
Parents
Offline
Simon Craske
over 7 years ago
Note: This was originally posted on 15th May 2009 at
http://forums.arm.com
The values at these locations are considered non-volatile and should be present before the Cortex-M3 is released from reset. Typically these values will be in the flash/ROM image preloaded onto the device in the same way that your code at 0x100 is.
hth
s.
Cancel
Up
0
Down
Reply
Cancel
Reply
Offline
Simon Craske
over 7 years ago
Note: This was originally posted on 15th May 2009 at
http://forums.arm.com
The values at these locations are considered non-volatile and should be present before the Cortex-M3 is released from reset. Typically these values will be in the flash/ROM image preloaded onto the device in the same way that your code at 0x100 is.
hth
s.
Cancel
Up
0
Down
Reply
Cancel
Children
No data
More questions in this forum
By title
By date
By reply count
By view count
By most asked
By votes
By quality
Descending
Ascending
All recent questions
Unread questions
Questions you've participated in
Questions you've asked
Unanswered questions
Answered questions
Questions with suggested answers
Questions with no replies
Answered
Errors while importing CCS project into IAR project
+1
Arm Compiler
458
views
1
reply
Latest
1 month ago
by
Andy Neil
Answered
Connecting to multiple cores with command line debugger?
0
DS-5 Debugger
1321
views
2
replies
Latest
1 month ago
by
Alex Earl
Answered
ARM Toolchain Visual Studio Code
+1
1500
views
6
replies
Latest
1 month ago
by
Andy Neil
Answered
Automation for IAR build and run
+1
1614
views
1
reply
Latest
1 month ago
by
Stephen Theobald
Answered
index are changing with the voltage apply to the adc
+1
1986
views
2
replies
Latest
1 month ago
by
Vishal_Patel
<
>
View all questions in Arm Development Studio forum