你好
我在 F280041控制器上工作,程序将在调试模式下工作,但当我终止调试会话并复位控制器时,程序将不工作(释放模式)。
我在闪存中转储代码。
当控制器处于调试模式时,调试选项卡显示以下错误
在地址"0x3fc7a5"处中断、没有可用的调试信息、或者在程序代码之外。
请帮助我解决此问题。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
你好
我在 F280041控制器上工作,程序将在调试模式下工作,但当我终止调试会话并复位控制器时,程序将不工作(释放模式)。
我在闪存中转储代码。
当控制器处于调试模式时,调试选项卡显示以下错误
在地址"0x3fc7a5"处中断、没有可用的调试信息、或者在程序代码之外。
请帮助我解决此问题。
Dhaval、
您使用的引导模式是什么。 看起来 PC 是引导部分。 请查看 TRM 第4.6.5.1节
https://www.ti.com/lit/pdf/sprui33
请查看此链接。 我们的闪存专家已经介绍了如何从闪存引导的步骤。
Santosh、
我正在使用闪存引导选项、并相应地设置 GPIO 引脚。
我从闪存运行代码,当我不在预定义符号(不带 memcopy)中定义闪存时,代码将独立工作。
在上面的帖子中,它建议时间关键代码从闪存复制到 RAM,但当我看到映射自拍 时,它只有四 个字节在运行时从闪存复制到 RAM。 我的代码的哪个部分 从闪存复制到 RAM?
没有 memcopy 函数即可运行代码?
在调试模式下、我仍然会遇到以下错误、
在地址"0x3fc7a5"处中断、没有可用的调试信息、或者在程序代码之外。
谢谢、此致
Dhaval
Dhaval、
然后、当定义了_flash 符号时
// //将时间关键代码和闪存设置代码复制到 RAM。 这包括 //以下函数:InitFlash(); // // RamfuncsLoadStart、RamfuncsLoadSize 和 RamfuncsRunStart 符号 //由链接器创建。 请参阅器件.cmd 文件。 // memcpy (&RamfuncsRunStart、&RamfuncsLoadStart、(size_t)&RamfuncsLoadSize);
请看 blinky_led DriverLib 示例,然后从闪存启动,然后进入 device_init()函数。
请查看 RamfuncsRunStart 部分的闪存链接器命令文件。