【TrueStudio开发笔记】一些实用配置说明

1-背景

  • 目前开发mcu工程使用最多的是keil的MDK,这款IDE收费,因此基本用**版,
  • **版的license有效期到2020年6月,正版license特别贵,
  • 因此为了成本方面考虑,开始尝试使用免费的TrueStudio作为开发工具。

2-特点说明

  1. 基于eclipse界面设计风格,使用及配置等方面基本一致。
  2. 同时有Windows与linux版本,编译器可以用gcc,编译方法与soc一致性好。
  3. 专为STM32芯片设计用的IDE,免费使用。

3-工程建立

4-实用配置说明

下面开始说本文想说的重点:

1,配置并行编译

TrueStudio界面中,项目目录单击右键,选择菜单末尾“属性”,然后选择build菜单

【TrueStudio开发笔记】一些实用配置说明

2,包含头文件目录

【TrueStudio开发笔记】一些实用配置说明

3,包含源文件目录

【TrueStudio开发笔记】一些实用配置说明

注意:如果源文件目录跟工程文件“.cproject”在同目录,则用add folder;

否则应该用Link Folder,这里可以参考工程文件“.project”中的一些宏定义,用做相对目录跳转(而非完整目录路径)如下图:

【TrueStudio开发笔记】一些实用配置说明

【TrueStudio开发笔记】一些实用配置说明

“PROJECT_LOC”表示".cproject"工程目录所在文件;

“PARENT-3-PROJECT_LOC”表示工程目录向前3级目录;

类似有“PARENT-1-PROJECT_LOC”,“PARENT-2-PROJECT_LOC”等。

4,生成bin文件

两种方法:

a> 进入编译设置,开启输出格式,注意:输出的格式是".binary",内容与".bin"一样。

【TrueStudio开发笔记】一些实用配置说明

b> 在编译步骤中加入生成bin文件的指令,注意:指令间有分号“;”隔开。

【TrueStudio开发笔记】一些实用配置说明

生成hex的指令是:

arm-atollic-eabi-objcopy.exe -O ihex "${BuildArtifactFileBaseName}.elf" "${BuildArtifactFileBaseName}.hex"

生成bin的指令是:

arm-atollic-eabi-objcopy.exe -O binary "${BuildArtifactFileBaseName}.elf" "${BuildArtifactFileBaseName}.bin"

5,编译优先级设置

【TrueStudio开发笔记】一些实用配置说明

6,启用newlib_standard库

这个相当于MDK中的microLib库,是为了使用stdio.h等库函数的,TrueStudio默认使用的是Newlib-nano库,vsnprintf等接口没有实现,需要改成标准newlib库。

【TrueStudio开发笔记】一些实用配置说明

注意:nano库编译出的固件,比用standard库编译出的固件,空间上小25KB左右。

7,代码折叠功能

点击主菜单Window下的Preferences,打开Preferences设置对话框。在C/C++  --> Editor -->Folding 页面设置代码折叠功能。

【TrueStudio开发笔记】一些实用配置说明

8,一些实用快捷键

基本与eclipse相同,下面整理了一些常用的

【TrueStudio开发笔记】一些实用配置说明

5-总结

  • 总结一下,按照上面的一些配置,能够快速用起来TrueStudio这款免费的IDE,另外有linux版本,编译方式很像linux,对后面的自动化编译集成等工作都有价值,希望给大家带来帮助。
  • 吐槽一下,优化级别默认就是最小空间,这样编译出来的固件比如45KB,比MDK编译出来的39KB大一些,这还是用nano库,一些标准库函数vsnprintf之类的还用不了。
    如果想用vsnprintf,还得用standard库,编译出来的固件就到69KB了,空间大了好多。
    因此MDK还是有厉害的地方的,优化裁剪的地方都很多。