HaaS 506

1 淘宝购买

HaaS506 集成了4G CAT.1和蓝牙4.0的模组,淘宝购买链接

2 功能介绍

HaaS506 提供锂电池供电,多功能按键、音频采集与播放,RS-232和RS-485接口,以及I2C和SPI等多个外设,具有高速率、低延时等特点。


HaaS506 广泛应用于共享、工业控制、工业传感器、水文水利的检测、港口物流跟踪、车联网、智能电网、4G执法仪、视频安防等对于宽带速率要求高, 同时对稳定性要求更高的物联网场景。

haas506介绍 USB端口驱动

更多关于HaaS506的硬件介绍,请参考文章:HaaS506硬件规格

3 环境搭建

I. 固件下载和烧录

  • 硬件连接

    • 接线方法

      1. Type-C usb 连接电脑供电

      2. Usb转 UART 两端分别连接开发板的 UART 口和 PC

      新建文件

      USB TO TTL 连接注意事项

      3.3v 不要连接

  • 环境搭建

    第一步:下载对应HaaS硬件设备的官方固件包并解压(HaaS506只支持windows烧录)。

    HaaS固件包

    文件名

    下载链接

    Windows 固件

    HaaS 506 固件

    USB烧录驱动

    USB烧录驱动

    USB转串口驱动

    USB转串口驱动

    烧录工具

    烧录工具

    固件包中包含:固件版本信息,二进制bin文件和烧录脚本,具体文件信息如下:

    .HaaS 固件
    ├── 20210719
    └── M601.pac
    
    .USB烧录驱动
    ├── 20210708
    ├── DriversForWin10              # Windows10 驱动包
    ├── DriversForWin78              # Windows7/8 驱动包
    ├── DriverUninstall32.exe
    └── DriverUninstall64.exe        # 64位系统安装文件
    
    .USB转串口驱动
    ├── 安装失败解决办法
    ├── readme
    ├── SETUP              # 驱动安装文件
    
    
    .烧录工具
    ├── Bin
      └── UpgradeDownload.exe
    ├── Doc
    ├── Readme.txt
    ├── Release notes.xls
    

    第二步:连接开发板,安装驱动和固件烧录工具

    1、使用USB线,将开发板和pc进行连接

    2、安装USB烧录驱动:解压USB烧录驱动文件,选择对应操作系统的.exe文件进行安装。

    驱动安装完成后,当连接USB接口后,会枚举出Unisoc Usb Serial Port 八个端口,USB具体端口信息如下:

    USB端口驱动

    烧录模式,会枚举出USPRD U2S Diag 一个端口,信息如下:

    USB端口驱动

    烧录工具驱动安装注意事项

    • 安装成功以后,正常上电开机,设备管理中可以看到8个串口设备

    • 进入boot模式后(按下boot 的同时按下reset),设备管理器中只能看到一个设备,名称是SPRD U2S Diag,如果发现USB虚拟串口名称不是SPRD U2S Diag,需在设备管理器中再次更新一下它的驱动

    • typc-c USB 口只负责供电和烧录

    3、固件烧录工具无需安装,解压直接使用.exe文件即可

    烧录软件

    第三步:烧录

      1. 打开解压好的 UpgradeDownload.exe 烧录软件;

      1. 点击软件左上角第一个Load packet选项选择所要烧录的.pac文件;

      1. 选择好.pac文件,点击软件左上角的第三个“Start Downloading”按钮后,先按住BOOT键不动再按一下RST键,即开始烧录(开始烧录后即可松开按键,无需持续按键);

      1. 烧录完成后会显示Passed字样,具体操作请参考下图;

      1. 烧录完成以后,重按RST复位键 重启设备

    烧录

    第四步:连接USB 串口,查看系统Log

    • 使用USB TO TTL 和原装杜邦线,将设备uart口和 pc 进行连接

    USB串口连接注意事项

    • 设备端RX接 USB TO TTL 模块的TX

    • 设备端TX接 USB TO TTL 模块的RX

    • 设备端GND接 USB TO TTL 模块的GND

    • 3.3v 不要连接

    • USB 串口除了用来查看log,repl交互之外,HaaS Studio 推送文件也是使用的这个接口

    • 按下RST复位键后系统启动,重启以后,设备管理器显示设备列表如下:

      USB端口驱动

      如果找不到USB转串口设备,需要安装USB转串口的驱动: 解压 CH340.rar文件,双击SETUP.exe文件进行安装

      其中USB to Uart 对应的串口设备就是HaaS506 本地轻应用更新和查看log的端口。使用串口工具连接串口,波特率是115200,看到下面的信息则表明启动正常。

      >>>
      >>> MicroPython 1a02b3b-dirty on 2021-07-29, 11:24:14; M601 with 8910
      Type "help()" for more information.
      

      具体按键的位置,参考下面 HaaS506 系统框图:

      Python轻应用交互式运行结果

4 快速验证

开机默认会启动之前烧录进去的程序,打开串口工具,选择 USB TO TTL 串口设备,设置波特率为 115200 并连接。


Python轻应用默认支持两种运行模式:交互式 和 文件执行。系统开机默认执行/data/pyamp/main.py 文件, 如果文件不存在或者文件执行退出,都会进入repl 模式。


1) 在交互模式输入代码就能看到执行结果:

Python轻应用交互式运行结果

2) 在交互模式下输入 execfile(‘filepath’) 可以执行Python文件。 假设我们想执行 /data/pyamp/ 路径下的 main.py文件,输入下面的命令即可:

execfile('/data/pyamp/main.py')

REPL环境下查看文件信息

不同于CLI模式下的文件查看命令,REPL模式下需要使用uos下的listdir函数查看:

>>> import uos
>>> uos.listdir('/data')
['pyamp']
>>> uos.listdir('/data/pyamp')
['main.py']
>>>

以下是跑马灯的代码示例,更多示例请参考 参考案例 界面。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
 # -*- coding: UTF-8 -*-
 # This is a sample Python script.
 import utime
 from driver import GPIO

 print("start led test")
 gpio = GPIO()
 leds=("led1", "led2", "led3", "led4", "led5")
 for i in range(5):
     for led in leds:
         gpio.open(led)
         gpio.write(1)
         utime.sleep_ms(200)
         gpio.write(0)
         utime.sleep_ms(200)
         gpio.write(1)
         utime.sleep_ms(200)
         gpio.close()

 print("end led test")

5 编程接口能力

HaaS506除了支持全量的原生接口外,还提供了丰富的外设及物联网接口。各个接口的详细使用请参考 编程接口

具体支持能力如下:

HaaS 506 基础库支持能力

基础库

支持能力

cmath

支持

math

支持

uarray

支持

ubinascii

支持

ucollections

支持

uerrno

支持

uhashlib

支持

uheapq

支持

uio

支持

ujson

支持

uos

支持

ure

支持

uselect

支持

usocket

支持

ussl

支持

ustruct

支持

usys

支持

utime

支持

uzlib

支持

_thread

支持

HaaS 506 轻应用特定库支持能力

轻应用特定库

支持能力

btree

支持

framebuf

暂不支持

machine

暂不支持

micropython

支持

ucryptolib

支持

urandom

支持

HaaS 506 Driver库支持能力

Driver库

支持能力

BoardConfig

支持

UART

支持

GPIO

支持

ADC

支持

DAC

支持

PWM

支持

I2C

支持

SPI

支持

TIMER

支持

KV

支持

HaaS 506 高级组件库支持能力

高级组件库

支持能力

iot

支持

minicv

暂不支持

OSS

暂不支持

audio

暂不支持

blt_netconfig

支持

http

支持

mqtt

支持

network

支持

modbus

支持

ulog

支持

ota

支持

6 参考案例

以下HaaS506的参考案例,都可以通过 IDE 下载到设备中运行。为了节约流量,目前HaaS506只支持本地更新。