13.07.2015 Views

TASKING VX-toolset for ARM User Guide

TASKING VX-toolset for ARM User Guide

TASKING VX-toolset for ARM User Guide

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Run-time Environment0x00000000 then you also have to specify a vector table ROM address to prevent overlapping addressranges.By default, the symbol __VECTOR_TABLE_ROM_ADDR is defined as 0x00000000.Reserve RAM space <strong>for</strong> copy of vector table (all architectures exceptM-profile)You can ask the linker to reserve space in RAM memory <strong>for</strong> a copy of the vector table at run-time at acertain address in memory. Typically this would be the address which will be the mapping of address0x00000000 after ROM/RAM re-mapping. If you reserve space <strong>for</strong> a copy you can also let the startupcode copy the table automatically from ROM to RAM, but only if position independent vectors are used.By default, the symbol __VECTOR_TABLE_RAM_SPACE is not defined.Vector table RAM address (all architectures except M-profile)With the define __VECTOR_TABLE_RAM_ADDR you can set the address in RAM of the copy of the vectortable (default 0x00000000).Copy of vector table in RAM (all architectures except M-profile)If you define the symbol __VECTOR_TABLE_RAM_COPY, the linker will provide copy address symbolsthat will be used by the startup code to copy the vector table from ROM to RAM.Refer to the run-time library implementation of the __init_vector_table routine inlib\src\initvectortable.asm or initvectortable_thumb.asm <strong>for</strong> more in<strong>for</strong>mation.9.3. CMSIS SupportThe interrupt vector table, required <strong>for</strong> CMSIS, is defined in device specific LSL files. These LSL files areavailable in the include.lsl directory of the product installation directory. Device LSL files are similarlynamed as the CMSIS header files. For example when you use stm32f10x.h the LSL file stm32f10x.lslis available. The device LSL files include the file arm_arch.lsl. You can control the allocated amountof flash and SRAM by using defines <strong>for</strong> the linker. The names of these defines vary per device.The following table contains an overview of the defines you can set.Vector table definesDefine__NO_DEFAULT_AUTO_VECTORS__CMSIS_VECTORS__NR_OF_VECTORS__COPY_VECTOR_TABLE__VECTOR_TABLE_ROM_ADDRDescriptionIf defined, the default vector table will not be generated.If defined, the CMSIS vector table will be generated.Number of vectors.If defined, the vector table is copied from ROM to RAM at startup.Address of the vector table in ROM.229

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!