如何将arduino项目移植到Visual Studio Code
虽说从51单片机入门,stm32点灯,到现在精通arduino,但是我特喵的受不了arduino不能查看源码和提示。于是转战vs,vs中有大神制作了arduino的插件,具有arduino编译和烧录功能(虽然慢些,建议在vs中写代码,arduino中烧录)
安装步骤
1. 野生Arduino IDE一只,野生Visual Studio Code一只,要在自己电脑上安装好
2.安装Visual Studio Code 版 arduino插件
a.打开Visual Studio Code

b.点开后选择菜单中的扩展
c.在搜索框输入arduino并安装(还需要安装 C/C++ 插件,也是在扩展里搜索)
3.修改vscode json设置
a.点击左下角的设置

b.再点击菜单栏中的设置

c.找到设置中的扩展的arduino插件配置

d.一直使用滚轮找到插件配置中的setting.json编辑连接

e.输入以下神秘代码
"arduino.path": "C:/Program Files (x86)/Arduino",
"C_Cpp.intelliSenseEngine": "Tag Parser",
"editor.insertSpaces": true,
"files.autoGuessEncoding": true,
"arduino.logLevel": "info",
"explorer.confirmDelete": false,
"editor.detectIndentation": false,
注意!!!我安装时没有按系统默认地址安装,我装的是D盘,则我的路径为(完整配置)
{
"C_Cpp.errorSquiggles": "Disabled",
"arduino.path": "D:/arduino ide/Arduino",
"C_Cpp.intelliSenseEngine": "Tag Parser",
"editor.insertSpaces": true,
"files.autoGuessEncoding": true,
"arduino.logLevel": "info",
"explorer.confirmDelete": false,
"editor.detectIndentation": false,
"editor.tabCompletion": "on",
"C_Cpp.updateChannel": "Insiders",
"workbench.colorTheme": "Default Dark+",
"arduino.additionalUrls": "",
}
以上步骤后就可以实现自动补全了
移植原有的arduino项目到vs中
a.到arduino项目文件夹

b.在目录下新建.vscode目录,并进入此目录

c.在.vscode文件夹中新建名字为 C_cpp_properties.json文件,编辑器打开,输入以下配置内容
{
"configurations": [
{
"name": "Win32",
"includePath": [
"C:/Program Files (x86)/Arduino/libraries",
"C:/Program Files (x86)/Arduino/hardware/arduino/avr/**",
"C:/Program Files (x86)/Arduino/hardware/tools/avr/avr/include",
"C:/Program Files (x86)/Arduino/hardware/tools/avr/lib/gcc/avr/7.3.0/include",
"C:/Program Files (x86)/Arduino/hardware/tools/avr/lib/gcc/avr/7.3.0/include-fixed",
"C:/Program Files (x86)/Arduino/tools/**"
],
"forcedInclude": [
"C:/Program Files (x86)/Arduino/hardware/arduino/avr/cores/arduino/Arduino.h"
],
"browse": {
"limitSymbolsToIncludedHeaders": true,
"path": [
"C:/Program Files (x86)/Arduino/libraries"
]
},
"intelliSenseMode": "msvc-x64",
"defines": [
"USBCON"
]
}
],
"version": 4
}
注明:我的安装路径在D盘,所以要把配置中的C盘中的路径换到D盘对应的路径,我的配置如下
{
"configurations": [
{
"name": "Win32",
"includePath": [
"C:\\Users\\Administrator\\AppData\\Local\\Arduino15\\packages\\esp8266\\tools\\**",
"C:\\Users\\Administrator\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.5.2\\**",
"D:/arduino ide/Arduino/libraries",
"D:/arduino ide/Arduino/hardware/arduino/avr/**",
"D:/arduino ide/Arduino/hardware/tools/avr/avr/include",
"D:/arduino ide/Arduino/hardware/tools/avr/lib/gcc/avr/7.3.0/include",
"D:/arduino ide/Arduino/hardware/tools/avr/lib/gcc/avr/7.3.0/include-fixed",
"D:/arduino ide/Arduino/tools/**",
"D:\\arduino ide\\Arduino\\libraries\\**",
"C:\\Users\\Administrator\\Documents\\Arduino\\libraries\\**"
],
"forcedInclude": [],
"browse": {
"limitSymbolsToIncludedHeaders": true,
"path": [
"D:/arduino ide/Arduino/libraries"
]
},
"intelliSenseMode": "msvc-x64",
"defines": [
"USBCON"
]
}
],
"version": 4
}
有些老版本的arduino卸载不干净会把库文件地址放在C盘,建议打开arduino,任意开启一个编译库文件比较多的例子,编译一下,库文件所包含的路径就会在arduino下方调试台中呈现,如下

将路径添加配置文件中代码即可
关于控制台乱码问题的解决,如下,我win10破电脑出现了中文乱码的情况

解决方法,在你的文件浏览器中输入以下地址
C:\Users\Administrator\.vscode\extensions\vsciot-vscode.vscode-arduino-0.3.4\out\src\common
找到此目录下的util.js文件,编辑器打开
找到这块神秘代码
if (os.platform() === "win32") {
try {
const chcp = childProcess.execSync("chcp.com");
codepage = chcp.toString().split(":").pop().trim();
}
catch (error) {
outputChannel_1.arduinoChannel.warning(`Defaulting to code page 850 because chcp.com failed.\
\rEnsure your path includes %SystemRoot%\\system32\r${error.message}`);
codepage = "850";
}
}
把它淦掉

重启vscode,然后你就可以使用优美的中国话了
以上就是我闲的蛋疼移植arduino的百度经验
参照以下两位大佬的博客写的
https://cjh0613.com/20200630VScode-Arduino.html
https://233i.cn/2450.html