使用AliOS Things 3.0快速构建用户应用 BlinkAPP

简介: AliOS Things 3.0版本于9月27日在云栖大会正式发布,在新版本中带来了全新的应用开发框架,帮助用户快速构建自己的应用。使用户可以更专注于自身应用的开发。本文将已BlinkAPP为例,为大家演示如何快速使用应用开发框创建项目并完成应用代码编写。

摘要

AliOS Things 3.0版本于9月27日在云栖大会正式发布,在新版本中带来了全新的应用开发框架,帮助用户快速构建自己的应用。使用户可以更专注于自身应用的开发。本文将已BlinkAPP为例,为大家演示如何快速使用应用开发框创建项目并完成应用代码编写。

获取源码

大家可以通过github和可视化裁剪工具获取最新的AliOS Things3.0 源码。

设置本地开发环境

AliOS Things 3.0 支持用户APP存放路径与源码分离,所以用户可以单独管理应用源码。在使用前需要对开发用环境进行相关设置。本文以windows 10环境和vs code为例,进行演示。
如果你是初次使用AliOS Things,那么可以按照如下链接中的方式,安装AliOS Things相关开发环境。
https://dev.iot.aliyun.com/doc/detail/aliosthings?spm=a2c56.pc_iot_community_doc_center.0.0.445452065LQ8gd#dev_byaosstudio.html
如果之前已经安装过AliOS Things的开发环境,那么你需要升级aos-cube和vs code中的alios-studio工具。

升级aos-cube工具

打开vs code并启动终端,在终端中输入如下命令:

pip install -U aos-cube

命令正确运行后,通过

pip list

命令,可以看到aos-cube升级到了 0.3.7版本

Package                       Version
----------------------------- ----------
aos-cube                      0.3.7

升级alios-studio插件

打开vs code的“扩展”菜单,在菜单的搜索栏输入“alios-studio”,即可找到最新的alios-studio插件,版本为 0.11.6。VS code会提示“需要重新加载”,点击后会自动更新,如果之前没有安装过请点击“安装”。

设置环境变量

前面提到,AliOS Things3.0支持用户应用和OS源码分开保存,为了使工具在编译时能顺利找到源码,需要将源码存放路径加入到环境变量中。在windows环境下设置方式如下。

  1. 右键单击"我的电脑"在下拉菜单中选择“属性”
    1_
  2. 在弹出窗口中选择“高级系统设置”
    2_
  3. 在系统属性设置“高级”选项卡中,点击“环境变量”按钮
    3_
  4. 在弹出窗口中选择“系统变量”下的“新建”按钮
    4_
  5. 在弹出窗口中填写环境变量路径。这里需要根据实际的AliOS Things 3.0源码的存放路径填写
    5_

至此AliOS Things3.0的开发环境配置完毕,现在我们可以通过VS code来新建用户应用工程,开始用户应用编写和调试了。

新建项目

关闭VS code并重新打开,以使得VS code可以获取到正确的环境变量。
在VS code中点击alios-studio提供的“+”按钮新建项目(按钮位于),工具会弹出为项目命名的提示。
1_
将项目命名为“blinkapp”并回车确认,接下来需要输入项目存放的路径。在此我们选择默认路径,如需要可以按实际情况修改
2_
回车确认后,需要选择用于运行当前APP的board硬件。在此我们依然选择develpoerkit开发板。此时,会自动生成相关工程,并在VS code中打开。app_main.c文件,就是用户应用入口。
3_
一张动图演示全流程
_

编写应用代码

在app_main.c中添加代码,实现两个任务分别以不同的频率点亮LED1和LED2

/*
 * Copyright (C) 2015-2017 Alibaba Group Holding Limited
 */

#include <stdio.h>

#include <aos/kernel.h>

#include <aos/hal/gpio.h>   // 引入gpio的支持

#define LED1_PIN    22      // LED1=PB6 1x16+6
#define LED2_PIN    67      // LED2=PE3 4x16+3

gpio_dev_t led1,led2;

void led_init()
{
    int ret = -1;
    /* gpio port config */
    led1.port = LED1_PIN;
    /* set as output mode */
    led1.config = OUTPUT_PUSH_PULL;

    /* gpio port config */
    led2.port = LED2_PIN;
    /* set as output mode */
    led2.config = OUTPUT_PUSH_PULL;
    /* configure GPIO with the given settings */
    ret = hal_gpio_init(&led1);
    ret = hal_gpio_init(&led2);
}

static void led1_task(void *paras)
{
    while (1)
    {
        hal_gpio_output_toggle(&led1);  // led1反转
        aos_msleep(200);                // 任务挂起200ms
    }
    
}

static void led2_task(void *paras)
{
    while (1)
    {
        hal_gpio_output_toggle(&led2);  // led2反转
        aos_msleep(500);                // 任务挂起500ms
    }
    
}
/**********************user code*************************/
int application_start(int argc, char *argv[])
{
    /*add your code*/
    led_init();                                         // LED IO初始化
    aos_task_new("led1_task", led1_task, NULL, 128);    // 新建LED1闪烁任务
    aos_task_new("led2_task", led2_task, NULL, 128);    // 新建LED2闪烁任务

    while(1) {
        /*add your code*/
        printf("Blink APP is running\r\n");

        aos_msleep(1000);
    };
}

点击VS code状态栏中的“√”按钮,进行编译。编译完成后,将开发板与PC连接,点击“闪电”按钮,将固件下载至开发板运行
2
以上就是一个基础的给予AliOS Things3.0的应用开发过程。创建的应用单独存在与一个独立的文件夹中,可以将应用拷贝至其他具备想用AliOS Things3.0环境的开发机上进行继续开发,实现代码分享。接下来,你可以试试创建一个自己的应用。


关联内容

1、看见源码:立刻体验AliOS Things 3.0 !(立即了解
2、阿里云AIoT产品布局(立即了解
3、免费试用AIoT应用开发工具(立即了解

觉得还不错的话,请为AliOS Things 3.0一颗STAR吧

相关文章
|
物联网 Linux
【AliOS Things学习笔记】为你的AliOS Things应用增加自定义cli命令
怎么才能在RTOS系统中,通过 串口shell控制LED的开关。
3694 0
|
AliOS-Things 物联网 编译器
使用HaaS Studio开发AliOS Things C/C++应用
本文章将介绍使用HaaS Studio 进行AliOS-Things C/C++应用开发。
使用HaaS Studio开发AliOS Things C/C++应用
|
传感器 监控 算法
使用AliOS Things快速构建温度计应用 |《AliOS Things快速开发指南》
本文是基于AliOS Things 3.1快速构建温度计的应用场景。涉及AliOS Things组件开发,构建AliOS Things用户项目,AliOS Things HAL API使用,向AliOS Things中添加并使用组件。用到的硬件设备有半导体开发板、温度传感器、数码管显示器。
使用AliOS Things快速构建温度计应用 |《AliOS Things快速开发指南》
|
域名解析 移动开发 数据可视化
使用 AliOS Things 3.0 快速构建用户应用 BlinkAPP
AliOS Things 3.0版本于去年9月份在云栖大会正式发布,在新版本中带来了全新的应用开发框架,帮助用户快速构建自己的应用。使用户可以更专注于自身应用的开发。本文将已BlinkAPP为例,为大家演示如何快速使用应用开发框创建项目并完成应用代码编写。
981 0
使用 AliOS Things 3.0 快速构建用户应用 BlinkAPP
|
物联网 机器人 AliOS-Things
|
物联网 传感器 API
AliOS Things 3.0应用笔记:http client简单应用
AliOS Things 3.0版本新增加了httpc组件(http 客户端组件),httpc组件支持多种RESTful的API调用,包括GET、POST、PUT、HEAD等,也支持https安全协议。
12375 1
|
缓存 算法 物联网
AliOS Things声源定位应用演示
1. 概述 利用麦克风阵列进行声源定位在智能降噪、语音增强、语音识别等领域有广泛应用和研究前景。本文介绍基于AliOS Things + STM32F413H Discovery开发板实现声源定位算法集成和功能演示。
4168 0
|
传感器 移动开发 物联网
AliOS Things 3.0应用笔记:http client简单应用
AliOS Things 3.0版本于9月27日在云栖大会正式发布,在新版本中带来了全新的应用开发框架,帮助用户快速构建自己的应用。使用户可以更专注于自身应用的开发。 本示例是基于AliOS Things 3.0应用开发框架做的一个简单的http client应用,通过http API请求获取当前的天气信息。
4427 0
|
传感器 消息中间件 物联网
HCIA物联网初级考试-第五章物联网操作系统及感知层开发介绍
HCIA物联网初级考试-第五章物联网操作系统及感知层开发介绍
HCIA物联网初级考试-第五章物联网操作系统及感知层开发介绍
|
算法 AliOS-Things 物联网
HaaS100开发调试系列 之 定位AliOS Things内存及Crash问题
本文主要说开发调试过程中经常遇到的内存问题。
347 15
HaaS100开发调试系列 之 定位AliOS Things内存及Crash问题