摘要:本文介绍了如何介绍HaaS固件烧录至m5stack core2硬件设备上。让低代码开发物联网应用的HaaS应用于更多的硬件,是的HaaS初心,具体做法是通过通用方式将功能强大的固件烧录到硬件设备上python或者JavaScript以极简主义的方式开发物联网应用语言。
根据阿里云的描述
m5stack主机主控芯片是ESP所以我们可以像控制一个普通的一样ESP像主机一样控制它。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... ESP32Chip 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为我们带来的神奇之旅了。