0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Ai-WB2-12F使用安信可中间件接入爱星云,远程点个灯(2)

AIoT行业洞察 来源: AIoT行业洞察 作者: AIoT行业洞察 2024-01-08 17:18 次阅读

上次已经给大家讲了如何搭建中间件SDK(Ai-WB2-12F使用安信可中间件接入爱星云,远程点个灯——第一篇)。经过上次的帖子,小伙伴们想必已经完成一个新项目的添加,并使用WB2编译成功,今天讲如何移植爱星云的源码

在正式开始之前,先介绍一下设备上云的流程。

wKgZomWbvdiAJBTFAAGHAe-gqKA576.png

VScode 启动

一、连接Wi-Fi

第一步是设备进入配网,在配网之前需要能够正式连接到网络

先把项目中的“h1”和“h2”两个文件夹删除。

新建文件夹为“wifista”(文件夹名字根据自己喜好定义就行)

在wifista 新建连接Wi-Fi的.c 和.h 文件,名字自定义

连接Wi-Fi 主要写三个函数:

Wi-Fi 初始化函数

Wi-Fi 连接函数

Wi-Fi 断开函数

Wi-Fi 初始化函数:staWiFiInit()

wKgaomWbvdiAWXWyAABXvETbSew688.png

Wi-Fi 连接函数函数:staWiFiConnect(char* ssid,char* password)

wKgZomWbvdmAcWgYAAEJz7w0Q04390.png

Wi-Fi 断开函数:staWiFiDisconnect()

wKgaomWbvdmAXtWiAABG9piqV78527.png

之后在Main.c 中调用之后就能实现连接Wi-Fi。

二、LED控制

RGB灯是开发板上唯一能过作为指示的器件,所以使用RGB作为网络指示灯是非常好的选择。设置以下状态:

网络未连接或者断开:绿灯快闪

网络成功连接或已连接:隔2s 闪烁一次

正在连接WiFi:1s 间隔慢闪

2.1创建源码文件

直接创建名为"LED" 的文件夹,然后在里面创建.c和.h 文件名字自定,这里用的是 led_dev.c 和led_dev.h。并且写几行基础的代码。

led_dev.c

wKgZomWbvdqAAW1PAABNQc-I1k8548.png

led_dev.h

wKgaomWbvdqANAH8AABRWQVui9U273.png

2.2编写功能函数

后面也会使用这个库写受控灯的函数,暂且写网络灯的函数吧,一共有四个:

网络灯初始化函数,Ai-WB2-12F 的蓝色灯在IO3,并且创建闪烁任务

快闪状态 间隔100ms

隔2s 闪烁两次状态

500ms 间隔慢闪状态

网络灯初始化函数 devLedNetWorkdInit(void)

wKgZomWbvduATwAsAACS6GYVuT8729.png

这里其实只有每种状态指示延时时间上的区别而已,所以只需要在任务当中改变延时时间就行了。

网络灯状态处理任务,led_dev_run_task(void* arg):

wKgaomWbvduAJdYeAAFQe7JalIE470.png

状态更新函数 devLedNetWorkdChangeState():

wKgZomWbvdyAXeNdAABJwd4KAKU706.png

2.3 调用状态更新函数

状态更新函数只需要在Wi-Fi 回调中的各个事件中调用即可,效果如下:

wKgaomWbvd2AcTfTABtaid3VCFc185.gif

三、按键读取

Ai-WB2-12F 开发板要进入配网,需要有个控制方式,开发板上的IO8按键正好可以使用,读取IO8按键,高电平长按2s 后进入配网。

按键初始化函数configButtomInit():

wKgZomWbvd2AQBcWAACGASLmwUs612.png

长按识别任务:

wKgaomWbvd6AVMlXAAD2nyQojSg049.png

其他进入配网的方式也可以自己去实现,只需要能够进入配网状态就行。

四、爱星云配网移植

按照惯例,先新建一个文件夹用来存放爱星云的移植文档,本贴使用“aiio_cloud”作为文件名,可以根据自己喜好创建,之后关于爱星云的源码都会放在该文件夹中。

在该文件夹中新建一个.h 用来声明爱星云的配置,比如产品信息,三元组等,这里命名为“cloud_config.h"。

爱星云的配网有两种:BLE 和AP配网,本贴主要介绍BLE 配网,BLE 配网主要有两个函数:

BLE 配网启动函数

BLE 配网停止函数

BLE 配网启动函数bleConfigStart()

wKgZomWbveCAUAC8AAB_1FrZy1o668.png

BLE 配网回调函数:

wKgaomWbveGAbiRmAAHvf4JIZvs907.png

在回调函数当中,获取到了SSID、PASSWORD和MQTT 服务器地址以及其他的连接参数,打印出来之后,直接调用Wi-Fi连接,就能实现配网。

在Wi-Fi连接成功之后,停止调用配网函数就行。

说明:

“此时因为没有连接爱星云,所以使用App 配网时会出现添加失败的提示,但是实际上Wi-Fi是连接成功的,只是没有连接爱星云而已。”

五、其他内容

剩下的就是爱星云真正接入的部分,因为需要教大家比较多的东西,长话短说,直接做了一份基本连接的源码,大家根据基本连接的源码快速实现爱星云的连接。剩下的内容直接在源码README 中介绍,大家可点击查阅。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发板
    +关注

    关注

    25

    文章

    4883

    浏览量

    97009
  • 模组
    +关注

    关注

    6

    文章

    1406

    浏览量

    30205
  • 安信可
    +关注

    关注

    0

    文章

    140

    浏览量

    3934
收藏 人收藏

    评论

    相关推荐

    外设移植 Ai-WB2+FPM383C指纹

    以下作品由社区用户 WT_0213 制作 关于 FPM383C 指纹模块 在之前的帖子介绍的已经比较详细了可以看下这个帖子。 【外设移植】FPM383C 指纹模块 +Ai
    的头像 发表于 10-29 14:54 90次阅读
    外设移植 <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>Ai-WB2</b>+FPM383C指纹

    外设移植 Ai-WB2-32S开发板+TM1637 NTP时钟

    以下作品由社区用户 King6688制作 产品说明 Ai-WB2-32S 是由深圳市
    的头像 发表于 09-24 14:29 209次阅读
    外设移植 <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>Ai-WB2</b>-32S开发板+TM1637 NTP时钟

    超小!5款迷你封装WiFi+BLE模块

    Ai-WB2-01N/01F/M1/M1-I/05W,这5款模组是推出的Ai-WB2系列中
    的头像 发表于 07-30 10:23 309次阅读
    超小!<b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b>5款迷你封装WiFi+BLE模块

    Ai-WB2系列模组/开发板连接AWS亚马逊云方法

    一、软硬件的准备二、亚马逊云物模型建立三、连接亚马逊云demo获取以及配置四、硬件接线五、烧录软件的使用六、连接亚马逊云七、联系我们前言Ai-WB2系列模组是科技开发的Wi-Fi
    的头像 发表于 07-05 08:23 347次阅读
    <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>Ai-WB2</b>系列模组/开发板连接AWS亚马逊云方法

    北京灵奥科技基于亚马逊云科技打造大模型中间件

    助力企业加速应用生成式AI 北京2024年6月27日 /美通社/ -- 北京灵奥科技基于亚马逊云科技的生成式AI、数据库和容器等云服务,打造大模型中间件,将基础模型优势和企业业务数据无缝结合,打通
    的头像 发表于 06-27 21:21 508次阅读

    Ai-WB2使用HomeAssistant-C库接入HomeAssistant

    Ai-M61/62只用来连接MQTT太浪费资源了,Ai-WB2更具性价比!
    的头像 发表于 06-15 14:00 477次阅读
    <b class='flag-5'>Ai-WB2</b>使用HomeAssistant-C库<b class='flag-5'>接入</b>HomeAssistant

    一文掌握中间件技术基础

    中间件(MiddleWare)是提供系统软件和应用软件之间连接的软件,以便于软件各部件之间的沟通,特别是应用软件对于系统软件的集中的逻辑,在现代信息技术应用框架如Web服务、面向服务的体系结构等中应用比较广泛。
    的头像 发表于 04-23 14:45 382次阅读
    一文掌握<b class='flag-5'>中间件</b>技术基础

    Ai-WB2系列模组/开发板连接AWS亚马逊云方法

    文章目录 一、软硬件的准备 二、亚马逊云物模型建立 三、连接亚马逊云demo获取以及配置 四、硬件接线 五、烧录软件的使用 六、连接亚马逊云 七、联系我们 前言 Ai-WB2系列模组是
    的头像 发表于 04-16 15:53 404次阅读
    <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>Ai-WB2</b>系列模组/开发板连接AWS亚马逊云方法

    中间件厂商中创股份成功上市

    近日,国内领先的基础软件中间件产品与服务提供商——山东中创软件商用中间件股份有限公司(以下简称“中创股份”)在上海证券交易所科创板上市,股票代码为“688695”。这一里程碑事件标志着中创股份在基础软件中间件领域的实力和影响力得
    的头像 发表于 03-14 15:25 806次阅读

    基础软件中间件产品与服务提供商中创股份成功上市

    山东中创软件商用中间件股份有限公司(股票简称:中创股份,股票代码:688695)今日在上海证券交易所科创板成功上市,开启了公司发展的新篇章。作为中间件技术标准的主要推动者和制定者,中创股份在中间件
    的头像 发表于 03-13 14:21 626次阅读

    国产中间件提供商中创股份上市

    近日,国内中间件领域的领军企业——山东中创软件商用中间件股份有限公司(简称“中创股份”)在科创板成功上市,这一重要事件标志着中创股份在中间件行业深耕多年后,迎来了崭新的发展阶段。
    的头像 发表于 03-13 13:49 544次阅读

    Ai-WB2系列模组/开发板连接AWS亚马逊云

    文章目录 一、软硬件的准备 二、亚马逊云物模型建立 三、连接亚马逊云demo获取以及配置 四、硬件接线 五、烧录软件的使用 六、连接亚马逊云 七、联系我们 前言 Ai-WB2系列模组是
    的头像 发表于 01-16 14:28 626次阅读
    <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>Ai-WB2</b>系列模组/开发板连接AWS亚马逊云

    如何移植星云的源码

    上次已经给大家讲了如何搭建中间件SDK(Ai-WB2-12F使用中间件
    的头像 发表于 01-07 11:10 558次阅读
    如何移植<b class='flag-5'>爱</b><b class='flag-5'>星云</b>的源码

    Ai-WB2-12F使用中间件接入星云远程点灯

    想必大家都看了很多关于星云的帖子,做嵌入式的同学肯定有这么个问题:星云很好,很厉害,可是我该怎么通过WB2或者M61/M62模组
    的头像 发表于 01-02 10:57 345次阅读
    <b class='flag-5'>Ai-WB2-12F</b>使用<b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>中间件</b><b class='flag-5'>接入</b><b class='flag-5'>爱</b><b class='flag-5'>星云</b>,<b class='flag-5'>远程</b>点灯

    oracle数据库中间件有哪些

    、可靠和安全的数据管理和应用开发环境。以下是Oracle数据库中间件的详细介绍。 Oracle Database Oracle Database是Oracle公司的核心产品,是一种关系型数据库管理系统。它提供了高度伸缩的数据存储和管理功能,能够处理大量的数据和高并发的访
    的头像 发表于 12-05 16:17 1753次阅读