HaaS100/HaaS EDU¶
1. 环境搭建¶
环境搭建有两种方法:基于源码编译烧录和基于官方固件直接烧录。如果没有特殊需求,建议开发者基于官方固件快速搭建 Python 开发环境。
I. 固件下载和烧录¶
MacOS 环境搭建
MacOS 电脑烧录请确保电脑安装pyserial,安装命令如下:
第一步:下载对应HaaS硬件设备的官方固件包并解压。
MacOS HaaS 固件包¶ HaaS型号
MacOS 固件下载链接
HaaS 100
HaaS Edu
固件包中包含:固件版本信息,二进制bin文件和烧录脚本。 具体文件信息如下, 其中20210615为版本发布信息,会随发布时间变化:
第二步:机器连接电源并通过usb连接到电脑
通常情况下,连接成功以后,设备上会多出来一个/dev/cu.SLAB_USBtoUART(不同的电脑串口设备路径不一样)设备。 执行 pyserial-ports 命令可以查看HaaS设备在当前电脑的串口名称。
第三步:设置串口,执行烧录命令
进入mac_burn目录,执行以下命令烧录:
如果是第一次烧录,脚本会查询系统所有的串口节点,并要求用户自己输入当前HaaS设备的节点路径,烧录完成以后,串口路径就被记录到了当前目录的 .config_burn 文件中,内容如下:
注意
serialport 字段的路径为实际HaaS的串口路径。如果串口路径发生了改变,需要手动修改 serialport 字段的值为实际路径之后再进行烧录。
输入下面的命令查询当前串口路径:
如果烧录过程中出现如下提示,请按下板子上复位按钮(最外侧远离电源的黑色按钮),继续烧录。
烧录完成以后,可以通过串口工具连接机器进入命令行。推荐使用picocom连接,需要退出串口的时候,请先按Ctrl+a, 再按Ctrl+q。
/dev/cu.SLAB_USBtoUART
是 HaaS 设备的串口路径,若提示路径不存在,请修改为自己的真实路径。Windows环境搭建
第一步:下载对应HaaS硬件设备的官方固件包并解压。
Windows HaaS 固件包¶ HaaS型号
Windows 固件下载链接
HaaS 100
HaaS Edu
刷机包解压后,文件信息如下。其中20210615为版本发布信息,会随发布时间变化:
. ├── 20210615 ├── CheckComfirm.ui ├── Warning.ui ├── Wifi_Download.ui ├── dld_cfg ├── dld_main ├── haas1000_dld_cfg.yaml ├── haas1000_write_flash_main.exe ├── images ├── ota_bin ├── productline_cfg.xml ├── productline_config.ui ├── productline_config_en.ui ├── programmer2001.bin ├── qt.conf ├── qt4_plugins ├── setportdlg.ui ├── setportdlg_en.ui └── setupdlg.ui![]()
第二步:机器连接电源,并通过usb连接到电脑
第三步:进入write_flash_gui目录,双击运行haas1000_write_flash_main,出现如下烧录软件的主界面
第四步:点击Port Config中的list, 选择对应的串口设备后点击开始按钮, 按键复位设备 后即开始烧录。
II. 固件编译¶
详细的源码编译环境搭建方法,可以参考 HaaS100快速开始 。
注意选择正确的解决方案和开发板
选择解决方案: micropython示例
选择开发板: haas100 或 haaeduk1
2. 快速验证¶
开机默认会启动之前烧录进去的程序,打开串口工具,选择对应的串口设备,设置波特率为1500000 并连接。
Python轻应用默认支持两种运行模式:交互式 和 文件执行,在串口下输入不同的命令进入不同的模式
命令行输入
python
进入交互模式,在交互模式输入代码就能看到执行结果。键盘按下ctrl+d 退出交互模式:![]()
命令行输入python /data/python-apps/driver/led/main.py,执行LED 跑马灯程序
![]()
以下是HaaS100上跑马灯的代码示例,如果要运行HaaSEDU, 请注意用如下代码 替换 第7行。更多示例请参考 参考案例 界面。
data目录的文件默认内容在:hardware/chip/haas1000/prebuild/data, 这里的文件和目录默认会编译打包到
hardware/chip/haas1000/release/release_bin/littlefs.bin
。若需更新需要重新烧录littlefs.bin文件。除了/data目录之外,也可以执行/sdcard 目录下的python程序。