大家好、使用 FreeRTOS 运行程序并通过引导加载程序时遇到了问题。 没有 FreeRTOS 的程序工作正常、但当我在应用程序中使用 FreeRTOS 时、程序无法工作。 我可以加载它、但当我输入 run 命令时、它不起作用。 我该怎么办? 谢谢!
在这里、您可以找到应用链接器设置
/* Linker Settings */
--retain="*(.intvecs)"
/*----------------------------------------------------------------------------*/
/* Memory Map */
MEMORY
{
VECTORS (X) : origin=0x00010020 length=0x00000040
/*sector 4/5 are used for application */
FLASH_CODE (RX) : origin=0x00010060 length=0x80000 - 0x40 fill=0xFFFFFFFF
FLASH0 (RX) : origin=0x00090020 length=0x00200000 - 0x18000
FLASH1 (RX) : origin=0x00300020 length=0x00200000
STACKS (RW) : origin=0x08000000 length=0x00001500
RAM (RW) : origin=0x08001500 length=0x0007EB00
}
/*----------------------------------------------------------------------------*/
/* Section Configuration */
SECTIONS
{
.intvecs : {} > VECTORS
.text align(32) : {} > FLASH_CODE
.const align(32) : {} > FLASH_CODE
.cinit align(32) : {} > FLASH_CODE
.pinit align(32) : {} > FLASH_CODE
.kernelBSS align(32) : {} > FLASH_CODE
.kernelHEAP align(32) : {} > FLASH_CODE
.kernelTEXT align(32) : {} > FLASH_CODE
.bss : {} > RAM
.data : {} > RAM
.sysmem : {} > RAM
}
这里有引导加载程序 intvecs.asm、
    .sect ".intvecs"
    .arm
;-------------------------------------------------------------------------------
; import reference for interrupt routines
    .ref _c_int00
    .ref phantomInterrupt
    .def resetEntry
;-------------------------------------------------------------------------------
; interrupt vectors
resetEntry
        b   _c_int00
undefEntry
        b   undefEntry
svcEntry
        b   svcEntry
prefetchEntry
        b   prefetchEntry
dataEntry
        b   dataEntry
        b   phantomInterrupt
        ldr pc,[pc,#-0x1b0]
        ldr pc,[pc,#-0x1b0]
如果您需要任何其他文件、请问我、我将提供这些文件
再次感谢您
 
				 
		 
					