【NUCLEO-L476RG开发】+ 基于cube的IAR环境搭建
本帖最后由 lmx8912-288991 于 2015-11-21 10:01 编辑由于工作原因,这份帖子来晚了。。。。
看到大家的测评都是用KEIL的环境,所以另辟蹊径选择IAR(估计重复的东西大家也不喜欢)。
先晒下板
下面进入正题
一、工程模板的生成
1.打开stm32cubeMX 4.11.0->新建工程(New Project)->选择开发板(Board Selector)->NUCLEO-L476RG
2.进行管脚设置,时钟配置,资源配置,能量消耗计算(可不做,做了貌似也不准)
(以上两点操作和KEIL的完全相同,大家应该都会,就不贴图了)
3.Project->setting...(或快捷键Alt+P),弹出
(软件若没有STM32Cube FW_L4 V1.1.1,点下OK后,会自动提醒下载该库文件)
选择Code Generator
工程模板就生成成功了!
二、IAR环境搭建
1.打开上面填写生成模板的路径,在EWARM文件夹下,打开Project.eww
2.直接编译,提示错误
找下资料,才知道没有选择芯片型号(:L,这模板生成的也太不智能了吧)
3.选择工程右击->Option...
General Options->Device中选择ST STM32L476RG后OK
编译通过!!!
4.因为开发板带ST-LINK,所以可直接下载运行。但也须配置
选择工程右击->Option...->Debugger->Setup->Driver下拉选择ST-LINK
再选择ST-LINK,Reset选Normal,Interface选SWD,其他不变
下载正常使用!!!
至此,IAR开发环境搭建完成。
总结:
对IAR我也是个纯新手,搭建环境期间也出了不少问题。最早用的IAR是7.2版本,软件并不支持L476,试了些弥补的方法都没成功。主要IAR不像新版的KEIL 5 那样,缺的Driver可以下载后挂载到软件上。后面下载了7.4版本的IAR才解决。希望IAR也能出直接挂载Driver的软件,这样使用就会更简单方便。
Generated files的第一个勾是什么作用? dsjsjf 发表于 2015-11-22 22:27
Generated files的第一个勾是什么作用?
从字面就可以理解:生成的外设初始化文件是‘.c/.h’成对出现的 学习IAR。。。 lmx8912-288991 发表于 2015-11-23 08:38
从字面就可以理解:生成的外设初始化文件是‘.c/.h’成对出现的
勾与不勾有什么区别,我没勾,也是成对出现 的 dsjsjf 发表于 2015-11-23 20:55
勾与不勾有什么区别,我没勾,也是成对出现 的
之前也没认真注意过这个问题,刚刚特地去试了下,直接上图了(这里以IAR为例,Keil应该雷同)
有勾 没勾
上面两个工程都是实现LED闪烁的,且功能都正常。
勾了以后,外设的代码以单独的文件“XXX.c/XXX.h”呈现,此时的main.c文件只有6kb。
没勾,则外设的代码是放在main.c文件中,此时的main.c文件有9kb(经比较,就是多了GPIO的void MX_GPIO_Init(void)函数)
lmx8912-288991 发表于 2015-11-24 15:42
之前也没认真注意过这个问题,刚刚特地去试了下,直接上图了(这里以IAR为例,Keil应该雷同)
...
所以应该是在英文的理解上有出入(PS:英语有点差。。。) 为什么我生成的IAR工程不需要选择芯片型号,可能我是根据板子生成的 谢谢楼主解答 眼大5子 发表于 2015-11-24 20:41
为什么我生成的IAR工程不需要选择芯片型号,可能我是根据板子生成的
多谢提醒!
今天用7.4版的IAR做测试时,确实也没发现需要选择芯片型号的问题(我也是习惯直接根据板子生成的,这样可以不用配置管脚)。
经分析,之前上面会出现选择芯片型号问题,应该是因为当时我装的是7.2版本的IAR,软件找不到L476芯片的缘故,所以直接没有选择芯片