Atollic TrueSTUDIO for STM32 9.3.0开发环境配置笔记
https://blog.csdn.net/zoomdy/article/details/54728479
https://blog.csdn.net/u013209302/article/details/52735802
https://blog.csdn.net/congpo2125/article/details/86549614
https://www.ac6-tools.com/downloads/SW4STM32/ 免费下载sw4stm32的连接,不错哦
https://blog.csdn.net/founderHAN/article/details/104636949
https://blog.csdn.net/cshy2013/article/details/88948643
https://www.jianshu.com/p/146c2109f619
https://blog.csdn.net/qq_38125389/article/details/87890965
https://blog.csdn.net/congpo2125/article/details/86549614
https://dl.21ic.com/download/truestudio-306215.html
https://marketplace.eclipse.org/content/eclipse-color-theme
http://releases.linaro.org/archive/14.05/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.9-2014.05_win32.zip.xz
http://releases.linaro.org/archive/15.06/components/
https://www.linaro.org/download
最近一直在使用STM32CubeMX和TrueSTUDIO进行STM32的程序开发,用起来已经是得心应手了。使用TrueSTUDIO的过程中知道了一些环境设置的小技巧,可以提高工作效率过减少问题,故专门贴出来。
TrueSTUDIO的环境设置主要是在项目的属性设置对话框里进行设置。
(1)使用并行编译
在C/C++ Build的Behavior设置页面,勾选Enable parallel build可以打开并行编译功能。新建一个Workspace后这个选项默认是不勾选的,现在的CPU都是多核的,打开并行编译选项后可以明显提高编译速度。
(2)编译优化级别设置
当需要进行程序的断点跟踪调试时,必须将编译的优化级别设置为None或Optimize for debugging,否则在单步调试时无法正确跟踪代码行。默认情况下不是这个选项,所以用于跟踪调试时必须进行设置。
(3)代码折叠功能
点击主菜单Window下的Preferences,打开Preferences设置对话框。在C/C++ --> Editor -->Folding 页面设置代码折叠功能。
TrueSTUDIO是具有代码折叠功能的,但是默认情况下只勾选了“Enable folding when opening a new editor”。如果要对预编译语句、if/else、for等语句进行代码折叠,就勾选下面的两个选项。在源代码编辑器里,具有折叠功能的代码行的左首会显示小图标用于代码折叠。使用代码折叠功能有助于快速分析代码结构,了解程序的工作原理。
1 使用cubemx可以直接生成,选择单独目录
2 添加外部文件,使用link模式,copy模式相当于在单独目录复制了一个新的文件,这样不适合多个IDE同时编辑。因此link比较适合多编译器开发。
3 多核编译,可以加速编译速度
4 添加相对路径的头文件,和iar keil等类似
5 可以选择源文件filter,但是目前用不到,因为我是添加文件的方式
6 alt /开启自动完成
7 优化等级 jlink debug设置
8可以import file system方式添加文件到工程中
9 代码折叠
10 c库选择,标准的大,nano的占用空间小
注意:nano库编译出的固件,比用standard库编译出的固件,空间上小25KB左右。
11 生成hex文件 ,也可以生成bin文件,需要再添加语句
优化等级:
O1优化会消耗少多的编译时间,它主要对代码的分支,常量以及表达式等进行优化。
O2会尝试更多的寄存器级的优化以及指令级的优化,它会在编译期间占用更多的内存和编译时间。
O3在O2的基础上进行更多的优化,例如使用伪寄存器网络,普通函数的内联,以及针对循环的更多优化。
Os主要是对代码大小的优化,我们基本不用做更多的关心。 通常各种优化都会打乱程序的结构,让调试工作变得无从着手。并且会打乱执行顺序,依赖内存操作顺序的程序需要做相关处理才能确保程序的正确性。
头文件路径
仿真调试设置:
类似于keil的不编译的选项
集成 astyle
${workspace_loc:/${project_name}} --style=allman -n "${resource_loc}"
printf浮点数输出使能
快捷键:
两种方法:
a> 进入编译设置,开启输出格式,注意:输出的格式是".binary",内容与".bin"一样。
b> 在编译步骤中加入生成bin文件的指令,注意:指令间有分号“;”隔开。
生成hex的指令是: arm-atollic-eabi-objcopy.exe -O ihex "${BuildArtifactFileBaseName}.elf" "${BuildArtifactFileBaseName}.hex" 生成bin的指令是: arm-atollic-eabi-objcopy.exe -O binary "${BuildArtifactFileBaseName}.elf" "${BuildArtifactFileBaseName}.bin"
jlink自动下载:
-autoconnect 1 -device stm32f103ZE -if swd -speed 4000 -commandfile ${workspace_loc:/xxxxx_two}\jlink\download.jlink
切换debug release版本,第5个小锤子可以切换
到处头文件路径、宏定义设置,这样只需要设置一次,比如debug,后面release直接导入即可,方便。