初学者入门阿里云Haas100开发板基本步骤

       2020年9月阿里云云栖大会上发布的haas100开发板非常棒,其设计的初衷是简化开发步骤,做”积木式“的软硬件。但是在跑第一个程序的过程中,还是遇到了很多问题。本文就从零开始,一步步向大家讲解如何搭建环境,如何编译并烧录。最重要的是将过程中遇到的问题和解决方法分享给大家。

目  录

 

一、Haas简介

二、从零开始跑helloworld

(一)准备电脑

(二)安装python

(三)安装aos-cube

(四)下载haas开发板代码

(五)编译代码

(六)连接开发板

(七)烧录

(八)使用串口助理进行观察

三、结论


一、Haas简介

9月18日,在2020云栖大会上,阿里云发布了一款物联网开发板HaaS,就是下图这款。

硬件方面HaaS 100的主控MCU芯片HaaS 1000搭载的是双核Cortex-M33,主频是300MHz,带有16MB的片内RAM和16MB的片内flash(HaaS100和HaaS1000有点让人迷惑,HaaS 1000是MCU型号,根据开箱视频介绍,这个MCU是阿里云定制的,HaaS 100是开发板模组型号)。

HaaS(Hardware as a service)硬件即服务。通过向用户提供物联网场景中的的标准硬件以及嵌入到硬件中的软件驱动及功能模块,为用户提供物联网设备高效开发服务,该产品旨在帮助AIoT中小开发者聚焦业务,低门槛快速组装软硬件积木,实现设备安全上云。这种设计思路让我想起来arduino。

我也写过使用arduino wifi模块连接阿里云的文章,参考连接。

https://blog.csdn.net/youngwah292/article/details/104128967

二、从零开始跑helloworld

拿到开发板之后,一般我们都需要先跑一跑helloworld,这个板子也采用这个方式来入门。

(一)准备电脑

我的电脑是win7 x64,i5,4g。

(二)安装python

建议按照阿里云的介绍进行安装。版本选择2.7.14。安装时,选择 pip 和 add python.exe to Path 两个选项。

为什么安装pip?因为它很重要,很多python组件都是靠它来安装的,命令行操作,非常方便。

https://help.aliyun.com/document_detail/161038.html?spm=a2c4g.11186623.6.545.163937e2yOyiPZ

(三)安装aos-cube

aos的意思是阿里云操作系统,cube是立方体,魔方是Rubik's cube,可能代表了有很多种可能,有很多种变化,支持很多种设备。安装命令是pip install aos-cube,运行在命令行下面。

命令行可以通过“运行”--cmd方式打开。

如果python没有安装pip,那么这个指令是运行不了的。一步步的都不能缺失。

如果能够运行,那么就会出现下面的过程画面

还有可能在下载快结束的时候,提示你没有下载成功。比如下图的这种错误,意思是pip的版本太低了。

按照说明,进行更新。

更新成功

再次下载aos-cube

下载成功,可以看到这个aos-cube安装的同时也安装了许多支持组件,每个组件的作用请自行了解,不管它们也不影响使用。

(四)下载haas开发板代码

国内用户从这里下载速度会快,因为github限速。

git clone https://gitee.com/alios-things/AliOS-Things.git -b dev_3.1.0_haas

这个代码下载到哪里了呢?下载到“用户”目录下了。我的是Administrator目录。

(五)编译代码

首先在命令行模式下,进行编译。阿里云文档是这样介绍的:

“进入代码的顶层目录如AliOS-Things进行编译。可以直接编译application/example/目录下的demo app,或者自己开发的app。下面以编译helloworld_demo为例。”

aos make helloworld_demo@haas100 -c config
aos make

第一次运行的时候,需要同意一些规则

如果按照文档的说明,进入顶层目录下进行编译,那就会出问题

在例程目录下就没问题了

或者是在alios-things目录下进行也可以

(六)连接开发板

按照下图方式连接。

电脑上虚拟了一个串口,这一点跟许多其他的开发板都类似,用来下载程序和显示调试信息。串口号可以通过设备管理器查看。

(七)烧录

阿里云文档中是这么说的:

“第一次编译后从代码顶层目录拷贝platform/mcu/haas1000/release/write_flash_gui目录下的所有文件到windows环境。”

刚开始没看懂是什么意思,主要有以下几点:

什么叫做代码顶层目录?其实就是从alios-things目录下找到platform/mcu/haas1000/release/write_flash_gui里面的haas1000_write_flash_main,至于windows环境,就不用管了,我们已经下载下来了。也不用管“拷贝”二字的意思。双击这个程序就能运行。

打开之后的界面是这样的

注意,这个烧录工具可能是初步作品,并不能设置需要烧写的目录。

阿里云的帮助文档是这么写的

“第一次编译后从代码顶层目录拷贝platform/mcu/haas1000/release/write_flash_gui目录下的所有文件到windows环境。后续再编译可以只替换write_flash_gui/ota_bin/ota_rtos.bin即可。”

经过实验,可以理解为“首先你要编译成功,编译成功之后,就会出现ota_bin文件夹,每次编译完毕,就会出最新的ota_rtos.bin。这个bin二进制文件就是编译成的代码。它在这个目录下存放。

然后设置串口,按照下图方式列出有效的串口,然后打开。

然后选择开始下载。如果一切顺利,将会出现idle标识

此时拔掉电源(注意不要拔掉USB线),然后重新插上。开始烧录(burnning)。

烧录成功

(八)使用串口助理进行观察

我使用的是putty,这个软件还可以用在LInux下,也非常方便。按下图设置,我新建了一个配置,起名叫做haas,以后可以直接双击haas打开运行窗口。波特率选择1500000,接近1500k,这个速度是一些其他软件不支持的。

打开之后观察,开发板不间断发送hello world!,还对发送次数计数。

三、结论

阿里云haas的设计初衷是好的,想做成arduino那样方便的软硬件积木,但是帮助文档写的有门槛,需要一定基础才行,目前还做不到arduino那样极简的界面和操作。

本文就简单介绍了一下初学者怎么一步步跑通helloworld,以及我在拿到板子后遇到的问题,希望能够帮助遇到类似问题的朋友,别走我这样的弯路。

以阿里云强大的技术能力,相信这些问题都能够解决。帮助文档也可以做的越来越好。

技术交流

猜你喜欢

转载自blog.csdn.net/youngwah292/article/details/108943898