よくある質問
- M051 ベースシリーズ(95)
- M0518シリーズ(97)
- M0519シリーズ(43)
- M0564 シリーズ(1)
- ミニ 51 ベースシリーズ(90)
- ナノ 100/102 ベースシリーズ(101)
- Nano103 ベースシリーズ(10)
- ナノ 110/112 LCD シリーズ(100)
- ナノ 120 USB シリーズ(111)
- ナノ 130 アドバンストシリーズ(110)
- NUC029 シリーズ(94)
- NUC100/200 アドバンストシリーズ(102)
- NUC120/122/123/220 USB シリーズ(116)
- NUC121/125シリーズ(1)
- NUC126 USB シリーズ(2)
- NUC130/230 CAN シリーズ(103)
- NUC131/NUC1311 CAN シリーズ(98)
- NUC140/240 コネクティビティシリーズ(114)
常见问答
How to put code into SRAM for execution when using NUC505? Datum:2017-10-17
1. In the main, add:
/* Relocate vector table in SRAM for fast interrupt handling. */
{
#if defined ( __CC_ARM )
extern uint32_t __Vectors[];
extern uint32_t __Vectors_Size[];
extern uint32_t Image$$ER_VECTOR2$$ZI$$Base[];
printf("Relocate vector table in SRAM (0x%08X) for fast interrupt handling.\n", Image$$ER_VECTOR2$$ZI$$Base);
memcpy((void *) Image$$ER_VECTOR2$$ZI$$Base, (void *) __Vectors, (unsigned int) __Vectors_Size);
SCB->VTOR = (uint32_t) Image$$ER_VECTOR2$$ZI$$Base;
#elif defined (__ICCARM__)
#pragma section = "VECTOR2"
extern uint32_t __Vectors[];
extern uint32_t __Vectors_Size[];
printf("Relocate vector table in SRAM (0x%08X) for fast interrupt handling.\n", __section_begin("VECTOR2"));
memcpy((void *) __section_begin("VECTOR2"), (void *) __Vectors, (unsigned int) __Vectors_Size);
SCB->VTOR = (uint32_t) __section_begin("VECTOR2");
#endif
}
2. Add scatter file, as shown below:

For the sample code, refer to: NUC505BSPV3.01.000\SampleCode\BootTemplate\MainOnSRAM
3. To execute the code in Debug mode, change the initialization file to SPIROM.ini.

| Produkte: | Mikrocontroller ,Arm Cortex-M4-MCUs ,NUC505-Serie ,NUC505DL13Y ,NUC505DLA ,NUC505DS13Y ,NUC505DSA ,NUC505YLA2Y ,NUC505YLA ,NUC505YO13Y |
|---|---|
| Applikationen: | |
| Funktion: | Peripherals,Memory,SRAM |