1、前言

关于轻应用的文档请参考轻应用总览

HaaS600 Kit 是一款基于 HaaS600系列模组评估的高性价比开发板。可应用于共享控制、金融支付、智能语音、泛工业等场景的智能硬件产品开发。

HaaS600套件包含以下物料:

  • 开发板 x 1
  • micro-USB线缆 x 1
  • 5V/2A电源适配器  x 1
  • 4G天线 x 1
  • GPS天线 x 1

HaaS600 Kit在出厂时已经烧录了轻应用固件,开发者不需要编译烧录。

2、系统环境

2.1、设备连接

按照下图所示将开发电脑跟设备的调试/用户串口通过MicroUSB连接,连接后,将在PC设备管理器中出现两个串口,分别用于调试和用户串口输入输出。

安装USB转串口驱动

  • Windows XP/Vista
  • Windows7/8/8.1
  • Windows10
  • MacOS

2.2、系统环境

Windows

安装USB转串口驱动,在设备管理器中可以看到以下虚拟串口:

macOS

安装驱动后,在dev目录下可以看到以下虚拟串口:

Note:

1. 不同的电脑生成的串口号和名称不一样,以实际生成的为准。

2. 生成的两个串口,一个是debug串口(查看运行日志,只读),另一个是用户串口(JavaScript交互式解释器或其他用途)

2.3、开发工具

下载并了解轻应用开发工具

3、打开示例应用

3.1、下载示例应用代码包

这里通过一个简单的LED闪灯的用例来介绍。

通过附件链接下载应用代码包,代码路径 amp-examples/board/HaaS600Kit/basic/gpio

LED闪灯用例的代码目录如下所示:

app
├── app.json    # 应用与板级配置
└── app.js      # 用户代码
  • 查看设备连接状态

在命令行工具下使用该命令查看设备连接状态

./amp.exe seriallist
COM194
COM195

Note:如果返回值跟设备管理器中生成的一致,说明设备连接和命令行工具运行正常

命令行工具默认示例代码运行hello world程序,此处使用LED Blink来作为第一个轻应用示例来介绍。

使用下面的app.jsapp.json文件替换命令行工具示例代码目录下的同名文件,如下:

LED Blink app.json

参考硬件资源介绍,已经在app.json中配置好User LED灯对应的port口为33。

{"version": "1.0.0","io": {"D13": {"type": "GPIO","port": 33,"dir": "output","pull": "pulldown"}},"debugLevel": "DEBUG"
}
在app.js中的用例逻辑如下:首先根据LED灯的配置创建一个GPIO实例,然后启动定时器,周期性的通过GPIO读写接口开关LED灯,并读取开关状态。
var gpio = require('gpio');var led = gpio.open({id: 'D13'
});var vol = 0;setInterval(function() {vol = 1 - vol;led.writeValue(vol);console.log('gpio: led set value ' + vol);vol = led.readValue();console.log('gpio: led get value ' + vol);
}, 1000);

4、应用代码热更新到目标硬件

将应用代码拷贝到amp工具的目录下,然后用户可以选择任意一种热更新方式(本地或在线)下载应用代码到开发板。

4.1、本地热更新

  • 切换到下载模式

下载/运行模式切换开关(MODE)拨到DL侧,并通过电源选择开关(POWER SWITCH)断电重启,稍等片刻待AMP_STU指示灯间歇性双闪,如下图,说明设备已经进入本地下载模式

  • 通过amp工具推送应用代码到设备
./amp.exe seriallist
COM194
COM195
./amp.exe serialput ./app COM194

Note:Windows环境下,热更新命令的串口号需要大写。

  • 切换到运行模式(RUN)并复位
  • 运行效果如图:

     测试使用的LED灯对应的丝印为"USER",然后进入绿色闪烁状态(如下图所示)。

4.2、在线热更新

在已插SIM卡有网络连接的情况下,也可参考在线应用热更新推送轻应用代码到目标设备。

5、硬件资源

5.1、硬件资源介绍

5.2、硬件资源映射表

功能/接口 PIN/IO/资源映射 轻应用 port 配置
I2C0 SDA(IO50) SCL(IO49) 0
ADC0 A0

0

ADC1 A1

1

UART0 默认板级log打印 0
UART1

TXD(IO54)

RXD(IO53)

1
UART2

TXD(IO52)

RXD(IO51)

2
GPIO

IO51

IO52

IO17

IO16

IO59

IO121

IO54

IO53

IO124

IO122

IO34

IO36

IO35

IO33

IO57

IO0

IO1

D0

D1

D2

D3

D4

D5

D6

D7

D8

D9

D10

D11

D12

D13

D14

D15

D16

SPI0

MISO(IO35)

MOSI(IO36)

SCK(IO33)

0

6、功能

6.1、功能列表(部分)

  • 文件系统 FS
  • 系统信息 SYSTEM
  • 键值对存储 KV
  • 电源管理 PM
  • 硬件I/O
    • UART
    • GPIO
    • I2C
    • SPI
    • ADC
    • DAC
    • PWM
    • TIMER
    • RTC
    • WDG
  • 网络协议

    • UDP
    • TCP
    • MQTT
    • HTTP
  • 高阶功能
    • IoT  阿里云IoT平台连接组件
    • audioplayer 音频播放组件

6.2、app.json 参考示例

{"version": "1.0.0","io": {"I2C0": {"type": "I2C","port": 0,"addrWidth": 7,"freq": 400000,"mode": "master","devAddr": 72},"ADC0": {"type": "ADC","port": 0,"sampling": 12000000},"ADC1": {"type": "ADC","port": 1,"sampling": 12000000},"UART1": {"type": "UART","port": 1,"dataWidth": 8,"baudRate": 9600,"stopBits": 1,"flowControl": "cts","parity": "none"},"UART2": {"type": "UART","port": 2,"dataWidth": 8,"baudRate": 115200,"stopBits": 1,"flowControl": "disable","parity": "none"},"SPI1": {"type": "SPI","port": 1,"mode": "master","freq": 3250000},"PWM0": {"type": "PWM","port": 31,"mode": "master","freq": 3250000},"PWM1": {"type": "PWM","port": 32,"mode": "master","freq": 3250000},"D0": {"type": "GPIO","port": 51,"dir": "output","pull": "pulldown"},"D1": {"type": "GPIO","port": 52,"dir": "output","pull": "pulldown"},"D2": {"type": "GPIO","port": 17,"dir": "irq","pull": "pulldown","intMode": "both"},"D3": {"type": "GPIO","port": 16,"dir": "irq","pull": "pullup","intMode": "both"},"D4": {"type": "GPIO","port": 59,"dir": "output","pull": "pulldown"},"D5": {"type": "GPIO","port": 121,"dir": "output","pull": "pulldown"},"D6": {"type": "GPIO","port": 54,"dir": "output","pull": "pulldown"},"D7": {"type": "GPIO","port": 53,"dir": "output","pull": "pulldown"},"D8": {"type": "GPIO","port": 124,"dir": "output","pull": "pulldown"},"D9": {"type": "GPIO","port": 122,"dir": "output","pull": "pulldown"},"D10": {"type": "GPIO","port": 34,"dir": "output","pull": "pulldown"},"D11": {"type": "GPIO","port": 36,"dir": "output","pull": "pulldown"},"D12": {"type": "GPIO","port": 35,"dir": "output","pull": "pulldown"},"D13": {"type": "GPIO","port": 33,"dir": "output","pull": "pulldown"},"D14": {"type": "GPIO","port": 57,"dir": "output","pull": "pulldown"},"D15": {"type": "GPIO","port": 32,"dir": "output","pull": "pulldown"},"D16": {"type": "GPIO","port": 31,"dir": "output","pull": "pulldown"},"D17": {"type": "GPIO","port": 76,"dir": "output","pull": "pulldown"}},"debugLevel": "DEBUG","repl": "disable"
}

6.3、更多示例代码

  • Git 仓库:
    https://gitee.com/alios-things/amp-examples/tree/master/board/HaaS600Kit
  • 打包下载(需注册gitee账号):
    https://gitee.com/alios-things/amp-examples/repository/archive/master.zip

如需更多技术支持,可加入钉钉开发者群,或者关注微信公众号

更多技术与解决方案介绍,请访问阿里云AIoT首页https://iot.aliyun.com/

HaaS600 Kit的JavaScript轻应用开发配置相关推荐

  1. Javascript轻应用命令行工具

    1.前言 这里主要介绍轻应用的命令行工具,即用于轻应用的辅助开发,以简单的命令行方式运行在Mac或Windows电脑上的工具.命令行工具主要是用来推送设备应用脚本到设备端,并拥有一套完整的命令,可以完 ...

  2. HaaS学习笔记 | 最详细的HaaS Python轻应用开发快速入门教程

    [1]摘要  本教程主要讲述HaaS框架开发环境的搭建以及在ESP32开发板上进行HaaS Python轻应用开发的基本流程,结合小蜜蜂老师研制的蓝蜻蜓ESP32开发套件,通过"Hello ...

  3. 预告:Javascript全栈开发的系列文章

    自从一年前发布了Vuejs小书的电子书,也有些日子没有碰过它们了,现在因为项目的缘故,需要使用JavaScript全栈开发.所以,我得把这个全栈环境搭建起来. 说起来搭建JS全栈开发环境,设计到的东西 ...

  4. Script Lab 续:为 Officejs 开发配置 VSCode 环境

    垫场AA:深度:从 Office 365 新图标来看微软背后的设计新理念 -------------------------------------------------- 前期01:尝试:Scri ...

  5. mac开发配置手册(全)

    Mac 开发配置手册 手册内容为「如何让一部全新的 MacBook 快速完成开发环境配置」,主要面向 Web 开发者.其中的指导,在 Mavericks 和 Yosemite 上有效,其他版本系统并未 ...

  6. 微信公众号支付开发配置

    一.微信公众平台配置 登陆微信公众平台 微信支付->开发配置 1.测试白名单:把自己的微信号加上 2.测试授权目录:修改为项目所属域名,不加端口号.例如:http://d****n.g**.ne ...

  7. NCC轻量化开发数据结构总结

    NCC轻量化开发数据结构总结 ·目录 NCC轻量化开发数据结构总结 1.树形结构Tree 返回json示例 2.表单结构Form 2.1 前端Form转VO 请求json示例 2.2 后端VO转For ...

  8. 游历 JavaScript IoT 应用开发平台

    物联网(Internet of Things,简称IoT)时代的脚步声已经越来越响亮,每个程序员都希望跟上时代的步伐,不为时代浪潮所淘汰.面对IoT这个纷争初起的领域,程序员们该何去何从?本文将带领诸 ...

  9. ue编辑器c语言语法高亮文件,再见UE之VS Code初体验---实现远端Linux C开发配置,ue初体验...

    再见UE之VS Code初体验---实现远端Linux C开发配置,ue初体验 一.引言 笔者以前使用的远端开发工具为 Xshell5 + Xftp5 + Source Insight4++Uedit ...

最新文章

  1. linux文件自动删除,自动删除文件脚本(Linux shell脚本)
  2. JQuery操作checkbox、radio
  3. websocket心跳链接代码_Hyperf+RabbitMQ+WebSocket实现大屏幕消息推送
  4. 2020中级财管(押题班)
  5. 每日一题——Leetcode203 移除链表元素
  6. 从减少DNS查找来优化网站
  7. 【形状检测】基于matlab Hough变换形状检测【含Matlab源码 468期】
  8. java流程语句_java流程控制语句总结
  9. nandflash驱动详解
  10. realtek高清晰音频管理器打不开怎么办?
  11. 安装西门子博图一直重启_西门子博图重启后继续安装没完成的程序怎么去除?...
  12. OpenWrt自定义luci页面来修改配置文件
  13. Kafka+Spark Streaming+Redis实时计算整合实践
  14. 携程旅行网的盈利模式
  15. 如何在1到100的整数数组中找到缺失的数字
  16. 谷歌与Facebook的关系数据库之战
  17. Effectively Learning Spatial Indices(VLDB)
  18. H264中4x4、8x8和16x16尺寸对应场景
  19. 洛谷P1244青蛙过河
  20. 罗永浩还有家关联公司,月流水10亿,谁在抖快中“躺赚”

热门文章

  1. 求e的近似值 (15 分)
  2. python3.7 openpyxl 在excel单元格中写入数据
  3. 考研英语长难句(刘晓燕)笔记 第六课 唱着歌去考研——英语的特殊结构
  4. PyCharm中import显示灰色解决方案
  5. ☀️光天化日学C语言☀️(31)- break 关键字 | 当断则断!
  6. java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊...
  7. 【已解决】No module named “win32com“ win32com 无法导入
  8. Windows中文账户名修改为英文
  9. HTML快速入门-01
  10. 牛客每日练习----一个背包问题,判断奥运年,沃老师学生的成绩