简介
硬件
下面是Haas100开发板的简单介绍, 详细功能和参数可以参考HaaS100的硬件规格说明。
软件
HaaS100搭载AliOS Things物联网操作系统 。
环境
AliOS Things的开发环境准备。
快速开始
下载代码
git clone https://github.com/alibaba/AliOS-Things.git -b dev_3.1.0_haas
对于国内用户,为避免从github下载速度较慢,可以从gitee上下载。git clone https://gitee.com/alios-things/AliOS-Things.git -b dev_3.1.0_haas
编译
进入代码的顶层目录如AliOS-Things进行编译。可以直接编译application/example/目录下的demo app,或者自己开发的app。下面以编译helloworld_demo为例。aos make helloworld_demo@haas100 -c config
aos make
烧录
第一次编译后从代码顶层目录拷贝platform/mcu/haas1000/release/write_flash_gui目录下的所有文件到windows环境。 后续再编译可以只替换write_flash_gui/ota_bin/ota_rtos.bin即可。
准备
给HaaS 100插上电源,在Micro USB口插上usb线并连接到烧录主机。等待烧录主机发现新插入的usb设备并识别成串口。
如果您的烧录主机没有自动识别usb并安装驱动, 您可以点击这里 USB转UART驱动 手动下载对应的版本并安装。
识别成功后,可以在计算机管理->设备管理器中发现串口设备。
开始烧录
在windows环境下进入write_flash_gui目录,双击运行haas1000_write_flash_main,出现烧录软件的主界面。
点击Port Config 按钮,出现串口配置界面。
点击List按钮,选择HaaS100连接的串口。
选择后,点击Ok按钮确认关闭串口配置界面,此时主界面如下,烧录状态是Closed。
点击Start All 按钮,进入烧录状态,此时烧录状态是Idle,等待设备重启。
短按板子上的重启键或者插拔电源对板子上下电,开始烧录,此时烧录状态是Burning,可以看到烧录的进度。
等待烧录成功,此时烧录的状态的Success,进度是100%。
点击Exit 退出即可。
串口打印
使用串口工具如Putty/SecureCRT,设置串口波特率1500000。
Putty设置
设置串口波特率1500000,并关闭Parity 和 Flow control
SecureCRT设置
设置串口波特率1500000,并关闭Parity 和 Flow control
设置字符编码为UTF-8,否则打印会乱码。
启动log
设置好串口后, 重启设备就可以看到AliOS Things的启动log,和最后hello world的打印了。
1569/main | app_status_indication_set 1
1569/main | platform_init_step1 done, user_init=3, ret=0
1569/main | platform_init_step1 enter temprature cali on signal
1569/main | board_init platform_init_step1 done
1573/main_task | sys_init go
1573/main_task | sys freq calc : 320000000, wifi init 1
1573/main_task | sys_init soc_peripheral_init done
Welcome to AliOS Things
1574/main_task | sys_init aos_components_init done
1574/main_task | mesh has been opened
[Jan 01 00:00:01.482]<I>ULOG-test sys_init aos_components_init done
nano entry here!
hello world! count 0
hello world! count 1
hello world! count 2
hello world! count 3
如何点亮一个LED灯
上面看过了简单的打印后, 我们做一个简单的点灯实践来练练手。
如下简单修改application/example/helloworld_demo/appdemo.c,增加点灯的代码。
说明:灯的编号,右边从上到下分别是0, 1 , 2;左边从上到下分别是3, 4, 5。 编号0是电源指示灯,不可修改。
--- a/application/example/helloworld_demo/appdemo.c
+++ b/application/example/helloworld_demo/appdemo.c
@@ -8,6 +8,7 @@
#include "aos/init.h"
#include "board.h"
#include <k_api.h>
+#include "led.h"
int application_start(int argc, char *argv[])
{
@@ -18,6 +19,13 @@ int application_start(int argc, char *argv[])
//fd = board_lcd_create("name");
//board_lcd_write(fd,buffer,len);
+ printf("Light all the led switch of the left.\r\n");
+ /* Sleep 1 second to avoid that led switch on/off while the boad boot up. */
+ aos_msleep(1000);
+ led_switch(3,LED_ON);
+ led_switch(4,LED_ON);
+ led_switch(5,LED_ON);
+
while(1) {
printf("hello world! count %d \r\n", count++);
代码改完后,参考上面的步骤编译烧录,最后启动板子就能看到左边的灯都已经被点亮。
怎么样? 用HaaS进行开发是不是很简单, 远远不止这些哦,HaaS已经做了很多简化开发的工作, 快来动手探索一下吧。