Mac下搭建基于PlatformIO的嵌⼊式开发环境(STM32开发)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
安装完成后重启vscode 左下⾓会有⼀个⼩房⼦,点击它进⼊插件的界⾯
介绍⼀下主要的模块信息:
1、Home标签页
1. Show at startup 的复选框,勾上后,每次启动vs code就会启动这个主页;
2. Quick Access:
3.
New Project:新建⼯程;
Import Arduino Project:导⼊电脑中已经存在的Arduino⼯程;
Open Project:打开已经存在的Platformio⼯程;
Project Examples:打开本机已经安装的单⽚机平台的例程⼯程;
4. Recent News:显⽰最新 Platformio 信息;
5. Recent Projects: 显⽰最近新建的⼯程
2、Libraries标签页
这是⼀个管理库的标签页,可以再这⾥查相关的库的信息,查看⽅法、使⽤例程等。可以安装、管理和更新第三⽅库。
3、Boards标签页
这⾥显⽰的都是PlatformIO ⽀持的开发板信息,主要信息如下:
Name:开发板名称
Platorm:对应的平台
Frameworks:⽀持的开发框架
MCU:开发板MCU型号
FRQ:开发板⼯作主频(Mhz)
ROM:开发板存储
RAM:开发板的内存
Extra:其他的操作
4、Platforms标签页
⽤来管理对⽀持的平台
5、Devices标签页
显⽰电脑连接的设备信息。
⼯具栏信息
1. 编译按钮(Build):勾号,点击后会编译当前的⼯程
2. 烧写按钮(Upload):向右的箭头,将程序烧写到开发板
visual studio和vs code的区别3. 远程烧写按钮(Upload to remote device):云朵,远程烧写程序
4. 清理按钮(Clean):垃圾桶,清理编译过程⽣成的⽂件
5. 测试按钮(Test):烧瓶,测试⼯程,免费版的Platformio受限不能⽤;
6. 运⾏任务按钮():本⼦,会跳出操作菜单,包含编译、烧写、调试等操作;
7. 串⼝监视器按钮(Serial monitor):插头,点击后会启动命令⾏的串⼝监视助⼿;
8. 终端按钮(New Terminal):命令⾏,新建⼀个终端窗⼝;
先来尝试⼀个使⽤吧,更多的功能,在实际的使⽤过程中再进⾏学习,
每次我的电脑点击新建⼯程后都会⽆法点击输⼊框,所以只好退出后重新进⼊
感觉还挺顺利,开始建⽴第⼀个⼯程,嗯哼,填好⼯程名,选好相关的板⼦,选择Framework(暂不知道有什么区别,先选arduino吧),点击finish,听说第⼀次创建⼯程的时候花的时间要就⼀些。
半个⼩时后。。。⼀个⼩时后。。。凌晨⼀点了,开着电脑让他建吧,先睡觉。。。。
早上起来,what还是please wait…
换个⽹络,连上外⽹,再重试⼀次,居然⼀分钟内就建好了,所以这⼜是为啥呢,我昨晚也试过连接了外⽹的。
是因为⽹络连接不畅,没有连接外⽹?还是需要将xcode更新到最新版本,并下载相关组件,亦或是clang没有更新;原因不得⽽知,反正在xcode,clang更新完了之后连上外⽹,很快就建好了。(我猜想是⽹络质量不好造成的,若是有读者知道原因还请告诉我⼀下,先在此谢过)
上代码测试吧,在src⽂件夹下的main.cpp中加⼊如下代码,编译下载,查看结果。
1 #include <Arduino.h>
2
3#define LED PB5 //这是等在板⼦上的引脚信息
4
5void setup() {
6  // put your setup code here, to run once:
7  pinMode(LED,OUTPUT);
8 }
9
10void 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上进⾏嵌⼊式开发,接下来就是更深⼀步的去学习使⽤了。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。