请教一下STM32F2的固件库,和IAR的版本对应问题。

[复制链接]
8647|13
 楼主| javenreal 发表于 2011-6-8 10:42 | 显示全部楼层 |阅读模式
下载了 STM32F2xx_StdPeriph_Lib_V1.0.0
里面的工程在IAR6.1下能打开,但是编译出错。请教一下是我的配置问题还是版本不兼容?

IAR 版本: IAR C/C++ Compiler for ARM  6.20.0.52543 (6.20.0.52543)

错误提示:

Error[Pe147]: declaration is incompatible with "__interwork __softfp unsigned long __get_PSP(void)"  
(declared at line 52 of "\Embedded Workbench 6.0\arm\inc\c\intrinsics.h")
\STM32F2xx_StdPeriph_Lib_V1.0.0\Libraries\CMSIS\CM3\CoreSupport\core_cm3.h 1084
香水城 发表于 2011-6-8 11:02 | 显示全部楼层
不要用老的库,请下载最新版本固件库。
 楼主| javenreal 发表于 2011-6-8 11:49 | 显示全部楼层
不好意思,再问一下。ST网站上好像只有这一个版本哦。截图见附件
未命名.JPG
香水城 发表于 2011-6-8 11:59 | 显示全部楼层
我看错了,以为你要的是STM32F1的,抱歉,抱歉,:L
 楼主| javenreal 发表于 2011-6-8 12:50 | 显示全部楼层
那么,是要换IAR版本吗?
 楼主| javenreal 发表于 2011-6-8 15:20 | 显示全部楼层
顶,请过来人指点一、二
 楼主| javenreal 发表于 2011-6-8 15:39 | 显示全部楼层
回7楼,器件型号我看了是对的,而且工程是原封不动的官方的例子,不会错的。
 楼主| javenreal 发表于 2011-6-8 17:42 | 显示全部楼层
报错的是类似这样的函数:
__intrinsic unsigned long __get_PSP( void );
extern uint32_t __get_PSP(void);

类似这样的错误有几百处。

unsigned long 和 uint32_t 应该是一样的呀
kingpoo 发表于 2011-6-8 21:59 | 显示全部楼层
可能是某些头文件的包含问题!
smare 发表于 2011-6-14 23:06 | 显示全部楼层
我也遇过了这个问题,好像是IAR 版本问题,
就用6.20 里的三个文件换下了这个库里了三个文件
文件名分别是
core_cm3.c
intrinsics.h
core_cm3.h
不过后好发现好像只换intrinsics.h也可以..
amonghappy 发表于 2011-7-19 16:11 | 显示全部楼层
楼上的方法就是IAR推荐的方法。使用以前可以用的版本的文件替换新文件即可。
ap_lfs 发表于 2012-3-30 23:55 | 显示全部楼层
受教了。谢谢诸位。
LXXAVR 发表于 2013-3-6 16:34 | 显示全部楼层
请问STM32开发 IAR编译器哪里有下呀?我的QQ是2512993809
sunnyhey 发表于 2013-4-17 16:25 | 显示全部楼层
我用5.4版本也可以打开,但是编译出错,选择芯片时没有F2系列的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

15

主题

48

帖子

1

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