摘要:相比于haas600,haas团队推出的haas510价格更加便宜,做到了百元以内。2.0版本比1.0版本布局更加合理,USB、用户串口和调试串口采用了不同的硬件接头,不会再发生误插的危险。阿里云官方今天用一个页面给出了专业的使用说明,但是初学者对有些概念还是不容易理解。本文就用图文结合的方式,带您一步步让您的JavaScript轻应用顺利跑起来。

硬件:haas510 v2.0(丝印HaaS 510-AS),USB串口模块,配套的转接线

软件:win7x64,amp,vscode,sscom

本文参考文档连接:

https://help.aliyun.com/document_detail/277467.html?spm=a2c4g.11186623.6.661.1e441a1fNiMqxd

1.硬件接线

如下图所示,用一个USB串口通过套件中提供的转接线进行连接。

简化版的接线图,将MAIN UART与USB串口相连。MAIN UART在推送JavaScript代码时,用作推送接口,推送完成后,可以在程序中当做PORT2接口,也就是用户接口,当做普通的串口使用。

这样接线有2个目的,第一是向开发板供电,这个板子供电电压是5V,核心模组是移远的EC600S-CN,耗电量非常小。所以可以直接使用USB串口的5V进行供电。

haas510开发板上的提供的都是XH2.54的标准连接器,四个角都设计了螺孔,所以可以直接安装在您的设备外壳中充当DTU模块。

2.下载amp工具

amp的意思是AliOS Things Mini Program (AMP)。

字面大概意思就是阿里云物联网mini(轻)应用,专门用于阿里云物联网硬件的软件。

它的作用是将JavaScript程序推送到haas硬件设备中,这些设备有很多,包括haas510。

首先下载amp工具,通过帮助文档找到windows版 AMP工具。然后点击下载。

请注意,AMP工具也一直在更新,推荐使用最新的,否则可能会导致程序烧录不上的问题。

下载的文件是一个压缩包,接下来我们需要解压。

解压后有两个文件夹,这与之前的版本又所区别,以前的版本只有一个APP文件夹。

这个工具怎么样使用呢?答案是使用windows命令行工具。

假如我们将这个工具放在用户文件夹下

C:\Users\Administrator\amp-win

那么使用这个工具的步骤就是

使用cmd命令打开window命令行,进入到您存放amp工具的文件夹,注意,amp工具在dist文件夹下。要想调用这个工具,就需要cd 逐层进入dist文件夹。我们可以通过dir命令来观察是否真正进入到了dist文件夹。真正的dist文件目录应该是下图所示。

接下来就该进行推送操作了。

3.确保硬件工作正常

将电路板接入PC的USB接口,启动串口助理,复位开发板。

假如开发板接线连接正常,那么串口助理将显示RDY   amp shakehand begin。也就是开发板准备完毕,可以通过amp工具进行握手了。

4.推送JavaScript程序

haas系列硬件一个突出的特点是支持多种开发方式,比如可以使用c语言,从底层开发。

haas一个最明显的特征是支持JavaScript和Python两种语言,通过内置了这两种语言的引擎,使得haas硬件能够通过极少量的代码来开发物联网应用。这将大大提高开发人员的工作效率。

阿里云haas团队将这种开发方式称为“轻应用”。

当我们成功下载了amp工具,也连接好了硬件之后,下面开始推送“轻应用”程序。

在成功cd到dist文件夹之后使用命令:

amp seriallist

可以看到当前的串口列表,在我的电脑上,它是COM52。那么显示的COM1和COM3是什么?它是系统自带的串口设备,这里不用管。初学者怎么样判断到底我们是哪一个串口呢?

判断串口是哪一个的方法是打开设备管理器的界面,拔掉USB串口,再插上,观察到底哪个串口是新增的。

知道自己的USB串口是哪个之后,可以使用如下的命令,在windows命令行工具中推送轻应用程序。

amp serialput app com52

输入完命令之后回车,会返回一些信息,其中最关键的信息是“Please reboot board now”,意思是说,请复位haas510开发板。不复位是无法进行推送的。

按下红框圈中的复位键(在510第一版中,这个按键是没有任何标记的)。

然后amp工具就开始推送,并以简易进度条形式显示进度。

假如我们使用的是刚刚下载的 amp默认的代码。这个推送速度是非常快的。

amp工具自带的代码是这样的:

console.log('hello amp!');
console.log('amp version is: ' + system.version());
console.log('amp platform is: ' + system.platform());
console.log('amp heapTotal is: ' + system.memory().heapTotal);
console.log('amp heapUsed is: ' + system.memory().heapUsed);

推送完成

5.观察运行效果

amp工具自带的这个js程序内容很简单,就是发送几个字符串信息,比如hello amp,还有系统版本号等等信息。

console.log('hello amp!');
console.log('amp version is: ' + system.version());
console.log('amp platform is: ' + system.platform());
console.log('amp heapTotal is: ' + system.memory().heapTotal);
console.log('amp heapUsed is: ' + system.memory().heapUsed);

这些信息通过什么来观察?

是DEBUG UART,也就是调试串口。

怎么连接?

如下图所示:

实际接线如下图所示,使用套件中的3Pin转接线进行转接。然后单独接一根5V的杜邦线供电。

复位一下开发板,然后通过串口助理观察。本文使用sscom串口助理。从一大堆的调试信息中,我们可以找到这个开机只运行一次的js程序输出信息。

有没有觉得查找这些被埋没的信息特别麻烦。没关系,咱们可以修改一下。

6.定时发送信息

我们把程序修改一下,通过VSCODE修改,也可以通过VSCODE自带的terminal替代windows自带的命令行工具进行推送。

源代码如下,可以一键复制。

console.log('hello amp!');
console.log('amp version is: ' + system.version());
console.log('amp platform is: ' + system.platform());
console.log('amp heapTotal is: ' + system.memory().heapTotal);
console.log('amp heapUsed is: ' + system.memory().heapUsed);setInterval(function () {console.log('Hello World, time: ' + new Date());}, 1000);

运行效果如下图所示,这样我们就不用费劲在大段的调试信息中寻找几行调试输出了。

console.log在调试js程序时是一个非常重要的方法,在代码行数比较多的程序中,可以在关键的位置添加这个方法,用来观察过程数据是否正确,从而可以帮助修改优化程序。

初学者入门阿里云haas510开板式DTU(2.0版本)--510-AS相关推荐

  1. 初学者入门阿里云Haas100开发板基本步骤

    2020年9月阿里云云栖大会上发布的haas100开发板非常棒,其设计的初衷是简化开发步骤,做"积木式"的软硬件.但是在跑第一个程序的过程中,还是遇到了很多问题.本文就从零开始,一 ...

  2. redis版本_全球首发|阿里云正式推出云数据库Redis6.0版本

    Redis 6.0更多精彩详情 2020年6月23日,阿里云正式推出云数据库Redis 6.0版本.Redis 6.0版本为Redis开源社区于5月2日发布的全新版本,包含多项重大功能更新和大幅度的性 ...

  3. 全球首发|阿里云正式推出云数据库Redis6.0版本

    Redis 6.0更多精彩详情 2020年6月23日,阿里云正式推出云数据库Redis 6.0版本.Redis 6.0版本为Redis开源社区于5月2日发布的全新版本,包含多项重大功能更新和大幅度的性 ...

  4. 阿里云HaaS510入门文章合集

    摘要:HaaS510开发板的好处是使用移动网络通信,不用像HaaS100一样配网,因此可以用在缺乏wifi网络支持的场合,例如野外.HaaS510还有一个巨大的优势,就是可以使用JavaScript或 ...

  5. 学生成长计划领取资格考试 - 云计算及云服务器入门阿里云

    学生成长计划领取资格考试 - 云计算及云服务器入门|阿里云 1.计算机诞生于( D)年代 A. 2000年代 B. 1980年代 C. 1990年代 D. 1960年代 2.阿里云云服务器ECS的英文 ...

  6. 入门阿里云物联网平台,使用阿里主推的ALink协议让自己的硬件上云

    先声明,我是通过借鉴几位大神的博客实现的: MQTT报文计算器:http://www.norra.cn:9091/ 关于阿里的一些事:https://yq.aliyun.com/teams/250/t ...

  7. 远程连接不上阿里云(Ubuntu20.04)Mysql8.0

    解决远程连接不上阿里云(Ubuntu20.04)Mysql8.0的问题 问题: 在本地远程连接不到服务器数据库 解决方法: 1 进入mysql mysql -uroot -p 2 使用mysql数据库 ...

  8. 阿里云Ubuton开MCJava服务器_每小时不到1元,弹性计算服务按流量缴费

    MC我的世界java版开服教程 1G带不动,内存请选择2G以上.esc-t5,2核10%性能也不行,只是个服务端cpu就跑满了.10% CPU性能基准 | 阿里云突发性能实例规格族t6配置性能详解 阿 ...

  9. 入门阿里云Dataphin(1)

    Dataphin入门 Dataphin简介 了解Dataphin Dataphin简介 Dataphin是阿里云研发的一款以数仓规划.数据智能研发.数据资产管理融为一体,面向大数据建设.管理.应用诉求 ...

最新文章

  1. Java Day02-1
  2. SLAM中的卡尔曼滤波:究竟滤了谁?
  3. 机器学习基础-主成分分析PCA-16
  4. 三级pc技术_第十九周PC、笔电、数码周边新品汇总:AMD英特尔激战正酣
  5. 从零实现一个3D目标检测算法(2):点云数据预处理
  6. 用到的lib、dll整理
  7. 【程序员面试宝典】第五章 程序设计基本概念
  8. Visio绘制架构图(一)
  9. No buffer space available终极解决办法
  10. python实现局域网文件互传_Python+pyftpdlib实现局域网文件互传
  11. 【AI视野·今日CV 计算机视觉论文速览 第158期】Mon, 23 Sep 2019
  12. 万人连麦的幕后技术详解
  13. 新手小白安装Ubuntu18.04后的操作指南
  14. 计算机组成原理 存储器
  15. 计算机二进制运算符,二进制布尔运算
  16. BUUCTF 藏藏藏
  17. H.265之三 -帧内预测(3)
  18. 计算机专业毕业设计致谢,那些笑哭的毕业论文致谢
  19. Nessus介绍与安装
  20. Mycat数据库中间件(史上最详细)

热门文章

  1. vue 之 ele动态删除dom节点
  2. HITCTF2018-web全题解
  3. Merged region A1 must contain 2 or more cells
  4. __init__() takes 1 positional argument but 5 positional arguments (and 1 keyword-only argument) were
  5. 荣耀20android版本,荣耀法国:荣耀V20/20系列可正常升级Android Q
  6. 批处理CMD显示彩色文字
  7. 用搜狗输入法原样输出10的若干次方
  8. xshell进入管理员模式
  9. R语言:第一部分 入门
  10. 如何去写一手好SQL ?