3. 使用Visual Studio Code+PlatformIO IDE开发Arduino
2017-12-11 13:05
567 查看
简述
介绍如何使用VScode 直接开发Arduino 程序,避免使用Arduino IDE时的没有代码提示功能,文件关系不清晰、头文件打开不方便等问题及使用Visual Stdio集成插件的庞大安装工程;同时Visual Studio Code插件PlatformIO IDE开发Arduino 跨平台无论你是用的windows,ubuntu或者mac都可以玩转。安装Visual Studio Code PlatformIO
https://code.visualstudio.com/页面下载安装vscode安装完成vscode启动,扩展页面下搜索platformio即可找到,选择第一个Platformio IDE,安装即可(这里需要耐心等待一会)
安装完成,重新加载后,左下角会多一个小房子图标,点击后即可显示Platformio IDE主页
测试
选择New Project创建工程,选择相应的Board,我这里使用Mega2560,输入2560找到对应的Board修改main.cpp
#include <Arduino.h> void setup() { pinMode(13, OUTPUT); } void loop() { digitalWrite(13, HIGH); delayMicroseconds(1000); digitalWrite(13, LOW); delay(1000); }
编译与下载
同样左下角有一堆按钮
选择upload即可完成下载,指示灯也可以正常闪烁,可以看到我们连端口都没有选择就完成了下载的工作,非常方便。
问题与高级功能
arduino IDE有库管理功能可以,下载到需要的库。这里还要方便,例如我们想使用TimerOne输出PWM,#include <Arduino.h> #include <TimerOne.h> void setup() { Timer1.initialize(40); } void loop() { Timer1.pwm(11, 512); }
Arduino IDE我们会这样写,然库管理搜索下载TimerOne库,在这里我们只需要在配置文件platformio.ini加上下面一句即可
lib_deps = TimerOne
选择编译按钮编译,我们可以看到输出信息
找到了TimerOne库并下载至.piolibdeps文件夹下
注意点
接上面我们也可以把下载好的TimerOne库直接放置在lib目录下,也就无需添加lib_deps。我们不想在main里面直接使用TimerOne的pwm,我们想自己写一个motor库,motor库会使用到TimerOne
motor.h
#ifndef TEST_MOTOR_H_ #define TEST_MOTOR_H_ class Motor{ public: void init(unsigned char fre); void pwm(unsigned short); }; #endif
motor.cpp
#include "motor.h" #include "TimerOne.h" void Motor::init(unsigned char fre) { Timer1.initialize(1000.0/fre); } void Motor::pwm(unsigned short val) { Timer1.pwm(11,val); }
main.cpp
#include <Arduino.h> #include <motor.h> Motor motor1; void setup() { motor1.init(15); } void loop() { motor1.pwm(512); }
编译完成,提示找不到TimerOne.h头文件
,可以看到
Library Dependency Graph没有TimerOne
两种解决方法
main.cpp include头文件TimerOne.h,这个比较low,英文main中根本就没有使用到TimerOne
2.之前的办法添加
lib_deps = TimerOne
总结
至此可以看到,使用VSCode集成的PlatformIO IDE插件开发与查看arduino的代码都非常方便相关文章推荐
- 使用Visual Studio Code开发Arduino
- 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(七)-- 结构化配置
- 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(九)-- 单元测试
- 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(五)-- Filter
- 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(十)-- 发布(Windows)
- 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(六)-- 依赖注入
- 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(二)-- Web Api Demo
- docker4dotnet #3 在macOS上使用Visual Studio Code和Docker开发asp.net core和mysql应用
- 使用Visual Studio Code开发AngularJS应用
- docker4dotnet #3 在macOS上使用Visual Studio Code和Docker开发asp.net core和mysql应用
- 转:在macOS下使用Visual Studio Code进行C/C++开发
- Nodejs创建Express4项目以及使用Visual Studio Code编辑器配置Nodejs开发环境
- 使用Visual Studio Code和typescript 开发调试React Native项目
- 使用Visual Studio Code进行开发
- Mac上使用Visual Studio Code开发/调试.NET Core代码
- 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(二)-- Web Api Demo
- 【学习笔记】使用Visual Studio Code来开发TypeScript的环境记事
- 在Mac上使用Visual Studio Code开发/调试.NET Core代码
- 使用Visual Studio Code + Node.js搭建TypeScript开发环境
- 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(一)-- 起步