一站式解决VScode配置C++和Arduino开发环境问题(相关文件免费共享)

最近要用Arduino做一个项目,网上看来那么多教程,花了两天时间终于给搞完了,这里就为大家将十几篇博客和B站视频的观看结果进行总结。

阅读之前,注意以下几点坑:

1、建议arduino和VScode版本与我共享的压缩包保持一致,新版存在很多bug。

2、所有路径尽量不要存在中文,也会有错误。

3、没完成一个插件安装和相关文件配置并保存后,建议退出再次进入VScode,让其发挥作用。

目录

VS code软件的下载以及相关配置

VScode禁用版本更新

C/C++下载以及版本退化

下载arduino插件

相关编译配置

参考资料

用户setting.json配置

工作区setting.json配置

task.json配置

Arduino工程测试

auduino.json文件配置

C++的一些优化配置

一、头文件自动生成

共享文件



VS code软件的下载以及相关配置

VScode软件的下载网上教程很多,这里就不读赘述。

注:由于VScode可能下载很慢以及版本问题,文末为大家提供【VSCodeSetup-x64-1.58.2.exe】 的下载资源。

下载之后首先下载【chinese插件】然后退出重启VScode。

重启之后,建议大家对VScode的更新进行禁用,这样防止后续的更新与我们所配置的文件版本兼容性出现冲突。

VScode禁用版本更新

禁用更新方法:

文件--》首选项-》设置-》搜索栏输入更新,然后在点击应用程序-》更新,相关选择如下图:

C/C++下载以及版本退化

插件当中输入C/C++,下载安装

 安装后,找到已安装的插件,选择设置,安装另一个版本:

出现以下界面,选择1.8.4版本,之后,你的图标下也会出现更新界面,不要选。

千万不要尝试最新版本,这会涉及之后json文件的配置问题。(高版本没有launch.json文件

 

下载arduino插件

一定要选择Microsoft出版的这个

 至此,相关所需插件下载已完成,进入配置文件重头戏。

相关编译配置

参考资料

可以参考以下两位的视频

【教程】VScode中配置C语言/C++运行环境

从零开始手把手教你配置属于你的VS Code

先按照我下面的操作,如果操作完发现有问题,可以结合两个视频查漏补缺。

第二个视频操作比较复杂,我操作完之后,发现可以直接对用户settings.json进行代码配置,不用那么复杂。

用户setting.json配置

进入文件--》首选项-》设置-》选择用户

点击左上角进入用户配置json 

 先删除你的json配置文件,然后,将以下代码粘贴

    //用户(全局)设置
{//一些习惯配置"editor.fontFamily": "Consolas, 'Courier New', monospace",//字体"editor.fontSize": 16,//字号大小"explorer.confirmDelete": true,//删除文件时是否打开资源管理器询问"files.encoding": "utf8",//编码方式//对Arduino的配置"arduino.logLevel": "info","arduino.path": "F:\\arduino安装包\\Arduino",//这里需要改成自己的arduino安装地址,对桌面arduino图标右键,选择打开文件所在路径//禁用VScode的更新"update.enableWindowsBackgroundUpdates": false,"update.mode": "none",//对C++配置"C_Cpp.default.compilerPath": "F:\\mingw\\810\\mingw64\\bin\\g++.exe",//c++编译器,根据我提供的文件,结合自己解压的地址更改,注意加双斜杠,下面进行解释"C_Cpp.default.cppStandard": "c++14",//配置c++标准,粘贴即可"C_Cpp.default.cStandard": "c11",//c标准,粘贴即可"C_Cpp.default.includePath": ["F:\\mingw\\810\\mingw64\\lib"//根据我提供的文件,结合自己解压的地址更改,注意加双斜杠],"C_Cpp.default.intelliSenseMode": "gcc-x64",//智能补全提示,粘贴即可}

针对下面代码

 "arduino.path": "F:\\arduino安装包\\Arduino",//这里需要改成自己的arduino安装地址,对桌面arduino图标右键,选择打开文件所在路径

 这里需要改成自己的arduino安装地址,对桌面arduino图标右键,选择【打开文件所在路径】
选中自己的地址,粘贴,添加双斜杠

为了安全起见,在保存上述用户settings,json后,进行下面的验证

选择Arduino插件进入扩展设置

找到:Arduino:Path,查看是否出现自己的路径,如果没有,在这里也将自己的路径加入。

针对下面代码:

  "C_Cpp.default.compilerPath": "F:\\mingw\\810\\mingw64\\bin\\g++.exe",//c++编译器,根据我提供的文件,结合自己解压的地址更改,注意加双斜杠,下面进行解释

将我压缩包里的【x86_64-8.1.0-release-win32-seh-rt_v6-rev0.7z】解压到自己想要的地址,出现下面的文件夹

进入里面的bin文件,可以看到里面有g++.exe文件

复制自己的路径->粘贴->双斜杠->记得添加\\g++.exe

同理,针对下面的代码

"C_Cpp.default.includePath": ["F:\\mingw\\810\\mingw64\\lib"//根据我提供的文件,结合自己解压的地址更改,注意加双斜杠],

 找到该文件夹下的lib文件,复制路径,粘贴,双斜杠。

至此,用户区的setting.json配置完毕

工作区setting.json配置

同样,针对下图,选择工作区,右上角进入json配置

 粘贴下面代码:

{"C_Cpp.intelliSenseEngineFallback":"Disabled",  "C_Cpp.intelliSenseEngine": "Tag Parser",//"C_Cpp.intelliSenseEngine": "Default",//Default:默认开启搜索引擎感知上下文// Disabled:关闭感知上下文搜索//Tag Parser:用于其他文件搜索感知"editor.insertSpaces": true,"files.autoGuessEncoding": true,   "editor.detectIndentation": false,"commentTranslate.hover.enabled": false,}

以上代码不用与文件挂钩,不多解释。

task.json配置

{"tasks": [{"type": "cppbuild","label": "C/C++: g++.exe 生成活动文件","command": "F:\\mingw\\810\\mingw64\\bin\\g++.exe","args": ["-fdiagnostics-color=always","-g","${file}","-o","${fileDirname}\\${fileBasenameNoExtension}.exe","-fexec-charset=GBK" //utf-8转GBK格式,解决中文乱码问题],"options": {"cwd": "${fileDirname}"},"problemMatcher": ["$gcc"],"group": {"kind": "build","isDefault": true},"detail": "调试器生成的任务。"}],"version": "2.0.0"
}

Arduino工程测试

下面进行arduino工程建立;

在桌面建一个文件夹,并且新建一个arduino文件

用VScode打开 

进入之后,可能出现下面

 所以,一般选择打开VScode后,选择需要打开的文件夹,如下图:

选择资源管理器-> 打开你想要打开的文件夹->信任

然后再次选中左侧arduino的test.ino工程,这里,系统识别到时arduino文件,右下角会多出相关选择,

 然后,先选择板子型号(我这里选的是UNO,根据自己的选择就好):

 然后,会发现右侧的资源管理器下多出来了一个.vscode文件夹

里面只有arduino.json文件 

 

auduino.json文件配置

打开arduino.json文件,删除其中内容,粘贴以下代码:

{"board": "arduino:avr:uno","programmer": "arduino:avrispmkii","port": "COM10","sketch": "test.ino","output": "./build"//将生成文件放入一个叫include的文件当中,可以取自己喜欢的名字}


啥也不写,点击右上角的verify

之后,.vscode文件夹下多了两个文件

 

然后进行代码测试,可以看到,已经有相关代码只能提示(图中红线不用担心,这是文件仍在加载无法识别关键字)

 

 输入下面的代码:

 然后verify编译,Done表示成功。

 上面的代码如果你有板子可以在右下角选择串口

 然后upload

上传到板子:

 然后,打开Arduino IDE

选择工具->端口(选择自己电脑对应的外界开发板的端口)->串口监视器

 至此,成功运行。

C++的一些优化配置

一、头文件自动生成

 步骤:

  • Shift+Ctrl+P ,打开命令面板
  • 输入  snippets ,找到 Preferences:Configure User Snippets
  • 选择 新建全局代码片段文件...

  • 输入 c_cpp_header (该名称可以自定义),会生成 c_cpp_header.code-snippets 配置文件,默认如下

  • 在下面粘贴以下代码

"C C++ Header": {"scope": "c, cpp","prefix": "header","description": "Add #ifndef, #define and #endif","body": ["#ifndef _${TM_FILENAME_BASE/(.*)/${1:/upcase}/}_H_","#define _${TM_FILENAME_BASE/(.*)/${1:/upcase}/}_H_","","$0","","#endif // _${TM_FILENAME_BASE/(.*)/${1:/upcase}/}_H_"]
}

测试:

成功!! 

二、解决不同文件夹下头文件包含问题

1.ctrl+shift+p ==> 输入task选择任务配置,打开task.json

在如下位置加入两行,注意是文件夹路径,不是文件路径

其中 -I(大写i)表示你的头文件路径, -L 表示库文件路径,-l(小写L) 代表库文件 .

 

2.Command shift P + Edit configuration,打开 c_cpp_properties.json

ruxiawe

如下位置加入两行 

 

共享文件

百度网盘:

链接:https://pan.baidu.com/s/1qkoKy0Lmct7VJxHADpLXcg 
提取码:awsl

如果教程有帮到您,麻烦点个收藏,给个小赞


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部