主题中讨论的其他器件: C2000WARE
您好!
我 实际上 在使用引导加载程序。
我能够在控制卡 F28069上运行引导加载程序和 BL_APP。
我在我们的定制器件(TMS320F28069)中上传引导加载程序、运行 BL_APP。 (一切正常、我能够返回到 DFU 模式)
我在我们的定制器件中上传引导加载程序、加载我们的应用程序(它可以正常工作)、但在我无法返回 DFU 模式后。
对于我们的项目、我导入 C2000Ware 4_00_00库。
我有2个不同的问题。
问题1.
当我在调试模式下使用 Step into 时:
对于 BL_APP:

对于自定义设备:
图1,如果我跳转到函数 USBDDFUUpdateBegin,在 BL_APP 中,我们从函数的开头开始。
图2,如果我跳转到函数 USBDDFUUpdateBegin, 则在自定义设备中,我们从另一个函数开始。
为什么会这样附加?
问题2.
真正的问题是我无法返回到 DFU 模式。
您已附加反汇编代码。
我不明白为什么在 BL_APP (对 USB 使用已弃用的文件)和 C 代码(使用 C2000WARE 4_00) 中、函数 不起作用
要将控制权返回到引导加载程序,我们有以下函数:
bl_app: ((((void (*.)(void)pBootEntry))();
我们的器件采用 C2000WARE 4_00 : (*(void (*)(void))(*(uint32_t *) 0x2C))();
在此行代码进入非法中断,中断行 是(*)((((void (*)(void))(*(uint32_t *)0x2C)))))();
如果我更改0x2C 的值、则反汇编中没有任何变化。
(我知道引导加载程序位于地址 0x3D8000处的闪存 H 中)
有什么想法吗?
谢谢
Alain。








