摘要:本文介绍如何将HaaS固件烧录至m5stack core2硬件设备上。让低代码开发物联网应用的HaaS应用在更多的硬件上,是HaaS的初心,具体的做法是将功能强大的固件烧录至硬件设备上,通过通用的python或者JavaScript语言,以极简的方式来开发物联网应用。

根据阿里云的描述

HaaS开发框架 (aliyun.com)https://haas.iot.aliyun.com/solution/detail/hardware?versionId=800C84FAF561DF6A00000001&dataId=800C84FAF561DF6A

m5stack主机主控芯片是ESP32,所以我们可以像控制一台普通ESP32主机一样控制它。m5stack内置了多个传感器,使我们可以在一台小小的设备上调试众多的物联网和嵌入式应用。例如它内置了2寸的电容式触摸屏、姿态传感器、麦克风、扬声器等,当然还有一块锂电池,让我们拔掉数据线也能离线运行。

这块不大但是也不小的屏幕让我们可以做出很多人机交互界面,后续的文章将会为大家介绍UI的应用。

为了调试HaaS应用,我们需要首先为它烧录固件,有了固件才能使用Python编写程序。固件可以理解为python解释器,但又不完全等同于一个简单的解释器,毕竟,它还管理着复杂的硬件资源呢。

烧录的过程也非常简单。

1.下载vscode

下载vscode比较慢是因为网速导致的请耐心等待。

2.安装haas studio

下载vscode,安装完成后,在扩展工具栏,搜索haas并安装橘色图标的haas-studio。安装过程中会提示您安装aos-tools,跟着向导安装即可。

3.激活haas

每次打开vscode,都会提示激活haas,还会提示信任工作区。点击信任即可。

信任之后,会自动弹出haas快速开始菜单。

4.进入烧录菜单

按下图所示,选择“H”型图标,再选择“烧录工具”

5.选择正确的烧录参数

请按照下图所示设置正确的参数。

固件下载链接是:

https://hli.aliyuncs.com/o/config/HaaS_Python/HaaSPython-ESP32-8M-v2.1.0.zip

6.开始烧录

烧录的信息如下

重要信息用红色标记。请读者自行理解

C:\Users\XXXXX> $Env:Path="C:\ProgramData\aos\miniconda3;C:\ProgramData\aos\miniconda3\Scripts;C:\ProgramData\aos\miniconda3\Library\bin;$Env:Path" ; echo "=> powershell.exe detected, set miniconda env finished."
=> powershell.exe detected, set miniconda env finished.
PS C:\Users\86139> esptool -b 460800 -p COM4                 write_flash 0x1000 d:\m5stackwork\HaaSPython-ESP32-8M-v2.1.0\HaaSPython-ESP32-8M-v2.1.0.bin
esptool.py v3.3
Serial port COM4
Connecting.......
Detecting chip type... Unsupported detection protocol, switching and trying again...
Connecting....
Detecting chip type... ESP32
Chip is ESP32-D0WDQ6-V3 (revision 3)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: 4c:eb:d6:44:f6:c4
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 460800
Changed.
Configuring flash size...
Flash will be erased from 0x00001000 to 0x00feffff...
Compressed 16707584 bytes to 2659910...
Writing at 0x0023fef7... (38 %)

烧录完成后的串口显示,整个烧录大约几十秒。

Configuring flash size...
Flash will be erased from 0x00001000 to 0x00feffff...
Compressed 16707584 bytes to 2659910...
Wrote 16707584 bytes (2659910 compressed) at 0x00001000 in 86.8 seconds (effective 1540.4 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...

7.使用helloworld测试

在自定义的haas工作目录下,使用helloworld解决方案创建。

代码自动拉取并生成。

点击部署运行

在整个工作窗口的顶端弹出对话框,选择本地更新

再选择串口号

烧录及运行的过程如下所示,定时通过串口输出helloworld信息。

PS D:\haaswork\HaaSPython\HaaSPython> $Env:Path="C:\ProgramData\aos\miniconda3;C:\ProgramData\aos\miniconda3\Scripts;C:\ProgramData\aos\miniconda3\Library\bin;$Env:Path";python c:\Users\86139\.vscode\extensions\haas.haas-studio-2.1.0\asserts\mpy_tools\mpytool.py -p COM4                 -f d:\haaswork\HaaSPython\HaaSPython\solutions\helloworld -t c:\Users\86139\.vscode\extensions\haas.haas-studio-2.1.0\asserts\mpy_tools
[*] port is  COM4
[*] Filename is  d:\haaswork\HaaSPython\HaaSPython\solutions\helloworld
[*] Filename is  c:\Users\86139\.vscode\extensions\haas.haas-studio-2.1.0\asserts\mpy_tools
C:\Users\86139\AppData\Roaming\Thonny
==== wait hardware reset!!! ====
==== hardware reset OK!!! ====
=== start upload... ===
=== wait python process interrupt ===
=== system execute boot.py file, wait interrupt!! ===
=== wait 1s send interrupt cmd!! ===
upload process...0%
upload process...24%
=== upload progress end ===
5.164669752120972
3.348640203475952
--- Miniterm on COM4  115200,8,N,1 ---
--- Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
flash_get_info no:5 offset:0x16000 size:0x1000     
128: ota crc cal:0x6514 param:0xffff
ota upg_flag:0xffffcount:0 crc:0xffffboot_type:255 
No OTA upgrade.
mount fs
 ==== python execute bootpy ====
 ==== python file check /data/pyamp/main.py ====  
 ==== python execute from /data/pyamp/main.py ====
helloworld
helloworld
helloworld
helloworld
helloworld
helloworld
helloworld
helloworld
helloworld
helloworld

至此,就证明HaaS固件烧录成功。

我们就可以通过编写python代码,来体验HaaS为我们带来的神奇之旅了。

阿里云HaaS固件烧录至m5stack的步骤相关推荐

  1. 阿里云HaaS神奇界面(一)colorwheel - 颜色选择器

    摘要:本文介绍HaaS固件中非常重要的界面元素colorwheel的用法,作为第一课,还将介绍一下轻量级显示框架LVGL的基本知识. 硬件:M5StackCore2 软件:win10,vscode(h ...

  2. 阿里云HaaS“老板来了”用的ESP-EYE语音唤醒+人脸识别介绍

    摘要:"老板来了"案例是阿里云HaaS最受欢迎的案例之一,其中用到的ESP-EYE模块是一款带有AI功能的"智能摄像头",有一些同学问我该怎么样使用它,本文就从 ...

  3. vscode编译阿里云HaaS例程遇到fatal error: fb.h: No suchfile or directory怎么解决?

    摘要:基于vscode调试HaaS例程时遇到fatal error: fb.h: No such file or directory错误时,需要在yaml文件中添加一个依赖才可以继续编译.本文介绍一下 ...

  4. access2003安装包百度云_阿里云服务器安装JDK与配置环境详细步骤

    一.根据自己需求购买阿里云服务器 第一步:购买链接:阿里云-上云就上阿里云 第二步:设置自己服务器的登录密码 二.下载服务器操作系统版本的JDK 这里我以Linu系统JDK1.8.0版本来示范,官网下 ...

  5. 阿里云容器kubernetes发布nacos2.0.3步骤

    第一步 官网下载https://nacos.io/zh-cn/ nacos2.0.3, 将conf/nacos-mysql.sql数据库还原到阿里云RDS数据并添加k8s集群节点访问白名单 第二步   ...

  6. WordPress | 阿里云轻量应用服务器wordpress升级php步骤

    我的博客:https://blog.justlovesmile.top 文章目录 1.首先更新依赖包. 2.安装依赖包 3.转到 /usr/local/src 目录,下载php7.3.5 4.解压安装 ...

  7. 阿里云mysql_阿里云下配置MySQL远程连接的步骤详解

    前言 众所周知在默认情况下,我们安在阿里云上的mysql是不支持远程连接的,但是我们还需要通过一些工具来连接mysql,如navicat,这时就需要我们来修改mysql的远程连接了. 注意一点:当我们 ...

  8. 阿里云商标注册教程:新手自助申请步骤

    阿里云商标注册图文教程快速上手笔记,本文以阿里云商标智能注册申请为例,商标智能注册申请需要用户手动填写商标类型.商标名称.商标图样.商标说明及商标分类表选择等操作,流程较为复杂,TM83商标网来详细说 ...

  9. 阿里云oss简单的文件上传步骤

    1.登录阿里云然后点击开通 2.同意协议点击开通 3.创建存储容器 4.导入maven坐标 <dependency><groupId>com.aliyun.oss</gr ...

最新文章

  1. Java动态代理机制
  2. python处理excel文件-使用Python进行Excel文件处理
  3. Tableau实战系列数据连接及数据准备
  4. tf.reshape(inputs, [-1,dim])的理解
  5. TomcatServlet笔记
  6. Oozie JMS通知消息实现--根据作业ID来过滤消息
  7. Codeforces Round #650 (Div. 3)(A-C)
  8. 女人跳槽:最重要的是你的独立,你的快乐
  9. OpenVINO 2019 R2.0 Custom Layer Implementation for linux(1)
  10. python中session的使用方法_python中requests库session对象的妙用详解
  11. ajax表单图片,js中使用ajax上传一个带有图片的表单数据
  12. 山东大学计算机学院交叉,Xueying Qin
  13. Alibaba Druid 源码阅读(二) 数据库连接池实现初步探索
  14. linux下添加用户并且让用户获得root权限
  15. 【java笔记】线程(2):多线程的原理
  16. vue 多个组件动态加载(动态组件的使用)
  17. 《炬丰科技-半导体工艺》 室温下等离子增强的中红外光电探测
  18. 记录实验所用计算机硬件配置,《计算机硬件性能检测》实验指导书
  19. 快递鸟智选物流API接口平台对接分享实例
  20. 威纶通触摸屏232脚位_威纶通触摸屏使用手册

热门文章

  1. 4-4模拟赛 囚人的旋律——DP
  2. 浅识Flutter 基本组件MaterialAPP的theme属性 app主题
  3. Python 爬取CCTV视频
  4. hive string 转数组:抽取数组中的key 然后列转行
  5. Stata: 蒙特卡洛模拟(Monte Carlo Simulation)没那么神秘
  6. Android ProgressDialog
  7. 【计算机毕业设计】基于微信小程序的线上水果店系统 水果销售系统
  8. vi设计中视觉识别符号设计与商标设计的区别
  9. 微信小程序用户登录流程思路及主要代码
  10. 我们死后QQ号怎么办?