Visual studio code Visual Studio代码-Arduino编程标识符A8-A15(插脚A8到插脚A15)未定义
我试图使用VSCode来编写我的Arduino程序(MEGA2560),当我试图设置Visual studio code Visual Studio代码-Arduino编程标识符A8-A15(插脚A8到插脚A15)未定义,visual-studio-code,arduino,undefined,Visual Studio Code,Arduino,Undefined,我试图使用VSCode来编写我的Arduino程序(MEGA2560),当我试图设置 const int CurrentPin = A9; A9带下划线,问题如下 identifier "A9" is undefined [7,24] 我已尝试更改.vscode/arduino.json.vscode/c_cpp_properties.json { "enableConfigurationSquiggles": true, "env", {}, "co
const int CurrentPin = A9;
A9带下划线,问题如下
identifier "A9" is undefined [7,24]
我已尝试更改.vscode/arduino.json.vscode/c_cpp_properties.json
{
"enableConfigurationSquiggles": true,
"env", {},
"configurations": [
{
"name": "Linux",
"includePath": [
"{$workspaceFolder}",
%Arduino and library folders%
],
"browse": {
"limitSymbolsToIncludeHeaders": false,
"path": [
"{$workspaceFolder}",
%Arduino and library folders%
]
},
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE",
"USBCON",
"ARDUINO_ARCH_AVR",
"ARDUINO_AVR_MEGA2560",
"ARDUINO=10800"
],
"compilerPath": "/usr/bin/avr-gcc",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "clang-x64",
"forcedInclude": [
"...Arduino.h"
]
}
],
"version": 4
}
我相信这可能是c_cpp_属性定义的一部分
编辑:有时,当我有一些东西被定义的引脚,它踢到可以使用它,即
第22行
#define ONE_WIRE_BUS A13
第24行
OneWire oneWire(ONE_WIRE_BUS);
另外,当我在第22行的A13实例上使用“Go to Definition”时,它会返回到pins_arduino.h,在那里它们都被定义
arduino.json
{
"board": "arduino:avr:mega",
"configuration": "cpu=atmega2560",
"port": "/dev/ttyAMC0",
"output": "build",
"sketch": "Project/MyProject.ino",
"programmer": "AVRISP mkII"
}
c_cpp_properties.json
{
"enableConfigurationSquiggles": true,
"env", {},
"configurations": [
{
"name": "Linux",
"includePath": [
"{$workspaceFolder}",
%Arduino and library folders%
],
"browse": {
"limitSymbolsToIncludeHeaders": false,
"path": [
"{$workspaceFolder}",
%Arduino and library folders%
]
},
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE",
"USBCON",
"ARDUINO_ARCH_AVR",
"ARDUINO_AVR_MEGA2560",
"ARDUINO=10800"
],
"compilerPath": "/usr/bin/avr-gcc",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "clang-x64",
"forcedInclude": [
"...Arduino.h"
]
}
],
"version": 4
}
MyProject.ino
#包括
#包括
常数int currentPin=A9;
无效设置(){
//东西
}
void循环(){
//做事
}
我希望使用“ARDUINO_ARCH_AVR”和“ARDUINO_AVR_MEGA2560”的定义“,为了定义模拟管脚,但它们没有我将管脚的路径添加到includePath和browse.path中,它们似乎已被定义。我没有把它标记为答案,因为我无法判断它是否正确地悬停在每个实例上,我得到的是静态常量uint8_t A8=(uint8_t)>'ascii(62)静态常量uint8_t A9=(uint8_t)'?'ascii(63)静态常量uint8_t A10=(uint8_t)@'ascii(64)静态常量uint8_t A11=(uint8_t)'A'ascii(65)静态常量uint8_t A12=(uint8_t)“B”ascii(66)静态常数uint8_t A13=(uint8_t)“C”ascii(67)静态常数uint8_t A14=(uint8_t)“D”ascii(68)静态常数uint8_t A15=(uint8_t)“E”ascii(69)管脚arduino中对此的任何澄清。h管脚由“定义管脚A(N)(54+N)即“定义管脚A8(62)”我将pin_arduino.h的路径添加到includePath和browse.path中,它们似乎已经定义好了。我没有把它标记为答案,因为我无法判断它是否正确地悬停在每个实例上,我得到的是静态常量uint8_t A8=(uint8_t)>'ascii(62)静态常量uint8_t A9=(uint8_t)'?'ascii(63)静态常量uint8_t A10=(uint8_t)@'ascii(64)静态常量uint8_t A11=(uint8_t)'A'ascii(65)静态常量uint8_t A12=(uint8_t)“B”ascii(66)静态常数uint8_t A13=(uint8_t)“C”ascii(67)静态常数uint8_t A14=(uint8_t)“D”ascii(68)静态常数uint8_t A15=(uint8_t)“E”ascii(69)管脚arduino中对此的任何澄清。h管脚由“定义管脚A(N)(54+N)即“定义管脚A8(62)”