使用Arduino-cli+VSCode开发树莓派Pico:缺失PinNamesTypes.h文件
简介
我正使用Arduino-cli开发环境搭配VSCode编辑器,开展树莓派Pico的新项目。
问题
- VSCode C/C++扩展的
includePath参数配置问题导致IntelliSense无法正常工作:它需要PinNamesTypes.h文件,该文件是Arduino.h的间接依赖项,但找不到 - 代码编译、上传和运行均正常(Arduino-cli会自行构建开发环境)
已搜索相关库,但以下文件引用的PinNamesTypes.h并不存在:
[drivers home]/variants/RASPBERRY_PI_PICO/pinmode_arduino.h [drivers home]/cores/arduino/as_mbed_library/pinmode_arduino.h
我的环境及已做操作
- 电脑:Macbook Pro(M2)
- 已安装Arduino-cli和VSCode
- 开发板:Raspberry Pi Pico W
- 通过以下命令安装驱动:
arduino-cli core update-index arduino-cli core install arduino:mbed_rp2040
通过反复尝试(先引入Arduino.h,再添加VSCode无法找到的每个引用文件所在文件夹),将IncludePath配置如下:
[drivers home]/cores/arduino", [drivers home]/cores/arduino/as_mbed_library", [drivers home]/cores/arduino/mbed/hal/include", [drivers home]/cores/arduino/mbed/targets/TARGET_RASPBERRYPI/TARGET_RP2040/**", [drivers home]/cores/arduino/mbed/targets/TARGET_RASPBERRYPI/TARGET_RP2040/TARGET_RASPBERRY_PI_PICO", [drivers home]/cores/arduino/mbed/targets/TARGET_RASPBERRYPI/TARGET_RP2040//pico-sdk/boards/include", [drivers home]/cores/arduino/mbed/cmsis/CMSIS_5/CMSIS/TARGET_CORTEX_M/Include", [drivers home]/cores/arduino/mbed/platform/include", [drivers home]/cores/arduino/mbed/platform/cxxsupport"
其中:
[drivers home]=/Users/[my username]/Library/Arduino15/packages/arduino/hardware/mbed_rp2040/4.1.5
这是arduino-cli core install命令存放文件的路径。
临时解决方案
创建名为"missing"的文件夹,并在其中放入一个空的PinNamesTypes.h文件,错误便消失了:
MySketch.ino missing | PinNamesTypes.h
疑问与最终思考
技术层面
我的安装过程是否有误?是否有更优、更“干净”的解决方案?精力投入层面
安装ssd1306库后情况更糟:代码可正常编译,但出现大量错误(如抽象类实例化等)。
最终思考:我的问题并非Arduino本身的问题,而是VSCode的问题;是否值得花精力修复,还是应改用Arduino IDE?
内容的提问来源于stack exchange,提问作者Ettore Galli
相关产品推荐
相关产品推荐

