方法一.
STM32工程 从IAR6.0 转到 IAR6.3
用IAR6.3打开IAR6.0 的工程,编译的时候出现提示错误:
extern uint32_t __get_PSP(void); 已经在C:Program FilesIAR SystemsEmbedded Workbench 6.0arminccintrinsics.h文件中定义
extern uint32_t __get_MSP(void);已经在C:Program FilesIAR SystemsEmbedded Workbench 6.0arminccintrinsics.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
#endif
方法三:将iar安装文件里面的core_cmFunc.h和core_cmInstr.h文件复制到自己当前工程文件中并包含进来:
设置USE CMSIS方法:
1: Project options > General Options > Library
Configuration 里选择 USE CMSIS ;
编译,通过。。。。。
关键字:arm iar7 3 建立工程 报错『本文转载自网络,版权归原作者所有,如有侵权请联系删除』