完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
您好,我使用MPLAB X IDE 3.26和XC16 1.21为PIC24FJ256GA106创建Bootloader和应用程序的组合。我已经将引导加载程序设置为应用程序的“可加载项目”。在应用程序中,我注意到当我调用Bootloader中定义的函数时,链接器给出了一个“未定义的引用”错误。从Bootloader项目中定义的“Y”被正确使用。我是否忽略了一个链接选项来正确地包括“可加载项目”,或者仅仅引用这些函数是不可能的吗?如果它是我忽略的选项,我很好奇为什么在添加一个“可加载项目”时默认不包含这个选项。谢谢。
以上来自于百度翻译 以下为原文 Hello, I am using MPLab X IDE 3.26 and XC16 1.21 to create a combination of Bootloader and Application for a PIC24FJ256GA106. I've set the Bootloader as a "Loadable Project" for the Application. I've noticed in the Application that when I call a function defined in the Bootloader, the linker gives an "undefined reference" error. The #defines from the Bootloader project are used properly. Am I overlooking a linker option to properly include the "Loadable Project", or is it simply impossible to reference those functions? If it is an option I'm overlooking, I'm kind of curious why this isn't included by default when adding a "Loadable Project". Thanks in advance. |
|
相关推荐
1个回答
|
|
不,没有链接器选项。包括引导加载程序作为可加载项目简单意味着您得到一个统一的HEX文件来编程芯片。如果将引导加载程序包含为一个项目,则MPLA.X将在必要时对包含的项目进行编译(如果您将其作为HEX文件包含),则不能编译它,但它不能在两个项目之间创建任何交叉连接。我知道,你可以使用的是在一个通用的地址中在引导加载程序中设置一个“跳转表”,然后在另一个程序中创建一个“指针到函数”的故事,并通过这些指针跳转,而不是非常安全的做法,除非你非常小心参数传递和返回。ING、中断等希望此帮助
以上来自于百度翻译 以下为原文 No, there is no linker option. Including the boot-loader as a Loadable Project simple means you get a single unified HEX file to program the chip with. If you include the boot loader as a project then MPLAB.X will do a compile of the included project if necessary (which you don't get if you include it as a HEX file) but it cannot create any cross linking between the two projects. If you want access to one program's routines from within the other the only way I know of that you could use would be to setup a "jump table" in the boot-loader at a universally know address and then create a tale of "pointer to function"s in the other program and jump via these pointers, not a safe practice unless you are very careful with parameter passing and returning, interrupts etc. Hope this helps PhilipJ |
|
|
|
只有小组成员才能发言,加入小组>>
5238 浏览 9 评论
2028 浏览 8 评论
1950 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3204 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2253 浏览 5 评论
775浏览 1评论
665浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
593浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
675浏览 0评论
575浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 21:02 , Processed in 1.420540 second(s), Total 76, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号