请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
部件号:SW-EK-TM4C1294XL 您好,
我想调试 BOOT_EMAC_FLASH (以太网引导加载程序)项目。 在 copy_loop (将闪存复制到 SRAM)内,程序被卡住。 它永远不会退出循环。
ProcessorInit: .asmfunc ;; ;; Copy the code image from flash to SRAM. ;; push {lr} movs r0, #0x0000 movs r1, #0x0000 movt r1, #0x2000 ldr r2, bss_start copy_loop: ldr r3, [r0], #4 str r3, [r1], #4 cmp r1, r2 blt copy_loop ;; ;; Zero fill the .bss section. ;; movs r0, #0x0000 ldr r2, bss_end zero_loop: str r0, [r1], #4 cmp r1, r2 blt zero_loop ;; ;; Set the vector table pointer to the beginning of SRAM. ;; movw r0, #(NVIC_VTABLE & 0xffff) movt r0, #(NVIC_VTABLE >> 16) movs r1, #0x0000 movt r1, #0x2000 str r1, [r0] ;; ;; Set the return address to the code just copied into SRAM. ;; orr lr, lr, #0x20000000 ;; ;; Return to the caller. ;; pop {lr} bx lr .endasmfunc
此外,当我离开时,单击 BSS_START 上的+ CTRL 键,它表示在索引中找不到符号“BSS_START”。
可能是什么问题?
此致,
拉万。