用Keil写代码是会让人发疯的,以前一直用VS stdio 写,后来发现VS Code更强大,于是开始用,但是发现写C51有些关键字是不支持的,老是提出错误,也是几经折腾,终于摸索出一些解决办法,记录下来,碰到这些问题的可以参考一下。
出错提示:
设置好后
一、安装VS Code后,需要安装以下两个插件:
1、C/C++ Intellisense 插件
2、Chinese (Simplified)Languge 中文语言插件
有时安装VS Code后输入代码没有提示,是因为没有安装.net framework 4.5.2 ,安装上就好了,这个问题也拆腾了我好久。
二、建立工作区:
1、打开“文件” > “将文件夹添加到工作区” ,选择源文件目录,然后添加
在左边的资源管理中就会显示文件夹下的所有文件
2、然后点“文件” > “将工作区另存为“ > 保存到项目目录下,这个保存位置可以自己选择。
三、配置cpp_properties.json 文件
1、按ctrl+shift+P 打开Command Palette,运行C/Cpp: Edit configurations…生成c_cpp_properties.json:
2、配置路径信息,在includePath 中输入 “${workspaceFolder}/**” ,输入Keil的头文件存放路径:C:\Keil\C51\INC ,路径注意要用双斜杠。
路径说明
"${workspaceFolder}/**",
"C:\\Keil\\C51\\INC" 表示只搜索当前目录
"C:\\Keil\\C51\\INC\\**" \\** 表示搜索当前目录及所有子目录
四、增加C51关键字:
标准C语言是没有C51中的关键字的,像sbit, xdata, interrupt 这种,不添加的话,就会有错误提示,我采用define的方法添加
在 “defines” 中添加
“sbit=char”,
“code=const”,
“xdata=”,
“data=”,
“sfr=char”,
“interrupt=”,
“bit=u8”
c_cpp_properties.json 文件的文本:
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**",
"C:\\Keil\\C51\\INC\\**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE",
"sbit=char",
"code=const",
"xdata=",
"data=",
"sfr=char",
"interrupt=",
"bit=u8"
],
"intelliSenseMode": "msvc-x64"
}
],
"version": 4
}
保存文件好JSON文件,大功告成!可以使用VS Code强悍的代码补全功能撸51代码了。