你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【NUCLEO-L476RG开发】+ 基于cube的IAR环境搭建

[复制链接]
lmx8912-288991 提问时间:2015-11-21 09:56 /
本帖最后由 lmx8912-288991 于 2015-11-21 10:01 编辑

由于工作原因,这份帖子来晚了。。。。
看到大家的测评都是用KEIL的环境,所以另辟蹊径选择IAR(估计重复的东西大家也不喜欢)。
先晒下板
19.png        20.png   
下面进入正题
一、工程模板的生成
  1.打开stm32cubeMX 4.11.0->新建工程(New Project)->选择开发板(Board Selector)->NUCLEO-L476RG
  2.进行管脚设置,时钟配置,资源配置,能量消耗计算(可不做,做了貌似也不准)
   (以上两点操作和KEIL的完全相同,大家应该都会,就不贴图了)
  3.Project->setting...(或快捷键Alt+P),弹出
   9.png (软件若没有STM32Cube FW_L4 V1.1.1,点下OK后,会自动提醒下载该库文件)
  选择Code Generator
   10.png
工程模板就生成成功了!
二、IAR环境搭建
  1.打开上面填写生成模板的路径,在EWARM文件夹下,打开Project.eww
  2.直接编译,提示错误
   12.png 找下资料,才知道没有选择芯片型号(,这模板生成的也太不智能了吧)
  3.选择工程右击->Option...
   13.png
  General Options->Device中选择ST STM32L476RG后OK
   14.png
  编译通过!!!
  4.因为开发板带ST-LINK,所以可直接下载运行。但也须配置
  选择工程右击->Option...->Debugger->Setup->Driver下拉选择ST-LINK
   16.png
  再选择ST-LINK,Reset选Normal,Interface选SWD,其他不变
   17.png
  下载正常使用!!!
   18.png
22.png
至此,IAR开发环境搭建完成。

总结:
     对IAR我也是个纯新手,搭建环境期间也出了不少问题。最早用的IAR是7.2版本,软件并不支持L476,试了些弥补的方法都没成功。主要IAR不像新版的KEIL 5 那样,缺的Driver可以下载后挂载到软件上。后面下载了7.4版本的IAR才解决。希望IAR也能出直接挂载Driver的软件,这样使用就会更简单方便。

评分

参与人数 1 ST金币 +10 收起 理由
沐紫 + 10

查看全部评分

收藏 1 评论21 发布时间:2015-11-21 09:56

举报

21个回答
lmx8912-288991 回答时间:2015-11-24 15:42:53
dsjsjf 发表于 2015-11-23 20:55
勾与不勾有什么区别,我没勾,也是成对出现 的

之前也没认真注意过这个问题,刚刚特地去试了下,直接上图了(这里以IAR为例,Keil应该雷同)
QQ截图20151124151846.png                QQ截图20151124153239.png
                            有勾                                                                                           没勾

上面两个工程都是实现LED闪烁的,且功能都正常。

勾了以后,外设的代码以单独的文件“XXX.c/XXX.h”呈现,此时的main.c文件只有6kb。
没勾,则外设的代码是放在main.c文件中,此时的main.c文件有9kb(经比较,就是多了GPIO的void MX_GPIO_Init(void)函数)
lmx8912-288991 回答时间:2015-11-25 16:27:59
眼大5子 发表于 2015-11-25 09:31
我也是按照您的方法一步一步生成的,附件是我的工程,有时间可以帮我看看吗?我是新手,不知道哪个步骤遗 ...

你上传的压缩包我试了下,确实编译时会出现上面提到的错误!我尝试重新生成工程(即运行ioc文件),发现在生成代码时会出错啊!(不知道在你的电脑上是否也有这个问题)
生成出错.png
而且应该就是你后面编译出错的原因所在吧(你后面编译时就是库文件出问题了)!

具体怎么解决我也不知道(百度了下,可能你生成的工程路径有中文,你可以试下)!
发一个我生成的你试下吧!实在不行,可以用我的模板!

stm32l476_iar.rar (7.85 MB, 下载次数: 3)
lmx8912-288991 回答时间:2015-11-25 06:53:26
眼大5子 发表于 2015-11-24 22:25
提示 Fatal Error: cannot open source file "stm32l4xx.h"

你是用stm32cubemx生成的工程吗?正常应该不会出这个问题的!我觉得你先要查下工程文件夹下是否有这个stm32l4xx.h文件。有,在option->C/C++ Compiler ->Preprocessor里看下是否有此文件所在的路径;没有,那你需要拷贝这个文件到相应路径!

因为看不到实际工程,所以只能以常见的问题猜测解决方法。
埃斯提爱慕 回答时间:2015-11-22 22:27:22
提示: 作者被禁止或删除 内容自动屏蔽
lmx8912-288991 回答时间:2015-11-23 08:38:51
dsjsjf 发表于 2015-11-22 22:27
Generated files  的第一个勾是什么作用?

从字面就可以理解:生成的外设初始化文件是‘.c/.h’成对出现的
党国特派员 回答时间:2015-11-23 10:46:48
学习IAR。。。 blank.png blank1.png blank2.png blank3.png blank4.png
埃斯提爱慕 回答时间:2015-11-23 20:55:12
提示: 作者被禁止或删除 内容自动屏蔽
lmx8912-288991 回答时间:2015-11-24 15:45:47
lmx8912-288991 发表于 2015-11-24 15:42
之前也没认真注意过这个问题,刚刚特地去试了下,直接上图了(这里以IAR为例,Keil应该雷同)
            ...

所以应该是在英文的理解上有出入(PS:英语有点差。。。)
眼大5子 回答时间:2015-11-24 20:41:18
为什么我生成的IAR工程不需要选择芯片型号,可能我是根据板子生成的
埃斯提爱慕 回答时间:2015-11-24 21:05:57
提示: 作者被禁止或删除 内容自动屏蔽
lmx8912-288991 回答时间:2015-11-24 21:29:35
眼大5子 发表于 2015-11-24 20:41
为什么我生成的IAR工程不需要选择芯片型号,可能我是根据板子生成的

多谢提醒!
今天用7.4版的IAR做测试时,确实也没发现需要选择芯片型号的问题(我也是习惯直接根据板子生成的,这样可以不用配置管脚)。
经分析,之前上面会出现选择芯片型号问题,应该是因为当时我装的是7.2版本的IAR,软件找不到L476芯片的缘故,所以直接没有选择芯片
lmx8912-288991 回答时间:2015-11-24 21:30:48
本帖最后由 lmx8912-288991 于 2015-11-24 21:32 编辑
dsjsjf 发表于 2015-11-24 21:05
谢谢楼主解答

互相学习,共同进步
眼大5子 回答时间:2015-11-24 22:20:36
楼主请教下,为什么我生成的文件用IAR7.4打开编译报十几个错误
眼大5子 回答时间:2015-11-24 22:25:11
提示 Fatal Error[Pe1696]: cannot open source file "stm32l4xx.h"
orima 回答时间:2015-11-25 08:29:03
谢谢分享。。。
12下一页

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版