Microchip
直播中

胡书琴

8年用户 209经验值
私信 关注
[问答]

PIC24FJ256GB106 MLA引导加载程序功能不在存储器中

您好,我正在使用上面提到的MLA引导加载程序。我没有MPLAB编译器的PRO版本,因此必须编辑我的链接器脚本以允许引导加载程序适合。我注意到引导加载程序基本上可以工作,我可以用引导加载程序对设备进行编程,并将一个非常基本的led闪烁程序加载到图片上。当我试图调用一些初始化函数(如spi_init)时,我遇到了看似随机的地址错误。我试图让原始程序运行所需的引导加载程序链接器脚本。如果所有的代码都放在内存中,它似乎有运行的潜力。查看图片内存中的每个地址错误都来自于内存中没有的函数。我将看到一条指令“CALL spi_init”,但是在内存视图中没有spi_init标签。我已经把我的链接器文件修改成这样:改变app_ivt的起源或程序长度给我不同的结果。在所有的点上,一些函数不位于内存中,程序崩溃。以前有人经历过吗?

回帖(17)

杨叶

2020-3-6 07:14:36
嗨,有几个MLA引导加载程序……你用哪一个:USB设备?USB主机?当做
举报

史娟

2020-3-6 07:33:28
mla v2017_03_06是微芯片站点的最新版本。
举报

李雨晨

2020-3-6 07:39:28
我不明白你为什么试着在没有引导加载程序的情况下测试你的应用程序,但是正在使用引导加载程序GLD并开始修改它。如果你想在没有引导加载程序的情况下测试你的应用程序,那么你不应该使用MLA提供的GLD,而应该使用XC16的默认GLD。你有链接错误吗?您对不同内存视图的观察可能是误导性的。如果不修改GLD文件,您有什么问题吗?(对于Bootloader和App使用同样的方法)。您确保使用优化级别1吗?这足够好地使用/适合MLA示例中提供的最小引导加载程序。
举报

杨叶

2020-3-6 07:50:34
嗨,首先,您可以忽略引导加载程序和链接器文件来构建应用程序。如果您的应用程序在具有或不具有引导加载程序的情况下是健壮的,那么它将运行。您的应用程序在没有引导加载程序和链接器文件的情况下运行吗?你使用哪个板:你自己的板?微芯片板?当做
举报

更多回帖

发帖
×
20
完善资料,
赚取积分