热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:HaaS轻应用(JavaScript)快速开始@HaaS610

篇首语:本文由编程笔记#小编为大家整理,主要介绍了HaaS轻应用(JavaScript)快速开始@HaaS610相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了HaaS轻应用(Javascript)快速开始 @ HaaS610相关的知识,希望对你有一定的参考价值。







1、开发板简介

HaaS610 开发板是由阿里云、广和通、旗点科技联合推出的一款基于 fibocom 4G Cat.1 产品 L610 openCPU 模组物联网开发板。具备 Arduino 接口, 可以支配 Arduino 接口配件板,搭配 GPS 定位、WiFi、六轴定位传感器、温度传感器、8MB Flash、麦克 风、喇叭、LCD 显示屏、摄像头、2Kb EEPROM、4*4 矩阵按键组使用。

HaaS610 开发板具有以下特点:


  • 基于fibocom 4G Cat1 产品 L610 openCPU 模组,无需MCU,减少硬件成本。
  • 内置RTOS,提供操作系统能力。

  • 内置MQTT、HTTP、mbedtls 等开源库,方便应用开发。
  • 丰富的io资源、支持LCD屏幕、摄像头等。

  • 集成阿里云轻应用框架,可运行在轻量级嵌入式设备上的Javascript应用。
  • 集成阿里云iot sdk包,可轻松接入阿里云物联网平台。


2、硬件资源介绍


3、开发环境搭建

L610仅支持在windows环境下进行开发。


3.1、连接设备

通过 MicroUSB 线连接 PC 和模组的USB下载口,将拨动开关拨到 V50_USB 丝印侧,通过USB为开发板供电。


3.2、驱动安装

L610模组 USB 驱动

📎FIBOCOM L610 USB Driver_Windows.zip

L610模组正常上电开机 USB 口会虚拟出7个串口


  • Port0 口: 发 AT 命令及外置 PPP 拨号;Port1 口: Diag 口,主要用于 NvEditor 以及发 DIAG 指令用;
  • Port2 口: MOS 数据输出,用于场测协议栈数据输出;

  • Port3 口: 抓 ARMTRACER log,通过 AT^TRACECTRL=0,1,2 设置
  • Port4 口:当 debug 跳线调的不支持 debug 口时, 则需要用此 USB 口抓 AP log, 该口无法抓 dump log。

  • Port5 口:可用于发 AT 命令;
  • Port6 口:可用于客户输出自定义 log;


3.3、日志抓取

HaaS610 usb转串口驱动


  • Windows XP/Vista
  • Windows7/8/8.1

  • Windows10
  • MacOS

连接HaaS610Kit 的 USB2 ,注意不是USB下载口,打开我的电脑——管理——设备管理器,应该两个串口,分别是用于开发板调试的 Debug 串口和 UART1用户串口。一般情况下 Enhanced接口是 Debug 串口,Standard接口为 UART1 用户串口。

日志接收工具

📎cooltools-win32_custom_P3.R2.0.0005.7z

下载软件并解压,双击 coolwatcher_debughost.exe 打开日志工具 CoolWatcher。

lastcomport 填入我们刚才查看的设备管理器中 Enhanced COM 对应的COM号,例如我的电脑是 52,单击OK。

顺利的话应该可以看到左下角有 COM OPEN OK的提示。

选择Activate Tracer

日志抓取的开始、暂停、清除按键

填写要过滤的关键字,HaaS610Kit 的关键字是 AOS,然后按下回车键即可看到我们 AOS 相关的日志。


3.4、热更新

📎amp-clitool.zip

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

本地更新

运行命令行工具

windows系统 进入 amp-clitool 工具下的 amp-clitool\\dist\\amp-win 目录,右键选择 powershell

推送脚本到设备



./amp.exe serialput ./app COMXX -m duktape -b 115200 
/* serialput 是选择本地热更新 */
/* app 是 Javascript应用脚本目录 */
/* COMXX 是日志串口号,此处填写自己的串口号 */
/* -m duktape HaaS610 选择JS Engine 为 duktape */
/* -b 115200  HaaS610 串口波特率为 115200 */


执行推送命令的时候需要关闭日志串口


  • 复位开发板
  • 等待脚本传输完成,打开日志串口观察脚本运行情况


4、示例代码

app.js中的用例逻辑如下:

首先根据uart3的配置创建对应的uart实例,然后启动定时器,周期性的通过uart3 发送字符串。 同时 uart3 把接收到数据通过日志打印,再发送出来,如果收到 'exit' 字符退出本次uart收发测试。



var uart = require('uart');
var msgbuf2 = [0x41, 0x42, 0x43, 0x44, 0x61, 0x62, 0x63, 0x64, 0x2B, 0X2B];
function ArrayToString(fileData){
  var dataString = "";
  for (var i = 0; i     dataString += String.fromCharCode(fileData[i]);
  }
  return dataString;
}
var serial3 = uart.open({
    id: 'serial3'
});
var cnt = 100;
var intervalHandled = setInterval(function(){
    cnt--;
         if(cnt <&#61; 0){
        clearInterval(intervalHandled);
    }
    serial3.write(msgbuf2);
},2000);
serial3.on(&#39;data&#39;, function(data) {
    console.log(data);
    console.log(ArrayToString(data));
    serial3.write(data);
    if (ArrayToString(data) &#61;&#61;&#61; "exit") {
      console.log(&#39;uart: test finish&#39;)
      serial3.close();
    }
  });
console.log(&#39;uart: test start&#39;)


uart 对应的 port口在 app.json 如下。



{
    "version": "1.0.0",
    "io": {
      "serial1":{
        "type":"UART",
        "port":0,
        "dataWidth":8,
        "baudRate":115200,
        "stopBits":1,
        "flowControl":"disable",
        "parity":"none"
      },
      "serial2":{
        "type":"UART",
        "port":1,
        "dataWidth":8,
        "baudRate":115200,
        "stopBits":1,
        "flowControl":"disable",
        "parity":"none"
      },
      "serial3":{
        "type":"UART",
        "port":2,
        "dataWidth":8,
        "baudRate":9600,
        "stopBits":1,
        "flowControl":"disable",
        "parity":"none"
      }
    },
    "debugLevel": "DEBUG",
    "repl": "enable"
}


开发者支持

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



更多技术与解决方案介绍&#xff0c;请访问HaaS官方网站https://haas.iot.aliyun.com。





推荐阅读
  • PL2303HXD电路图(USB转UART)介绍及应用
    本文介绍了PL2303HXD电路图(USB转UART)的特性和应用,该电路图可以实现RS232和USB信号的转换,方便嵌入到手持设备中。PL2303HXD作为USB/RS232双向转换器,可以将USB数据转换为RS232信息流格式发送给外设,并将RS232外设的数据转换为USB数据格式传送回主机。通过利用USB块传输模式和自动流量控制,PL2303HXD能够实现更高的数据传输吞吐量比传统的UART端口。 ... [详细]
  • scrcpy通过adb调试的方式来将手机屏幕投到电脑上,并可以通过电脑控制您的Android设备。它可以通过USB连接,也可以通过Wifi连接(类似于隔空投屏),而且不需要任何ro ... [详细]
  • 加工|机床_工业4.0 资产管理壳学习笔记应用场景与架构
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了工业4.0资产管理壳学习笔记-应用场景与架构相关的知识,希望对你有一定的参考价值。        资产管理壳ÿ ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 如何搭建Java开发环境并开发WinCE项目
    本文介绍了如何搭建Java开发环境并开发WinCE项目,包括搭建开发环境的步骤和获取SDK的几种方式。同时还解答了一些关于WinCE开发的常见问题。通过阅读本文,您将了解如何使用Java进行嵌入式开发,并能够顺利开发WinCE应用程序。 ... [详细]
  • intellij idea的安装与使用(保姆级教程)
    intellijidea的安装与使用(保姆级教程)IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(gi ... [详细]
  • 本文介绍了在MFC下利用C++和MFC的特性动态创建窗口的方法,包括继承现有的MFC类并加以改造、插入工具栏和状态栏对象的声明等。同时还提到了窗口销毁的处理方法。本文详细介绍了实现方法并给出了相关注意事项。 ... [详细]
  • STM32与FPGA的对比及学习建议
    本文对比了野火STM32F103指南针板和Xilinx的PYNQ-Z2板(ZYNQ-7020),介绍了野火STM32F103指南针板的学习资料和讲解视频的详细程度,建议初学者学习野火的资料。同时,介绍了STM32开发所用的Keil程序和C指针的重要性。对于ZYNQ-7020的开发,提到了其自带的Linux、Ubuntu18.4系统以及使用SD卡烧入镜像的方法。 ... [详细]
  • Windows7企业版怎样存储安全新功能详解
    本文介绍了电脑公司发布的GHOST WIN7 SP1 X64 通用特别版 V2019.12,软件大小为5.71 GB,支持简体中文,属于国产软件,免费使用。文章还提到了用户评分和软件分类为Win7系统,运行环境为Windows。同时,文章还介绍了平台检测结果,无插件,通过了360、腾讯、金山和瑞星的检测。此外,文章还提到了本地下载文件大小为5.71 GB,需要先下载高速下载器才能进行高速下载。最后,文章详细解释了Windows7企业版的存储安全新功能。 ... [详细]
  • 本文介绍了在Ubuntu 11.10 x64环境下安装Android开发环境的步骤,并提供了解决常见问题的方法。其中包括安装Eclipse的ADT插件、解决缺少GEF插件的问题以及解决无法找到'userdata.img'文件的问题。此外,还提供了相关插件和系统镜像的下载链接。 ... [详细]
  • 原文地址http://balau82.wordpress.com/2010/02/28/hello-world-for-bare-metal-arm-using-qemu/最开始时 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了Arction客户案例——LightningChart被集成到BodeAnalyzerSuite中!相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 前言整个信息技术的很多领域,都是相互关联的,IT也是一样,他们有着他们的规律,在其中摩尔定律,安迪——比尔定律,反摩尔定律组成了计算机行业的发展规律摩尔定律科技行业流传着一个 ... [详细]
author-avatar
up61
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有