快速上手¶
Python轻应用以MicroPython作为运行引擎,它继承了python优美简洁的语法特点,同时提供了便捷的嵌入式硬件操作库,极大的降低了嵌入式开发的门槛。Python轻应用目前主要部署在阿里云Iot推出的HaaS系统开发板上,以HaaS100为例,它不仅提供了各种丰富的硬件操作接口,同时提供了阿里云物联网平台的连接控制以及云/端AI相关的能力。通过Python轻应用,我们可以轻松便捷的搭建各种功能丰富案例和产品,让Iot应用开发轻松实现跨平台热更新。
环境搭建¶
环境搭建可以有两种方法:基于源码编译烧录和基于官方固件直接烧录
建议开发者基于官方固件快速搭建python开发环境,具体步骤如下:
Mac环境搭建
第一步:下载官方固件包,并解压到当前目录
第二步: 机器连接电源,并通过usb连接到电脑
通常情况下,连接成功以后,设备上会多出来一个/dev/cu.SLAB_USBtoUART(不同的电脑,串口设备路径不一样)设备
第三步: 设置串口,执行烧录命令
进入mac_burn目录,执行以下命令烧录:
python flash_program.py --bin=./py_engine_demo@haas100.bin --bin=./littlefs.bin#0xB32000
如果是第一次烧录,脚本会查询系统所有的串口节点,并要求用户自己输入当前HaaS100设备的节点路径,烧录完成以后,串口路径就被记录到了当前目录的.config 文件中,内容如下:
{ "chip_haas1000": { "baudrate": "1500000", "binfile": [ "./py_engine_demo@haas100.bin" ], "serialport": "/dev/cu.SLAB_USBtoUART" }
特别注意serialport 字段的路径为实际HaaS100的串口路径,如果串口路径改变了,需要手动删除.config_burn中的”serialport”字段,或者serialport字段的值修改为实际路径之后再进行烧录
如果烧录过程中出现如下提示:
"Please reboot the board manually"
请按下板子上远离电源的(最外侧)的黑色按钮,继续烧录。
Mac电脑烧录请确保电脑安装pserial,安装命令如下:
brew install python pip install pserial
Windows环境搭建
第一步:下载官方固件包,并解压到当前目录
第二步: 机器连接电源,并通过usb连接到电脑
第三步:进入write_flash_gui目录,双击运行haas1000_write_flash_main,出现如下烧录软件的主界面
第四步:Port Config,选择对应的串口设备后,点击开始按钮烧录即可
源码固件编译方法,可以参考: <<HaaS100快速开始>> ,将编译工程名从helloworld_demo 改成 py_engine_demo
快速验证¶
开机默认会启动之前烧录进去的程序,打开串口工具,选择对应的串口设备,设置波特率为1500000 并连接。 Python轻应用默认支持两种运行模式: 交互式 和 文件执行,在串口下输入不同的命令进入不同的模式
命令行输入python进入交互模式,在交互模式输入python代码,就能看到执行结果。键盘按下ctrl+d 退出交互模式
python
命令行输入python /data/python/driver/led.py,执行led.py文件
python /data/python/driver/led.py以下是跑马灯的代码示例,更多示例请参考主页的参考案例界面
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 # -*- coding: UTF-8 -*- import utime from driver import GPIO # 初始化GPIO 类 gpio = GPIO() leds=("led1", "led2", "led3", "led4", "led5") for i in range(5): for led in leds: #open 函数支持的参数列表: led1, led2, led3, led4, led5 gpio.open(led) #点亮led gpio.write(0) utime.sleep_ms(200) #熄灭led gpio.write(1) utime.sleep_ms(200) gpio.close()data目录的文件默认内容在: platform/mcu/haas1000/prebuild/data/, 这里的文件和目录默认会编译打包到littlefs.bin.如果有更新,需要烧录littlefs.bin文件. 除了/data目录之外,还支持执行/sdcard 目录python程序. 文件在pc上面编辑,保存到sdcard目录,然后将sdcard插入机器,重启机器,执行如下命令
python /sdcard/led_test.py