PlatformIO简介

PlatformIO是开源的物联网开发生态系统。提供跨平台的代码构建器、集成开发环境(IDE),兼容 Arduino,ESP8266和mbed等

支持在Windows、Linux、macOS上使用预编译好的工具链,调试器和框架进行开发。它支持超过350个的嵌入式设备,超过20个的开发平台,超过10个的框架。

Atom

PlatfromIO IDE是基于Atom的新一代集成开发环境。提供了C/C++的代码智能提示,程序库管理,内置命令行等功能。

Visual Studio Code

PlatfromIO for Visual Stuido Code提供了构建,部署,设备监视器,程序库搜索等主要功能。为超过350个的嵌入式设备提供了良好的开发环境。

Sublime Text

Deviot是一个基于Sublime Text插件,基于PlatformIO为许多嵌入式设备的开发提供支持。

环境:

macOS Mojave

STM32F103ZE

VSCode

PlatformIO IDE

安装步骤

首先要安装VScode(相信大家都使用过)

在vscode 中安装插件PlatformIO IDE

ios嵌入式开发教程 嵌入式开发用mac_ios嵌入式开发教程

安装完成后重启vscode 左下角会有一个小房子,点击它进入插件的界面

ios嵌入式开发教程 嵌入式开发用mac_标签页_02

介绍一下主要的模块信息:

1、Home标签页

ios嵌入式开发教程 嵌入式开发用mac_开发板_03

  1. Show at startup 的复选框,勾上后,每次启动vs code就会启动这个主页;
  2. Quick Access:
  • New Project:新建工程;
  • Import Arduino Project:导入电脑中已经存在的Arduino工程;
  • Open Project:打开已经存在的Platformio工程;
  • Project Examples:打开本机已经安装的单片机平台的例程工程;
  1. Recent News:显示最新 Platformio 信息;
  2. Recent Projects: 显示最近新建的工程 

2、Libraries标签页

ios嵌入式开发教程 嵌入式开发用mac_开发板_04

这是一个管理库的标签页,可以再这里查找相关的库的信息,查看方法、使用例程等。可以安装、管理和更新第三方库。

3、Boards标签页

ios嵌入式开发教程 嵌入式开发用mac_ios嵌入式开发教程_05

这里显示的都是PlatformIO 支持的开发板信息,主要信息如下:

Name:开发板名称

Platorm:对应的平台

Frameworks:支持的开发框架

MCU:开发板MCU型号

FRQ:开发板工作主频(Mhz)

ROM:开发板存储

RAM:开发板的内存

Extra:其他的操作

4、Platforms标签页

ios嵌入式开发教程 嵌入式开发用mac_ios嵌入式开发教程_06

用来管理对支持的平台

5、Devices标签页

ios嵌入式开发教程 嵌入式开发用mac_开发板_07

显示电脑连接的设备信息。

 

工具栏信息

ios嵌入式开发教程 嵌入式开发用mac_ios嵌入式开发教程_08

  1. 编译按钮(Build):勾号,点击后会编译当前的工程
  2. 烧写按钮(Upload):向右的箭头,将程序烧写到开发板
  3. 远程烧写按钮(Upload to remote device):云朵,远程烧写程序
  4. 清理按钮(Clean):垃圾桶,清理编译过程生成的文件
  5. 测试按钮(Test):烧瓶,测试工程,免费版的Platformio受限不能用;
  6. 运行任务按钮(Run task...):本子,会跳出操作菜单,包含编译、烧写、调试等操作;
  7. 串口监视器按钮(Serial monitor):插头,点击后会启动命令行的串口监视助手;
  8. 终端按钮(New Terminal):命令行,新建一个终端窗口;

 



先来尝试一个使用吧,更多的功能,在实际的使用过程中再进行学习,

每次我的电脑点击新建工程后都会无法点击输入框,所以只好退出后重新进入

ios嵌入式开发教程 嵌入式开发用mac_标签页_09

 

感觉还挺顺利,开始建立第一个工程,嗯哼,填好工程名,选好相关的板子,选择Framework(暂不知道有什么区别,先选arduino吧),点击finish,听说第一次创建工程的时候花的时间要就一些。

ios嵌入式开发教程 嵌入式开发用mac_开发板_10

半个小时后。。。一个小时后。。。凌晨一点了,开着电脑让他建吧,先睡觉。。。。

早上起来,what???还是please wait… 

ios嵌入式开发教程 嵌入式开发用mac_开发板_11

换个网络,连上外网,再重试一次,居然一分钟内就建好了,所以这又是为啥呢,我昨晚也试过连接了外网的。

ios嵌入式开发教程 嵌入式开发用mac_ios嵌入式开发教程_12

是因为网络连接不畅,没有连接外网?还是需要将xcode更新到最新版本,并下载相关组件,亦或是clang没有更新;原因不得而知,反正在xcode,clang更新完了之后连上外网,很快就建好了。(我猜想是网络质量不好造成的,若是有读者知道原因还请告诉我一下,先在此谢过)



上代码测试吧,在src文件夹下的main.cpp中加入如下代码,编译下载,查看结果。

1 #include <Arduino.h>
 2 
 3 #define LED PB5 //这是等在板子上的引脚信息
 4  
 5 void setup() {
 6   // put your setup code here, to run once:
 7   pinMode(LED,OUTPUT);
 8 }
 9  
10 void loop() {
11   // put your main code here, to run repeatedly:
12   digitalWrite(LED, HIGH);
13   delay(1000);
14   digitalWrite(LED, LOW);
15   delay(1000);
16 }

当然想要成功下载还需要一个些配置信息,platformio.ini文件里添加如下代码:

1 [env:genericSTM32F103ZE]
2 platform = ststm32
3 board = genericSTM32F103ZE
4 framework = arduino
5 upload_protocol = jlink

至此,应该已经成功的实现了在Mac上进行嵌入式开发,接下来就是更深一步的去学习使用了。