VS Code编写Keil工程
1、前言
keil C51作为最经典的入门IDE,尽管功能强大,但是界面不太友好,也不支持常用的代码自动补全,代码重构等基本功能,代码量多了以后,程序的编写,调用,查看,修改等都很不方便,网上了解了一下常用的开发工具软件,最终选择了VS Code代替Keil,记录分享一下过程,也方便以后查看。
网上的Keil代码补全设置只针对MDK版本Keil MDK 5代码补全功能设置,Keil C51不支持代码补全!!!
通常换了一个开发工具软件,需要重新搭建开发环境,这是很麻烦的事情,但是使用VS Code + Keil Assistant插件可以让这个过程变得非常简单。这里要感谢开发这款插件的大神。
2、使用限制
VS Code是代码编辑器,通过安装插件,只是实现Keil作为IDE最基本的编译和下载功能,不能完全代替keil,因为插件只使用了keil的编译器,这在大多数情况下已经够用了,但还是有一些限制:
- 调试需要回到Keil中
- 工程文件的添加或删除需要在keil中进行(后面还会说)
3、安装VS Code和插件
VS Code官网:https://code.visualstudio.com/
下载安装VS Code,选择Windows下的稳定版即可
以中文语言插件为例,点左侧的插件按钮,搜索chinese,选择中文简体安装即可,其他插件的安装类似。(大部分插件安装后直接就能用了,设置语言为中文还需要重启一下VS Code)
还需要安装的插件:
Keil Assistant
C/C++ IntelliSense(PS:这个插件安装好就不用管它了,没有什么要设置的)
4、Keil Assistant的设置和使用
打开Keil Assiatant的扩展设置,填写UV4.exe的路径到对应位置即可。这里用的是Keil C51,如果是Keil MDK,就填写在下面。
注意完整路径以UV4.exe结束,默认安装路径是C:\Keil_v5\UV4\UV4.exe
然后就可以添加Keil工程到VS Code了:
查看刚才添加的工程代码:
点击这里进行编译,或者按F7编译:
编译输出信息和Keil完全一样,Ctrl+单击可以快速的定位到错误位置。
关于之前的使用限制第二点,工程文件的添加或删除需要在keil中进行,这里再作进一步说明:因为keil的文件目录是在关闭keil时更新的。
例如要添加工程文件夹或者添加.c .h文件,跟直接使用Keil一样,需要添加文件到keil左侧的Project窗口,然后关闭keil,就会自动更新到VS Code中了,否则在VS Code里编译会因找不到文件而报错。
通过上面的设置不难发现,Keil Assiatant插件只是在VS Code中调用本地的Keil编译器,因此有关工程的编译选项设置,也需要回到keil中设置,比如生成.HEX文件的位置等。
然后就可以愉快的使用VS Code写代码了,VS Code有很多有用的代码编辑功能和技巧,可以查看相关的VS Code教程,推荐一个大佬的总结VS Code使用技巧整理。
5、其他
直接添加的工程会显示我们不需要的文件夹,可以在.vscode文件夹下的setting.json里进行设置,参考VSCode隐藏项目中不必要的文件
VS Code中几乎所有的设置都是通过json来设置的,所以有必要熟悉这种模式(最开始使用时,我想设置某个功能,一直习惯性的想找到设置的按钮。。。)。
在接触VS Code之前,本人也使用过source insight,了解过一点eclipse。
![](/qrcode.jpg)
相较于VS Code,eclipse是强大的集成开发环境,主要用于java,通过扩展也可以很好的支持C/C++,但界面比较繁琐,不够轻量,上手不怎么友好,用来写个C51有点杀鸡用牛刀的感觉。而且没有现成的可以直接编译Keil C51工程的插件或脚本,编译还得回到Keil。
source insight只是代码编辑器,用于查看较大的软件工程源代码时非常不错,但是编译同样得回到Keil,而且界面感觉不如VS Code漂亮(个人感觉,勿喷)。
VS Code至少有三款插件用于支持Keil编译,其中就包括之前的Keil Assistant,另外两个插件分别是Platform IO IDE和EIDE。
Platform IO IDE需要联网使用,不太方便,EIDE的配置稍显麻烦,而且这两个插件都是使用SDCC工具链进行编译,源代码与Keil C有稍许不同,现有的工程代码可能不能直接编译,还需要做一些修改。
VS Code有很多功能强大的插件,网上有很多资料,可以自行搜索。
相关链接:
VS Code自定义C代码模板