博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用platformio编写arduino程序
阅读量:5865 次
发布时间:2019-06-19

本文共 2262 字,大约阅读时间需要 7 分钟。

哈哈,今天浏览arduino.cc官网,找到一个好东东,以后,在ubuntu下用终端编程在也不发愁了。

platformio.org是一个物联网全能的IDE,甚至还贴心的提供了在命令行下编程的版本:platformio CLI

好东西不能独享啊,拿出来给看到这篇文章的童鞋们。

一、安装篇。

platformio是用python开发,所以,要先安装python环境,注意是python2.7版本。

#更新系统

apt update
apt upgrade
#安装gcc编译环境
apt install build-essential
#安装python及开发包
apt install python python-all-dev python-setuptools python-wheel
#安装pip及更新到最新版
apt install python-pip
pip install --upgrade pip
#安装PlatFormIO
pip install -U platformio

二、使用前的准备工作。

1、使用前,首先要确定你使用的控制器类型,这里我使用的arduino uno板子。

platformio boards atmelavr
输出:

Platform: atmelavr

--------------------------------------------------------------------------------------------------------------------------------------------------------------
Type                  MCU            Frequency  Flash   RAM    Name
--------------------------------------------------------------------------------------------------------------------------------------------------------------
chiwawa               atmega32u4     16Mhz     28kB    2.5kB  Arduino Industrial 101
leonardo              atmega32u4     16Mhz     28kB    2.5kB  Arduino Leonardo
leonardoeth           atmega32u4     16Mhz     28kB    2.5kB  Arduino Leonardo ETH
lilypadatmega168      atmega168      8Mhz      14kB    1kB    Arduino LilyPad ATmega168
lilypadatmega328      atmega328p     8Mhz      30kB    2kB    Arduino LilyPad ATmega328
LilyPadUSB            atmega32u4     8Mhz      28kB    2.5kB  Arduino LilyPad USB
uno                   atmega328p     16Mhz     31kB    2kB    Arduino Uno
yun                   atmega32u4     16Mhz     28kB    2.5kB  Arduino Yun
yunmini               atmega32u4     16Mhz     28kB    2.5kB  Arduino Yun Mini
通过以上得知,arduino uno的类型是uno,如果用的lilypad的话,根据控制器型号判断为lilypadatmega168 或lilypadatmega328
2、初始化类型为uno的板子:
#在创建工作目录mkdir test
cd test
#执行初始化
platformio init --board uno

三、开始编程。

执行完初始化命令后,系统自动生成1各配置文件和2各目录:

platformio.ini     (为配置文件)

lib      (自动生成的程序库的目录)

src      (存放程序源文件的目录)

现在进入src目录,创建一个以.c或.h或.cpp或.ino等待结尾的文件就可以开始编程了。

四、程序编写注意事项:

程序基本和arduino IDE一致,但是,要在开头写一个头文件(见下)才能通过编译。

#include "Arduino.h"

例如:

#include "Arduino.h"
void setup()
{
    pinMode(LED_BUILTIN,OUTPUT);
}
void loop()
{
    digitalWrite(LED_BUILTIN,HIGH);
    delay(1000);
    digitalWrite(LED_BUILTIN,LOW);
    delay(1000);
}
以上为一个完整的程序编码,文件名任意,但应该以.h .c .cpp .ino等系统可以识别的后缀结尾。

五、编译

编写程序完毕后,退回项目的根目录,然后执行下面命令进行编译:

platformio run -e uno

编译完成后,上传程序到uno

platformio run -t upload

如果想编译后立即上传,执行:

platformio run -e uno -t upload

如果想清理编译过的文件:

platformio run -t clean

6、以上就是基本操作,是不是很好,真佩服老外的编码精神,你刚想到一个念头,已经有人做出原型了,

最后,在推荐一下官网:

转载地址:http://dtynx.baihongyu.com/

你可能感兴趣的文章
php获取Linux系统运行时间
查看>>
浅析JavaScript中的隐式类型转换
查看>>
Android Service学习篇三:Service启动方式之bindService
查看>>
网络安全之DES算法
查看>>
win7运行cmd的建立虚拟wifi
查看>>
nginx+keepalived 负载均衡架构
查看>>
CDN缓存加速系统wdcdn2.6版本发布(20120213)
查看>>
#ifdef、#ifndef、#else、#endif执行条件编译
查看>>
怎样理解阻塞非阻塞与同步异步的区别?
查看>>
Linux安装MySQL
查看>>
报表软件FineReport如何连接SAP HANA
查看>>
mysql六:数据备份、pymysql模块
查看>>
蓝懿教育九月七日记录
查看>>
DevExpress v15.1:TestCafe功能升级
查看>>
经济低迷,餐饮O2O能否再创新高?
查看>>
网红魏道道为何不做直播:仇富心理到底扇了谁的脸?
查看>>
Linux 操作命令 cut
查看>>
JavaScript_函数
查看>>
Apache优化——访问控制
查看>>
linux-日常运维- unit介绍
查看>>