Beginner's questions to Atmel Studio compilers, linkers, etc

Go To Last Post
2 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I am a beginning to learn ATMEL ARM-based MCU. I have a ATSAMD20 Xplained Pro, and Atmel Studio 7

 

I have a couple of questions on how the programming of SAMD20 works:

- After MCU reset, what and where is the first instruction executed?

- Where and what is the "C startup" file? Vector table?

- Linker - how do I place a certain part of my code, in a certain part of the program memory (placement)? How do I define different memory sections?

 

I think the above are the basic one should know, before start to program the MCU. But where do I find such documents?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

For questions regarding the processor, see arm.com
The arm vector table starts at address 0. On reset, the start address is read from the vector table reset vector. The first instruction is fetched from that address.

The c startup code initialises the various tables (bss etc) and jumps to main(). It may also do some initialisation of the processor although, technically, that is separate part of the startup sequence.

Specifics on the compiler and tools , Google the doc on the arm gcc compiler.

Last Edited: Sat. Apr 29, 2017 - 11:58 PM