初学者入门阿里云haas510开板式DTU(2.0版本)--510-AS
摘要:相比于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相关推荐
- 初学者入门阿里云Haas100开发板基本步骤
2020年9月阿里云云栖大会上发布的haas100开发板非常棒,其设计的初衷是简化开发步骤,做"积木式"的软硬件.但是在跑第一个程序的过程中,还是遇到了很多问题.本文就从零开始,一 ...
- redis版本_全球首发|阿里云正式推出云数据库Redis6.0版本
Redis 6.0更多精彩详情 2020年6月23日,阿里云正式推出云数据库Redis 6.0版本.Redis 6.0版本为Redis开源社区于5月2日发布的全新版本,包含多项重大功能更新和大幅度的性 ...
- 全球首发|阿里云正式推出云数据库Redis6.0版本
Redis 6.0更多精彩详情 2020年6月23日,阿里云正式推出云数据库Redis 6.0版本.Redis 6.0版本为Redis开源社区于5月2日发布的全新版本,包含多项重大功能更新和大幅度的性 ...
- 阿里云HaaS510入门文章合集
摘要:HaaS510开发板的好处是使用移动网络通信,不用像HaaS100一样配网,因此可以用在缺乏wifi网络支持的场合,例如野外.HaaS510还有一个巨大的优势,就是可以使用JavaScript或 ...
- 学生成长计划领取资格考试 - 云计算及云服务器入门阿里云
学生成长计划领取资格考试 - 云计算及云服务器入门|阿里云 1.计算机诞生于( D)年代 A. 2000年代 B. 1980年代 C. 1990年代 D. 1960年代 2.阿里云云服务器ECS的英文 ...
- 入门阿里云物联网平台,使用阿里主推的ALink协议让自己的硬件上云
先声明,我是通过借鉴几位大神的博客实现的: MQTT报文计算器:http://www.norra.cn:9091/ 关于阿里的一些事:https://yq.aliyun.com/teams/250/t ...
- 远程连接不上阿里云(Ubuntu20.04)Mysql8.0
解决远程连接不上阿里云(Ubuntu20.04)Mysql8.0的问题 问题: 在本地远程连接不到服务器数据库 解决方法: 1 进入mysql mysql -uroot -p 2 使用mysql数据库 ...
- 阿里云Ubuton开MCJava服务器_每小时不到1元,弹性计算服务按流量缴费
MC我的世界java版开服教程 1G带不动,内存请选择2G以上.esc-t5,2核10%性能也不行,只是个服务端cpu就跑满了.10% CPU性能基准 | 阿里云突发性能实例规格族t6配置性能详解 阿 ...
- 入门阿里云Dataphin(1)
Dataphin入门 Dataphin简介 了解Dataphin Dataphin简介 Dataphin是阿里云研发的一款以数仓规划.数据智能研发.数据资产管理融为一体,面向大数据建设.管理.应用诉求 ...
最新文章
- Java Day02-1
- SLAM中的卡尔曼滤波:究竟滤了谁?
- 机器学习基础-主成分分析PCA-16
- 三级pc技术_第十九周PC、笔电、数码周边新品汇总:AMD英特尔激战正酣
- 从零实现一个3D目标检测算法(2):点云数据预处理
- 用到的lib、dll整理
- 【程序员面试宝典】第五章 程序设计基本概念
- Visio绘制架构图(一)
- No buffer space available终极解决办法
- python实现局域网文件互传_Python+pyftpdlib实现局域网文件互传
- 【AI视野·今日CV 计算机视觉论文速览 第158期】Mon, 23 Sep 2019
- 万人连麦的幕后技术详解
- 新手小白安装Ubuntu18.04后的操作指南
- 计算机组成原理 存储器
- 计算机二进制运算符,二进制布尔运算
- BUUCTF 藏藏藏
- H.265之三 -帧内预测(3)
- 计算机专业毕业设计致谢,那些笑哭的毕业论文致谢
- Nessus介绍与安装
- Mycat数据库中间件(史上最详细)
热门文章
- vue 之 ele动态删除dom节点
- HITCTF2018-web全题解
- Merged region A1 must contain 2 or more cells
- __init__() takes 1 positional argument but 5 positional arguments (and 1 keyword-only argument) were
- 荣耀20android版本,荣耀法国:荣耀V20/20系列可正常升级Android Q
- 批处理CMD显示彩色文字
- 用搜狗输入法原样输出10的若干次方
- xshell进入管理员模式
- R语言:第一部分 入门
- 如何去写一手好SQL ?