关闭

小熊arm学习总结:iar7.3建立工程报错:cannot open the source file "XXXxxx.h

标签: arm
1186人阅读 评论(0) 收藏 举报
当确定头文件等设置都没有问题的时候,可以试一试下面的方法去解决,我亲身体验完美通过:

方法一.

STM32工程 从IAR6.0 转到 IAR6.3

用IAR6.3打开IAR6.0 的工程,编译的时候出现提示错误:

extern uint32_t __get_PSP(void); 已经在C:\Program Files\IAR Systems\Embedded Workbench 6.0\arm\inc\c\intrinsics.h文件中定义

extern uint32_t __get_MSP(void);已经在C:\Program Files\IAR Systems\Embedded Workbench 6.0\arm\inc\c\intrinsics.h文件中定义 。。。。。。

这是由于IAR6.3已经加入了CM3的内核定义,就不需要ST库中的core_cm3.c 和 core_cm3.h 这两个文件的定义了

解决办法从ST网站找到:

直接删除core_cm3.c 和 core_cm3.h 这两个文件,然后在工程设置里面勾选 "Use CMSIS"

方法二.

把这个东西注释掉就可以了 core_cm3.h里的这个! 再添加一句

!#if defined (__ICCARM__)

//#include <intrinsics.h> /* IAR Intrinsics *///注释掉 __intrinsic void __DSB(void); //添加上

#endif

方法三:将iar安装文件里面的core_cmFunc.h和core_cmInstr.h文件复制到自己当前工程文件中并包含进来:

设置USE CMSIS方法:

1: Project options > General Options > Library

Configuration 里选择 USE CMSIS ;

编译,通过。。。。。


http://www.505book.com/


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:200116次
    • 积分:2785
    • 等级:
    • 排名:第13360名
    • 原创:80篇
    • 转载:2篇
    • 译文:0篇
    • 评论:46条
    最新评论