请教yewuyi版主,这个问题怎么回事

[复制链接]
 楼主| 弓长月月鸟 发表于 2013-5-10 10:17 | 显示全部楼层 |阅读模式
#if defined (dpslp_v1_1) || defined (dpslp_v1_2) || defined (dpslp_v2_1) || defined (dpslp_v2_2) || defined (LIB_BUILD)
void __attribute__((section (".libperi"))) ReadDSGPR( CONTEXT* ptr );
#endif
     这句话中  ReadDSGPR( CONTEXT* ptr );  在主程序中调用了。问题是我在主程序中追踪这句话,走到对应的.H文件后,没有办法继续找了。我没有看到最终的有关寄存器的描述,心里觉得不可靠。还请ye版主指点一下。给俺讲解一下这句话到底啥来头。再次谢谢了。
yewuyi 发表于 2013-5-10 11:28 | 显示全部楼层
1、可能被编译器优化掉了,所以在当前行属于无效代码。
2、你应该首先找到该函数的定义和申明在何处?
 楼主| 弓长月月鸟 发表于 2013-5-10 13:24 | 显示全部楼层
现在我的问题是我从主函数中追踪这个函数,找不到函数的定义和申明。void __attribute__((section (".libperi"))) ,这句话中section(".libperi")”,不太明白是什么意思。我的例程是看的官方给的PIC24F的实例。很不理解其中的意思。
yewuyi 发表于 2013-5-10 13:39 | 显示全部楼层
本帖最后由 yewuyi 于 2013-5-10 16:30 编辑

下载完整的代码文件包,然后在其它各个文件找找看,
 楼主| 弓长月月鸟 发表于 2013-5-10 14:37 | 显示全部楼层
恩。好的。我找找看先。谢谢斑竹。
 楼主| 弓长月月鸟 发表于 2013-5-14 08:17 | 显示全部楼层
昨天晚上又查找了一下ReadDSGPR( CONTEXT* ptr );
终于找到函数的位置。在C30编译器自带的外设里面有详细的定义。再次谢谢yewuyi版主提醒。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:一直在路上

16

主题

543

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部
个人签名:一直在路上

16

主题

543

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部