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

简介: 快速学习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

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
Linux 数据安全/隐私保护 网络协议
CentOS 7系统安装配置图解教程
操作系统:CentOS 7.3 备注: CentOS 7.x系列只有64位系统,没有32位。生产服务器建议安装CentOS-7-x86_64-Minimal-1611.iso版本 一、安装CentOS 7.
4043 0
|
Linux Shell
linux 下安装minio并配置
现在我们去服务器,我们启动时指定的目录去看看,文件桶相当于文件目录,这里没有使用纠删码的模式,所以直接就是源文件了。当我们线上运行的项目已经有源文件了,在使用minio的时候,可以直接指定该目录为minio的文件目录就行了。
|
JavaScript 内存技术
fnm 安装、卸载与使用(详细步骤)
fnm 安装、卸载与使用(详细步骤)
3917 0
|
5月前
|
JSON 前端开发 关系型数据库
2026年的 ReAct Agent架构解析:原生 Tool Calling 与 LangGraph 状态机
本文介绍2026年演进版ReAct架构下的Research Brief Agent:摒弃脆弱的字符串解析(如&quot;Thought:/Action:&quot;),采用原生结构化工具调用(JSON Schema)、消息账本式State管理、自动引用提取与Postgres持久化,实现可复现、可审计、带真实URL引用的自动化研究简报生成。
503 2
2026年的 ReAct Agent架构解析:原生 Tool Calling 与 LangGraph 状态机
|
5月前
|
人工智能 缓存 安全
OpenClaw与飞书对接实操指南:AI+IM协同办公落地方案
本文为OpenClaw与飞书对接的实操指南,涵盖前置筹备(权限、环境适配、工具)、凭证获取、后台配置、异常排查及生态拓展。结合飞书证书升级、DigiCert验证与安装包报错等真实问题,提供可落地的分步解决方案,助力企业高效实现AI+IM协同办公。
|
10月前
|
弹性计算 运维 安全
【阿里云安全小贴士】创建ECS后,这3个配置千万别漏过
为保障阿里云ECS安全,建议完成三项基础配置:使用安全的登录方式、启用免费主机安全防护、设置自动备份策略。操作简单,配置之后可显著提升系统安全性与业务连续性。
【阿里云安全小贴士】创建ECS后,这3个配置千万别漏过
|
人工智能 数据可视化 计算机视觉
Ultralytics YOLO11来啦!更快!更强!
YOLO(You Only Look Once)是一种流行的物体检测和图像分割模型,由华盛顿大学的 Joseph Redmon 和 Ali Farhadi 开发。
Ultralytics YOLO11来啦!更快!更强!
|
Kubernetes Cloud Native 数据可视化
我们为何选择 Cilium 作为 Kubernetes CNI
我们为何选择 Cilium 作为 Kubernetes CNI
717 0
|
负载均衡 网络协议 算法
不为人知的网络编程(十九):能Ping通,TCP就一定能连接和通信吗?
这网络层就像搭积木一样,上层协议都是基于下层协议搭出来的。不管是ping(用了ICMP协议)还是tcp本质上都是基于网络层IP协议的数据包,而到了物理层,都是二进制01串,都走网卡发出去了。 如果网络环境没发生变化,目的地又一样,那按道理说他们走的网络路径应该是一样的,什么情况下会不同呢? 我们就从路由这个话题聊起吧。
747 4
不为人知的网络编程(十九):能Ping通,TCP就一定能连接和通信吗?
|
SQL 存储 分布式计算
Paimon助力数据湖仓架构实时化升级
本次分享由阿里云高级技术专家李劲松介绍Paimon助力数据湖仓架构实时化升级。内容涵盖四个部分:1) 数据架构的存储演进,介绍Data LakeHouse结合的优势;2) Paimon实时数据湖,强调其批流一体和高效处理能力;3) 数据湖的实时流式处理,展示Paimon在时效性提升上的应用;4) 数据湖非结构化处理,介绍Paimon对非结构化数据的支持及AI集成。Paimon通过优化存储格式和引入LSM技术,实现了更高效的实时数据处理和查询性能,广泛应用于阿里巴巴内部及各大公司,未来将进一步支持AI相关功能。

热门文章

最新文章