2_3_haas 源代码下载_编译_烧录|学习笔记

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 快速学习2_3_haas 源代码下载_编译_烧录。

开发者学堂课程【HaaS 物联网应用开发课程2_3_haas 源代码下载_编译_烧录】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/801/detail/13821


2_3_haas 源代码下载_编译_烧录

 

内容介绍:

一、HaaS 源代码下载及编译

二、HaaS 固件烧录及调试

三、演示

 

一、HaaS 源代码下载及编译

1. HaaS 源代码下载

HaaS EDU K1运行 AliOS Things 3.1版本

>Docker 版本

安装环境过程中,安装脚本会自动下载 HaaS 源代码到/workspace/AliOS-Things

>Native 版本

只需要使用 git 工具,通过 AliOS Things 源码的官方途径(github/gitee)进行下载

Ø github(服务器在国外,速度慢一些)

git clone https://github.com/alibaba/AliOS-Things.git -b dev_3.1.0_hass

Ø gitee (国内速度快,建议使用这种方式进行下载)

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

代码下载完成后可以通过 webIDE 方式来浏览编辑以及编译。

2. 触发编译

选择 APP -> 选择 Board -> 点击开始编译按钮

helloworld_demo haasEDU

image.png

点击最下方按钮后会提示选择编译哪个工程,此处可以输入,加入编译的是 helloworld_demo工程,输入helloworld_demo 会自动过滤出 helloworld_demo,选中工程后需要选择一个 board,选择 haaseduk1。

点击完后下方就会变成 helloworld_demo@haaseduk1。再点击√,就会自动进行编译。

编译结果:

image.png

编译过程中在 terminal 中显示整个编译过程的日志,编译完成后会显示 build complete helloworld_demo@haaseduk1,编译完成。

编译完成后的 image 放在 out 下的

helloworld_demo@haaseduk1下的 binary 目录下,但是在 haaseduk1并不能直接烧录到百度上运行,因为haaseduk1使用 haasedu1000芯片,需要将image打包后处理再交到一个 ota 下的 bin 中然后才能烧录到haasedu1000芯片中。

 

二、HaaS 固件烧录及调试

1. HaaS 固件烧录

点击下方状态栏中的⚡标志即触发烧录过程

image.png

根据提示选择 HaaS串口,当将 haasedu 管插入电脑后就会自动虚拟出一个串口。Haaseduk1上的选用的usb转用的芯片是 ft232r芯片,所以下图提示 Enter port index or full name:4串口对应的序列号为4,只需要输入4

image.png

回车后就会进行烧录,烧录完成后显示 Firware upload succeed

烧录过程中可以切回到启动 IDE 命令行的终端中可查看烧录的详细日志

如果日志中出现 Please reboot the board manually 或者听到每秒钟1声 beep,请按复位键手动复位开发板

烧录完成后来查看 helloworld_demo 如何输出来确定开发板是否正常运行

如何查看开发板输出的日志?日志也是通过刚刚烧录的串口进行输出,此时需要借助 PC 上的串口工具。

2. HaaS 调试-抓取日志

HaaS EDU K1在通过 Type-C 口连接到电脑之后,会自动在电脑上虚拟一个串口。虚拟出来的串口是用来烧录和输出日志使用的。

串口的名称在刚刚烧录的环节我们已经看过了。

建议的串口工具:

Ubuntu : picocom  该工具免费且比较稳定

MaCOs : picocom

Windows : sscom/SecureCRT

串口波特率设置:1500000,如MaCOS/Linux :

picocom -b 1500000 /dev/<UART NAME>

使用 picocom 时需要遵循上述格式

在打开串口工具后,picocom 会将自己的配置信息打印出,接着输出 HaaS EDU K1的日志。如下图输出的是 hello world!count 27

hello world!count 28

image.png

假如现在想要关闭串口方法:

>按下 ctrl+a 之后松开,再按 ctrl+x 将 picocom 退出。如果一次不行可以多尝试几次。

特别说明

因为串口输出和烧录共用同一个 UART,在烧录之前需要先关闭串口工具。

 

三、演示

演示从代码下载编译烧录及调试的整个过程,首先在

workspace/experiment 下新建了两个目录 gitee 和 github,接着同时让两个进行下载

启动 gitee 上:输入

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

启动 github 上:输入

/github.com/alibaba/AliOS-Things.git -b dev_3.1.0_haas

结果在 gitee 上下载速度更快

下载完成后在 gitee 上输入 ls

再输入 cd AliOS-Things/

结果显示目录结构如下

image.png

代码下载完成后 copy 到 workspace/experiment 下,输入

cd..

mv AliOS-Things/ /workspace/

ls /workspace

可以看到结果中有 AliOS-Things,已经 copy 完成。

代码下载完成后可以通过网页版的 AliOS Studio 来查看下载代码的目录结构,输入网址:

127.0.0.1:64352/?folder=/workspace/AliOS-Things

打开后左侧是运行代码的目录结构

image.png

下载完成后进行编译,选择 helloworld_demo 的工程,再选择 haaseduk1的包,选好后点击√,TERMINAL 窗口就会进行编译,实时显示编译过程。

image.png

编译完成后的 image 结果放在目录 out 下的

helloworld_demo@haaseduk1 下的 binary 下的

helloworld_demo@haaseduk1.bin。

编译完成后也看到了输出结果,之后进行烧录。

点击⚡符号后就会进行烧录,TERMINAL 中会显示 FT232R芯片是目标烧录的串口,在 Enter port index or full name 上敲入4回车就会自动进行烧录。

提示 success 烧录完成后需要查看 haashelloworld_demo 应用程序在 haaseduk1运行结果如何。

新打开一个窗口,本机上的一个窗口并不是刚才 docker 环境中 ssh 登录上的窗口。输入

ls /dev/tty.*

image.png

就可以看到刚才插上haaseduk1虚拟出来的串口

/dev/tty.usbserial-A908XGVV

再输入 picocom -b 1500000 /dev/tty.usbserial-A908XGVV

回车后 picocom 会先显示自身的配置信息,接着打印从 haaseduk1上输出的 log,结果显示 hello world! count ,count 在递增。

image.png

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
监控 IDE 开发工具
【esp32c3配置arduino IDE教程】
设计用户操作界面,该设备具备简单易用的操作界面,外加显示屏SSD1306和旋转编码器进行显示和控制,用户后期可进行二次开发WiFi或蓝牙连接电脑或手机监控。
1228 0
|
传感器 XML 消息中间件
Qt开发技术:mqtt介绍、QtMqtt编译和开发环境搭建
Qt开发技术:mqtt介绍、QtMqtt编译和开发环境搭建
Qt开发技术:mqtt介绍、QtMqtt编译和开发环境搭建
|
24天前
|
Java Linux 网络安全
树莓派的开发环境搭建教程
本教程详细介绍如何在树莓派上搭建开发环境,包括系统安装、配置网络、设置开发工具等步骤,适合初学者快速上手。
|
Ubuntu NoSQL IDE
树莓派开发笔记(二):qt开发环境搭建:树莓派qt编译和宿主机qt交叉编译
树莓派开发笔记(二):qt开发环境搭建:树莓派qt编译和宿主机qt交叉编译
树莓派开发笔记(二):qt开发环境搭建:树莓派qt编译和宿主机qt交叉编译
|
IDE 开发工具
esp32环境安装教程---arduino IDE
esp32环境安装教程---arduino IDE
413 0
|
Go 开发工具 Android开发
【嵌入式开发】 嵌入式开发工具简介 (裸板调试示例 | 交叉工具链 | Makefile | 链接器脚本 | eclipse JLink 调试环境)(二)
【嵌入式开发】 嵌入式开发工具简介 (裸板调试示例 | 交叉工具链 | Makefile | 链接器脚本 | eclipse JLink 调试环境)(二)
201 0
【嵌入式开发】 嵌入式开发工具简介 (裸板调试示例 | 交叉工具链 | Makefile | 链接器脚本 | eclipse JLink 调试环境)(二)
|
NoSQL 开发工具 Android开发
【嵌入式开发】 嵌入式开发工具简介 (裸板调试示例 | 交叉工具链 | Makefile | 链接器脚本 | eclipse JLink 调试环境)(三)
【嵌入式开发】 嵌入式开发工具简介 (裸板调试示例 | 交叉工具链 | Makefile | 链接器脚本 | eclipse JLink 调试环境)(三)
315 0
【嵌入式开发】 嵌入式开发工具简介 (裸板调试示例 | 交叉工具链 | Makefile | 链接器脚本 | eclipse JLink 调试环境)(三)
|
Ubuntu Linux 编译器
【嵌入式开发】 嵌入式开发工具简介 (裸板调试示例 | 交叉工具链 | Makefile | 链接器脚本 | eclipse JLink 调试环境)(一)
【嵌入式开发】 嵌入式开发工具简介 (裸板调试示例 | 交叉工具链 | Makefile | 链接器脚本 | eclipse JLink 调试环境)(一)
288 0
【嵌入式开发】 嵌入式开发工具简介 (裸板调试示例 | 交叉工具链 | Makefile | 链接器脚本 | eclipse JLink 调试环境)(一)
|
存储 物联网 Linux
AliOS Things 3.3.0 : 实战HaaS100扩展SD卡
HaaS100开发板提供了灵活的存储软硬件方案,硬件上包括内存、内置Nor Flash和外置SD-Card,软件上提供内存文件系统、Flash文件系统和SD卡文件系统。其中扩展SD卡可以支持上百G的存储,可适用于需要存储图片、音视频等较大数据的场景。
AliOS Things 3.3.0 : 实战HaaS100扩展SD卡