开发者学堂课程【HaaS 物联网应用开发课程:2_4_HaaS_Helloworld】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/801/detail/13822
2_4_HaaS_Helloworld
内容介绍
一、下载源代码
二、目录结构简介
三、helloword_deom 源代码编译及烧录
四、helloword_deom 历程演示
五、helloword_deom 代码修改及演示
一、下载源代码
1登录 docker 环境
2粘贴下面代码,下载源代码:
git clone https://gitee.com/alios-things/AliOS-Thing.git -b
dev_3.1.0haas
下载源代码后,窗口如下
3输入ls,在 workspace/experiment 窗口生成 一个名为AliOS-Things 的新目录
4通过 web 的 ID 打开 AliOS-Things 目录
5复制路径
/workspace/experiment/AliOS-Things# 在AliOS-Studio web的登录页面上把 folder= 后的路径替换
未替换窗口如下
替换后窗口如下
二、目录结构简介
本节课程学习的 helloworld_deom 是在 application 下的 example 中。
helloworld_deom 目录下有 aos.mk 文件,aos.mk 文件有源文件 appdemo.c 和 maintask.c。
appdemo.c 中只有一个 application_start 函数,application_start 是 AliOS-Things 应用程序的入口,类似 linux 中 main 函数。在应用开发时,在 application_start 中呼叫自定义功能的 aipia,呼叫 aipia 之后编译烧录,操作系统启动之后会自动运行 aipia 中的功能。
appdemo.c源文件
maintask.c中函数 aos_maintask 呼叫 application_start 函数,
在呼叫 application_start 函数之前会呼叫 board_init(); 函数 board_kInit_init(&kinit); 函数 aos_components_init(&kinit); 函数。board_init(); 函数 和 board_kInit_init(&kinit); 函数是用来初始化。aos_components_init(&kinit); 函数是 AliOS-Things 中基础组件的 aipia。
例如文件系统等等都是在 aos_components_init
(&kinit); 函数中初始化的。
三、helloword_deom 源代码编译及烧录
1 编译 helloword_deom,在 haaseduk 上编译。
编译完成窗口显示如下
2点击烧录按钮后,开始下载
3 通过 clear 查看输出日志
在 (zsh) 中输入 ~ls /dev/ tty.u* 回车,然后输入 ~picocom -b 1500000 导入文件/dev/tty.usbserial-A908XGVV回车。helloword_deom 会每秒钟输出一次 hello world! count 的日志,count 值每次加一。
怎么确定烧录是否正确
第一种:修改输出日志,然后在编译一下,最后烧录一下。
在appdemo.c 中 application_start 函数之中把hello world 修改为 welcome to China!,然后重新编译,编译完成后,点击烧录。
第二种:查看开发版 linux 编译时间。
通过指令 2>&1|tee welcome_to_china.log,然后重启界面。