基于W800 SDK实战智能生活平台接入|学习笔记

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 快速学习基于W800 SDK实战智能生活平台接入

开发者学堂课程【平头哥物联网入门WI-FI方案开发实践基于W800 SDK实战智能生活平台接入】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/766/detail/13480


基于W800 SDK实战智能生活平台接入


内容介绍

一、开发板介绍

二、环境搭建

三、上手演示


一、开发板介绍

image.png

1、专为 IOT 打造芯片

我们可以看到这张图中的中间的蓝色的开发版,就是我们的 W800 的开发版的版面,很好看,蓝色的背景上面有各种颜色的接口,那中间有一个二维码,这个二维码呢,它其实是一个开发板的 Mac 地址信息。同学们如果可以扫描它的话,可以拿到一个二维码信息。

那这个芯片,它使用的是一个连胜得的 W800芯片。那这款芯片呢?它是一个专门为 a lot 打造的芯片,可以适用于多种 Alo T应用场景,而且它的功能也非常强大,首先,它使用了32位的平头哥玄铁804处理器。最高可以支持240兆赫兹的频率。

那这个频率足以应对绝大多数的 a lot 应用场景。此外,它还是一款 WiFi 加蓝牙的双模 soc ,看到 WiFi 呢,就基本上支持了所有所有的主流 WiFi 协议,包括 H1802.11B11G ,但是他不支持1AC 和1AX,因为它目前只支持2.4G。

蓝牙也同时支持 BET。跟双模BEL最多支持到4.27。此外,我们也知道LG设备目前对安全已经越来越上升到一个高度,我们所以也内置的一个T,就是可信执行环境的一个安全引擎。

通过这个安全引擎,我们将我们的空间,为了安全空间和不安全空间,可以在安全空间内做一些更可靠的事情。此外,我们也包括了 SKS 的安全加密算法,帮助我们的程序算法能够更加安全地运行在这块板上。

2、丰富的板级资源

我们包括一路I2C、一路SPI、5路 UART、5路 PWM、还有最多18个 GPIO 接口,以及1路I2S 等等其他常见的接口。此外,我们也看到了,这个开发板上左右侧,有兼容接口,可以非常方便地将这块开发板跟生态来兼容和对接。

我们可以看到这个板子的左上方有三个板载按键,分别是两个启动按键,还有一个自定义按键的用户可以通过这两个启动按键来控制它进行不同的启动模式的制定。按键可以在代码中根据用户的需要去平和。就在板子的中间右边偏上的位置有两个micro USB 接口,那这两个 USB 接口,分别是用于日志的收发串口和at 指令窗口。

最后,我们在板子的中间偏下的位置有一个白色的三色 RGB LED 灯,它通过三路PWM脉冲宽度调制信号来对灯进行控制,我们可以通过开发对这个灯进行常见的呼吸灯、跑马灯等效果演示。关于它的具体开发介绍,在我们后面的分享中有。


二、环境搭建

1、环境搭建

我们针对不同的开发用户,我们提供了 Linux,Windows 的开发环境。Windows 我们是使用CDK平头哥坚持开发工具来进行开发的,Linux 是我们在 YOC 我们操作系统的基础上开发了一个针对 Linux开发环境的一个开发工具。

我们要搭建环境,自然少不了我们的 W800 的开发板套件,这个套件可以在我们的 OCC 的芯片开放社区,或者我们平头哥的淘宝店铺来买到。

最后一个,就是我们的刚刚说到了 OCC 芯片开放社区,在这个开放社区,我们包含了所有的开发资料、文档、原理图以及代码,那么大家在开发过程中如果遇到任何问题,我们都建议可以先去这个芯片开放社区的 W800 版块儿来进行资料搜索,与大家交流,我们相信大部分题都可以在这里得到解决。

2、CDK开发环境介绍

Windows 环境下我们针对 CDK ,总结了四个特点。

(1)图形化的开发界面

在 Windows 下,我们当然用一个图形化最友好的方式来让客户更快的上手,所以说我们第一个特点就是它便于上手,此外,我们还提供了图形化的参数配置方式。

不管是开发过程中、调试过程中所有的配置都是通过图形来配置,可以让大家在图形化界面中更高的、更高效地去开发和配置。之后是我们提供了三种的风格界面,从高分辨率、高饱和度、较低饱和度,我们提供了深蓝色、浅蓝色还有浅灰色三种界面,大家可以根据自己的开发习惯来随意切换开发界面。

(2)强大的调试工具

第二点是我们 CDK 可以提成了非常强大的调试工具,首先是我们集成了可视化的调试界面,在这个界面中,大家可以非常直观的看到我们程序的。

运行状况,我们资源的分配情况,以及当前某个变量某个内存区的地址的值。我们还可以支持软硬件断点,然后并且支持单步调试,绝大多数情况下都帮助客户解决开发过程中遇到的各种问题。

此外,我们还提供了一些 provider 以及 tracer 中工具,帮助大家更好地了解我们在系统运行。运行中一些资源性能分配情况以及提供对AR cos 操作系统的事件和任务的追踪呢。最后是我们集成了非常多的动态静态分析工具,包括动态的功耗分析,包括静态的代码检查分析。

(3)端云一体

第三点是我们有一个端于一体。这个端自然就是指的我们这个W800开发板。那云就是我们刚刚介绍到我们的 OCC 芯片开放社区,我们的所有的代码开发文档,以及用户的这个交互都是在我们的云上。

但是,我们把端和云结合在一起,通过我们的 CDK 可以非常方便地去获得云端的所有资源。此外,我们还可以去通过 CDK 快速对接云端的文档、云端的视频,还有用户的问答等各种开发信息跟开发资料。最后一点,我们用户不仅仅是开发,不仅是一个代码的索取者,那也可能是一个代码的贡献者。当你如果想把你的代码贡献出来,让大家使用的时候,你也可以通过 CDK 自助式的上传你的代码以及发布出去。

(4)组件超市

我们将我们的组件跟我们的上层解决方案,以及我们下层的超系统及药物,把它分成一个一个独立的模块儿。这样可以提升我们的代码负盈利。

此外,我们可以非常灵活地根据自己的需求来单独的上传,下载任意一个组件,就可以把它理解成是一个搭积木,当我需要这个功能,就把这个积木搭上来,如果不需要这个功能,我就把它拿掉,完全不影响我其他模块。最后一点,是我们的组件还包含了版本信息。不同的版本可能适用于不同的功能,或者是一个产品,您可以通过版本来选择你对应的组件以及你对应的产品,所以说而且并且支持向下兼容,一个老的产品依然可以用到我们这一个老的组件上。

3、CDK演示

首先,我们先打开 OCC 开放社区。在这里,我们从集成开发环境中去进入到 CDK 的界面,在这个界面下我们可以看到所有的一些介绍,包括概述,关键特性,技术特点,我们看到我们支持非常多的技术特点,回到页面的上方,点击下载按钮,可以进入到一个下载页面,在页面中我们选择最新版本的 CDK 工具,点击右边下载即可安装和下载。

安装完成过程中,我们打开 CDK ,点击上面的欢迎界面,进入到我们的一个欢迎菜单,然后我们点击新建工程,在搜索栏中,输入W800搜索。那这个就是我们刚刚介绍的一个端云一体的开发方式。我们搜索到达之后点击创建工程。

我们就可以将这个工程下载到本地。创建工程时,可以输入本地的工程名字,这里取名为 demo 以及一个工作空间,我们取名为 demo workspace 。

那么点击 OK 后就可以开始下载了,下载会出现一个进度条,那进度条长满之后,下载就完成了。我们跳过下载过程看到下载完成后,我们左边可以看到所有的工程文件,双击文件名,就能够打开这个工程的一个编辑主界面,然后右边的这个导航栏就是函数来,我们可以通过点击函数名快速跳转,我们右键点击工程名可以开始编译,然后在我们下方的输出窗口中,可以看到我们所有的编辑日志,我们大概需要一会儿时间,建议等编译完成之后,我们等点击菜单栏的烧录按钮,我们就可以开始烧录烧录,大概需要一到两分钟。

4、组建商店演示

首先我们点击 CDK ,然后进入我们一个组件商店的一个管理界面。在这个管理界面中,我们能看到我们所有的支持的组件。那我们现在只搜索标 Nash 这个组件,然后我们在塑造结果中点击安装就可以开始下载了。

我们可以看到这里有一个版本信息,可以选择不同的版本,下载完成之后,这个组件就会被下载到我们本地工程中,我们就能在工程中看到他呢。现在重新加载一下,确保它能够被我们组建工程师接到我们,点击 cabbage 我们就能看到了。在我们的产品中多了一个要依赖军组建,就说明下载成功.

当然 CDK 能支持的功能远不止这么多,大家在使用的过程中如果遇到任何问题,可以点击上面菜单栏的 help ,能够可以看到一个非常非常详细的一个 CDK 的一个开发文档,如果你还是不明白,欢迎你登录我们的 OCC 芯片开发社区,跟我们大家进行交流.

5、YoCTools 介绍

介绍一下使用 Linux 的一个开发环境,该如何去使用,这里我们就要提到针对Linux一个开发非常好的工具,叫 YoCTools 。那我们也总结出了四个非常重要的特点,第一个特点它是一个Linux的命令行,它是专门针对我们 OCRPOS 系统开发出来一个秘密航电系统,做非常多的适配和优化,非常适合我们在Linux下对我们的art环境进行。

此外,它是一个一站式的代码管理方式,我们通过 YoCTools 可以同时支持代码下载、代码编译、代码商务、代码上传等所有常见的功能,只要一个工具,帮助你从零到一开发整个解决方案。

第三点,是我们是一个金融的方式,我们的代码虽然可以通过 output 来下载。但同时我们的每一个组件,每一个方案也是一个单独的定仓库的用户,可以根据这些需要,通过 get 命令来对这个版本进行控制。

所以非常灵活,你可以选择,如果你不习惯,你依然可以用 get 常见的 get 命令来控制它,大大的提升用户开发的灵活性。

那最后一个,其实跟刚刚的 CDK 也很像,就是依然有一个组件超市的概念,我们每一个组件都可以单独的上传和下载,可以根据用户的需要灵活选择我是否要某个组件。那这个就是一个关于 YoCTools 的一个基本介绍。

6、YocTools 演示

我们在一个 Linux 开发命令下,首先创建一个 W800 SDK ,我们取一个名字,进入之后用wall sticker来初始化,初始化之后,我们本地会生成一个配置文件,先去编辑配置文件,要配置它的下载账号信息。这是一个默认的信息,我们先删掉它,然后把我们自己的账号拷贝过去。

考完之后我们就可以下载,只要一个命令,我们就可以把我们的解决方案组件以及卡板信息全部下达了。

本地很快,因为代码大小不大,很快可以下载成功。下载成功之后,我们可以看到目录结构很完整了,进入到我们的解决方案目录,在我们的目录下,点击 make就可以开始编译,编译过程根据你的 CPU 性能,大概需要两到三分钟,很快就会完成了。

等他编译完成之后,非常方便又是一个命令,立马就可以开始烧录。由于烧录时间会比较久,可能需要一到两分钟,这里不耽误大家时间,就快速播放,快速烧录完成。

就是一个介绍,可以看到非常简单,两条命令,一条命令下载,一条命令烧录,可以省掉大家非常多的时间,高效的来专注的开发过程,而不用在环境搭建上浪费了太多时间,所以我们相信 YocTools 真的是特别有助于我们的 Linux 的开发者。


三、上手演示

image.png

1、W800 实物连接

我们来给介绍大家介绍一下 W800 的实物连接,这张图左边是一个使用过程中的一个真实的连接情况,上面的 W800 的开发版就是我们在刚刚介绍的那块板子下面的一个 think light ,就是平头哥推出的一个专门针对于内置平衡颗芯片内核的 soc 的一个烧录器,通过这个烧录器可以方便的将固件烧录到我们卡上。

可以看到烧录器左边上边有一根 USB 线那这个 michael 线它其实连接的是串口可以通过一端连接到我们的板子上另外一端连到我们电脑上就可以跟我们的开发板进行串口的日志交互以及命令行交互非常方便高效,调试那下面这个 CK Link Lite 也是一端接到电脑的 USB ,那另外一个,通过 CK Link Lit 三根线来连接到开发版,就可以进行调试为了帮助大家更好地去连接,我们右边又给出了一个连接示意图。

可以看到,上面是 W800 的开发板,分别有三个端口一个是时钟端口,一个是数据端。还有就是执行力端口,这三个端口其实在板子的丝印图上都标记出来了,下面就是我们的三link 的端口,包括也是一个接地端口,一个数据端口,还有一个时钟端口

那这三个端口其实在 sip 的这个上面的板子上能看到端口分别代表什么意思。只要按照这个图的形式将三根线连好上面那个绿灯会被点亮,这时候就可以通过对另一个开发板进行烧录和调试。这个就是一个简单的 W800 的一个实物连接图。

2、上手演示

首先,介绍一个串口的操作演示。我们上线后,连接好串口,就能够看到串口启动日志,然后命令行可以输入命令来进行交互。如果输入 help 指令,可以看到所有当前支持的命令。

比方说,可以通过 ping 来测试网络是否畅通,我们也可以通过 free 命令来查看我们当前的系统内存,还得通过命令来查看线程状态。当然这里还有很多命令我们就不一一介绍了

那这个是一个开发实物演示关于这个 APP,我们打开 APP ,搜索蓝牙设备等,它会搜索过程中。搜索完成后,找到了我们这个设备,然后点击添加,开始建立蓝牙连接很快尽力就会成功,连接成功之后就进入我们一个 demo 的一个显示页面,我们这里是一个灯泡的开关 demo ,我们可以通过开和关来打开灯泡。

那我们也可以通过调节亮度来我们调节之后,我们左边的开关灯泡就实时地被改变了。好的,那这个只是一个关于灯泡的,但它的实际功能远不止这么简单,可以通过 APP 进行更加复杂的逻辑设计以及代码编写,可以实现包括灯泡,包括空调、电风扇等所有物联网设备的开发和使用。

我们这里,因为这是一个简单的实际过程中,大家可以参考阿里云的云智能互联网来了解更多的信息

今天的分享就到这里结束了,希望通过我的这次分享能够帮助大家零成本,轻松高效便捷的上市我们的W800开发板,真正助力平头哥1520计划实现一天上手,五天出原型,20天产品落地。


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
7月前
|
开发工具 Android开发
应用研发平台EMAS的用户反馈SDK确实使用了WebView
应用研发平台EMAS的用户反馈SDK确实使用了WebView
84 6
|
算法 IDE 开发工具
火爆全网开源额温枪同平台之华大HC32L136 SDK开发入门
火爆全网开源额温枪同平台之华大HC32L136 SDK开发入门
276 1
|
机器学习/深度学习 人工智能 PHP
百度AI开发平台图像增强与特效API-SDK接口PHP实战记录
百度AI开发平台图像增强与特效API-SDK接口PHP实战记录
164 0
百度AI开发平台图像增强与特效API-SDK接口PHP实战记录
|
1月前
|
IDE 开发工具
鸿蒙Flutter实战:11-使用 Flutter SDK 3.22.0
本文介绍了如何使用 Flutter SDK 3.22.0 搭建鸿蒙开发环境。首先安装 Flutter SDK 3.22.0,并通过 FVM 管理多个版本。接着配置项目,使用 `fvm use custom_3.22.0` 设置自定义 SDK 版本。添加鸿蒙平台支持并进行项目签名,最后通过 `fvm flutter run` 运行项目。详细步骤包括安装、项目配置、签名和运行,确保开发环境顺利搭建。
144 7
鸿蒙Flutter实战:11-使用 Flutter SDK 3.22.0
|
4月前
|
编解码 开发工具 C#
[大牛直播SDK]Windows平台RTMP直播推送模块功能设计
大牛直播SDK采用全自研框架,具备高度可扩展性与自适应算法,显著降低延迟并提高采集编码效率。SDK以模块化设计,支持RTMP推流及多种音视频编码格式(如AAC、SPEEX、H.264、H.265),并能与播放器SDK组合实现丰富功能,包括流媒体转发、内置RTSP服务等。提供了详尽的参数配置选项,支持多摄像头、屏幕采集与水印叠加,并兼容Windows 7及以上操作系统。该SDK以C++/C#双接口形式提供,集成简便,同时包含调试与发布版本库,便于开发者快速上手。此外,支持断网重连、实时预览及多种编码前后的数据对接需求。
|
5月前
|
机器学习/深度学习 人工智能 Java
人工智能平台PAI使用问题之Java SDK支持哪些版本
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
|
7月前
|
存储 安全 机器人
【LLM】智能学生顾问构建技术学习(Lyrz SDK + OpenAI API )
【5月更文挑战第13天】智能学生顾问构建技术学习(Lyrz SDK + OpenAI API )
110 1
|
数据处理 开发工具 C#
Baumer工业相机堡盟工业相机如何在C#平台使用BGAPI SDK实现相机资源的正确释放(C#)
Baumer工业相机堡盟工业相机如何在C#平台使用BGAPI SDK实现相机资源的正确释放(C#)
148 0
|
7月前
|
Java 开发工具
阿里云灵积平台Java SDK调用教程
开通阿里云灵积服务并创建API-KEY,添加Java依赖`dashscope-sdk-java`版本2.11.0。示例代码展示如何使用SDK进行多模态对话,调用`MultiModalConversation`进行交互,并打印结果。测试结果显示输出对一张图片的描述。参考链接提供通义千问VL快速入门指南。
1309 0
|
开发工具
Queen智能美化特效SDK需要高级美颜、常见美型、美体这样是属于按版本买,还是按客户端计费?
Queen智能美化特效SDK需要高级美颜、常见美型、美体这样是属于按版本买,还是按客户端计费?
69 1

热门文章

最新文章