前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[小技巧]使用vscode和armclang编译器改善MDK开发效率

[小技巧]使用vscode和armclang编译器改善MDK开发效率

作者头像
AIoT-KK
发布2020-11-09 15:24:28
2.7K0
发布2020-11-09 15:24:28
举报
文章被收录于专栏:AIoT开源项目分享

前言:

开发过单片机的同学都对keil不陌生,我们知道keil集成了代码编辑,编译,和调试的功能,极大的方便了我们的开发。但是keil万年不变的代码编辑器对于阅读源代码来说是极其不友好,还有那个已经停止维护的Arm Compiler 5不仅编译慢,还存在隐藏的BUG,都让人难以忍受。

还对Arm Compiler 5和Arm Compiler 6比较陌生的同学,建议首先百度了解一下。

最新版本的MDK虽然只支持到了6.14,但是Arm已经发布了最新版本 6.15,并且在老版本的MDK版本上也可以安装最新版本,安装方法参考傻孩子大佬的文章:惊爆内幕:老MDK也可以使用新编译器

接下来的内容我们来把VScode编辑代码的优点和Arm Compiler 6编译代码的优点结合到一起,来解决使用MDK开发touchgfx项目编译慢,阅读代码不友好的缺点。

准备工作:

软件:MDK V5.29以上,Visual Studio Code;TouchGFXDesigner v4.15,STM32CubeMX V6.0.1

一、使用ARM Compiler 6.15编译TouchGFX工程

1. 替换freertos的port.c和portmacro.h文件 由于STM32CubeMX自动生成的freertos工程默认的是使用ARM Compiler 5编译,所以需要替换可以使用ARM Compiler 6编译的接口。可以在STM32CubeMX软件包的安装目录中按照自己单片机型号找到对应的文件,然后替换掉cubemx自动生成的port.c和portmacro.h。

由于cubemx每次生成的代码都会自动覆盖,所有如果想永久使用armclang编译器,可以直接把下边目录的文件替换掉。

2.替换touchgfx_core库文件 进入到touchgfx的库目录,可以发现有Keil和Keil6.x两个文件夹,其中Keil6.x文件夹下对应的库便是给AC6用的。可以手动在mdk中把touchgfx_core更换为Keil6.x文件夹下的touchgfx_core库。

3.在MDK中设置编译规则 去掉Short enums/Wchar选项

去掉Micro LIB选项

4. 最后编译,ac6编译速度会比ac5有明显提升

二、使用VScode的keil插件编辑TouchGFX工程

1. 打开VSCODE安装keil插件

设置keil的编译器路径

2. 打开刚才的touchgfx工程

3.集编辑与编译一体的工具大功告成

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-10-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AIoT开源项目分享 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言:
  • 准备工作:
  • 一、使用ARM Compiler 6.15编译TouchGFX工程
  • 二、使用VScode的keil插件编辑TouchGFX工程
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档