0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Ai-WB2-12F使用安信可中間件接入愛星云,遠(yuǎn)程點(diǎn)個(gè)燈(2)

AIoT行業(yè)洞察 ? 來源: AIoT行業(yè)洞察 ? 作者: AIoT行業(yè)洞察 ? 2024-01-08 17:18 ? 次閱讀

上次已經(jīng)給大家講了如何搭建中間件SDK(Ai-WB2-12F使用安信可中間件接入愛星云,遠(yuǎn)程點(diǎn)個(gè)燈——第一篇)。經(jīng)過上次的帖子,小伙伴們想必已經(jīng)完成一個(gè)新項(xiàng)目的添加,并使用WB2編譯成功,今天講如何移植愛星云的源碼。

在正式開始之前,先介紹一下設(shè)備上云的流程。

wKgZomWbvdiAJBTFAAGHAe-gqKA576.png

VScode 啟動(dòng)

一、連接Wi-Fi

第一步是設(shè)備進(jìn)入配網(wǎng),在配網(wǎng)之前需要能夠正式連接到網(wǎng)絡(luò)。

先把項(xiàng)目中的“h1”和“h2”兩個(gè)文件夾刪除。

新建文件夾為“wifista”(文件夾名字根據(jù)自己喜好定義就行)

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

連接Wi-Fi 主要寫三個(gè)函數(shù):

Wi-Fi 初始化函數(shù)

Wi-Fi 連接函數(shù)

Wi-Fi 斷開函數(shù)

Wi-Fi 初始化函數(shù):staWiFiInit()

wKgaomWbvdiAWXWyAABXvETbSew688.png

Wi-Fi 連接函數(shù)函數(shù):staWiFiConnect(char* ssid,char* password)

wKgZomWbvdmAcWgYAAEJz7w0Q04390.png

Wi-Fi 斷開函數(shù):staWiFiDisconnect()

wKgaomWbvdmAXtWiAABG9piqV78527.png

之后在Main.c 中調(diào)用之后就能實(shí)現(xiàn)連接Wi-Fi。

二、LED控制

RGB燈是開發(fā)板上唯一能過作為指示的器件,所以使用RGB作為網(wǎng)絡(luò)指示燈是非常好的選擇。設(shè)置以下狀態(tài):

網(wǎng)絡(luò)未連接或者斷開:綠燈快閃

網(wǎng)絡(luò)成功連接或已連接:隔2s 閃爍一次

正在連接WiFi:1s 間隔慢閃

2.1創(chuàng)建源碼文件

直接創(chuàng)建名為"LED" 的文件夾,然后在里面創(chuàng)建.c和.h 文件名字自定,這里用的是 led_dev.c 和led_dev.h。并且寫幾行基礎(chǔ)的代碼。

led_dev.c

wKgZomWbvdqAAW1PAABNQc-I1k8548.png

led_dev.h

wKgaomWbvdqANAH8AABRWQVui9U273.png

2.2編寫功能函數(shù)

后面也會(huì)使用這個(gè)庫寫受控?zé)舻暮瘮?shù),暫且寫網(wǎng)絡(luò)燈的函數(shù)吧,一共有四個(gè):

網(wǎng)絡(luò)燈初始化函數(shù),Ai-WB2-12F 的藍(lán)色燈在IO3,并且創(chuàng)建閃爍任務(wù)

快閃狀態(tài) 間隔100ms

隔2s 閃爍兩次狀態(tài)

500ms 間隔慢閃狀態(tài)

網(wǎng)絡(luò)燈初始化函數(shù) devLedNetWorkdInit(void)

wKgZomWbvduATwAsAACS6GYVuT8729.png

這里其實(shí)只有每種狀態(tài)指示延時(shí)時(shí)間上的區(qū)別而已,所以只需要在任務(wù)當(dāng)中改變延時(shí)時(shí)間就行了。

網(wǎng)絡(luò)燈狀態(tài)處理任務(wù),led_dev_run_task(void* arg):

wKgaomWbvduAJdYeAAFQe7JalIE470.png

狀態(tài)更新函數(shù) devLedNetWorkdChangeState():

wKgZomWbvdyAXeNdAABJwd4KAKU706.png

2.3 調(diào)用狀態(tài)更新函數(shù)

狀態(tài)更新函數(shù)只需要在Wi-Fi 回調(diào)中的各個(gè)事件中調(diào)用即可,效果如下:

wKgaomWbvd2AcTfTABtaid3VCFc185.gif

三、按鍵讀取

Ai-WB2-12F 開發(fā)板要進(jìn)入配網(wǎng),需要有個(gè)控制方式,開發(fā)板上的IO8按鍵正好可以使用,讀取IO8按鍵,高電平長按2s 后進(jìn)入配網(wǎng)。

按鍵初始化函數(shù)configButtomInit():

wKgZomWbvd2AQBcWAACGASLmwUs612.png

長按識(shí)別任務(wù):

wKgaomWbvd6AVMlXAAD2nyQojSg049.png

其他進(jìn)入配網(wǎng)的方式也可以自己去實(shí)現(xiàn),只需要能夠進(jìn)入配網(wǎng)狀態(tài)就行。

四、愛星云配網(wǎng)移植

按照慣例,先新建一個(gè)文件夾用來存放愛星云的移植文檔,本貼使用“aiio_cloud”作為文件名,可以根據(jù)自己喜好創(chuàng)建,之后關(guān)于愛星云的源碼都會(huì)放在該文件夾中。

在該文件夾中新建一個(gè).h 用來聲明愛星云的配置,比如產(chǎn)品信息,三元組等,這里命名為“cloud_config.h"。

愛星云的配網(wǎng)有兩種:BLE 和AP配網(wǎng),本貼主要介紹BLE 配網(wǎng),BLE 配網(wǎng)主要有兩個(gè)函數(shù):

BLE 配網(wǎng)啟動(dòng)函數(shù)

BLE 配網(wǎng)停止函數(shù)

BLE 配網(wǎng)啟動(dòng)函數(shù)bleConfigStart()

wKgZomWbveCAUAC8AAB_1FrZy1o668.png

BLE 配網(wǎng)回調(diào)函數(shù):

wKgaomWbveGAbiRmAAHvf4JIZvs907.png

在回調(diào)函數(shù)當(dāng)中,獲取到了SSID、PASSWORD和MQTT 服務(wù)器地址以及其他的連接參數(shù),打印出來之后,直接調(diào)用Wi-Fi連接,就能實(shí)現(xiàn)配網(wǎng)。

在Wi-Fi連接成功之后,停止調(diào)用配網(wǎng)函數(shù)就行。

說明:

“此時(shí)因?yàn)闆]有連接愛星云,所以使用App 配網(wǎng)時(shí)會(huì)出現(xiàn)添加失敗的提示,但是實(shí)際上Wi-Fi是連接成功的,只是沒有連接愛星云而已。”

五、其他內(nèi)容

剩下的就是愛星云真正接入的部分,因?yàn)樾枰檀蠹冶容^多的東西,長話短說,直接做了一份基本連接的源碼,大家根據(jù)基本連接的源碼快速實(shí)現(xiàn)愛星云的連接。剩下的內(nèi)容直接在源碼README 中介紹,大家可點(diǎn)擊查閱。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5584

    瀏覽量

    103060
  • 模組
    +關(guān)注

    關(guān)注

    6

    文章

    1620

    瀏覽量

    31208
  • 安信可
    +關(guān)注

    關(guān)注

    0

    文章

    187

    瀏覽量

    4391
收藏 0人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    AI語音開發(fā)板AiPi-PalChatV1教程:硬件設(shè)計(jì)參考

    AiPi-PalChatV1是一款接入了小智AI智能體的微型語音交互開發(fā)板,專為輕量級(jí)智能語音場景設(shè)計(jì)。 基于
    的頭像 發(fā)表于 05-28 09:21 ?154次閱讀
    <b class='flag-5'>AI</b>語音開發(fā)板AiPi-PalChatV1教程:硬件設(shè)計(jì)參考

    AI語音開發(fā)板AiPi-PalChatV1教程:二次開發(fā)

    AiPi-PalChatV1 是一款接入了 小智AI智能體 的微型語音交互開發(fā)板,專為輕量級(jí)智能語音場景設(shè)計(jì)。 基于
    的頭像 發(fā)表于 05-21 14:26 ?171次閱讀
    <b class='flag-5'>AI</b>語音開發(fā)板AiPi-PalChatV1教程:二次開發(fā)

    AI語音開發(fā)板AiPi-PalChatV1,使用指南來啦

    AiPi-PalChatV1 是一款接入了 小智AI智能體 的微型語音交互開發(fā)板,專為輕量級(jí)智能語音場景設(shè)計(jì)。 基于
    的頭像 發(fā)表于 04-30 15:50 ?351次閱讀
    <b class='flag-5'>AI</b>語音開發(fā)板AiPi-PalChatV1,使用指南來啦

    Ai-WB2-01S做一個(gè)可用網(wǎng)頁控制的簡易

    以下作品由社區(qū)用戶 KevinLi制作 01簡介 使用2個(gè)不同功率的Led通過GPIO的PWM通道+三極管控制亮度 ●供電:5V或3V ●控制:用網(wǎng)頁http單向控制,這是一個(gè)
    的頭像 發(fā)表于 03-26 13:59 ?296次閱讀
    用<b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>Ai-WB2</b>-01S做一個(gè)可用網(wǎng)頁控制的簡易<b class='flag-5'>燈</b>

    低價(jià)不貴!WiFi+BLE模組Ai-WB2系列

    Ai-WB2系列模組集成Wi-Fi&BLE于一體,搭載BL602芯片作為核心處理器,支持Wi-Fi 802.11b/g/n協(xié)議和BLE 5.0協(xié)議。
    的頭像 發(fā)表于 03-06 08:49 ?426次閱讀
    低價(jià)不貴!<b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b>WiFi+BLE模組<b class='flag-5'>Ai-WB2</b>系列

    2024年AI開發(fā)者中間件工具生態(tài)全面總結(jié)

    進(jìn)行多方位的總結(jié)和梳理。 在第二章《TOP 101-2024 大模型觀點(diǎn)》中,生成式 AI 開發(fā)者莫爾索總結(jié)了 2024 年 AI 開發(fā)者中間件工具生態(tài)。 ? 全文如下: AI 開發(fā)者
    的頭像 發(fā)表于 02-14 09:45 ?566次閱讀

    Ai-WB2+Modbus 485 RTU 遠(yuǎn)程控制

    以下作品由社區(qū)用戶 http://ckdsx.cn制作 目錄 1.什么是Modbus, RS485? 1.1RS485 VS RS232 1.2RS485,RS232兩種協(xié)議之間的主要
    的頭像 發(fā)表于 12-27 10:52 ?671次閱讀
    <b class='flag-5'>Ai-WB2</b>+Modbus 485 RTU <b class='flag-5'>遠(yuǎn)程</b>控制

    Ai-WB2系列的優(yōu)勢是?一秒讀懂!

    ) 集成度 (內(nèi)置功能、接口類型等) 功耗與續(xù)航 、 尺寸與外觀 、 成本 等多個(gè)因素。 Ai-WB2系列模組集成Wi-Fi&藍(lán)牙于一體,搭載BL602芯片作為核心處理器,支持W
    的頭像 發(fā)表于 12-13 18:16 ?725次閱讀

    Ai-WB2開發(fā)板做智能家居全彩LED小夜燈

    業(yè)余菜狗制作 大家是不是經(jīng)??吹礁鞣N彩色的小 bingbing的五顏六色很吸引人 今天用WB2開發(fā)板做了一個(gè)能加入HA的全彩LED小夜燈 來看看主要的教程 連接WiFi 先對(duì)Ai-Thinker-WB2/applicatio
    的頭像 發(fā)表于 11-13 14:03 ?828次閱讀
    用<b class='flag-5'>Ai-WB2</b>開發(fā)板做智能家居全彩LED小夜燈

    中間件全球數(shù)據(jù)實(shí)時(shí)同步利器,華為云 EventGrid 事件流重磅發(fā)布

    【摘要】 華為云 EventGrid 事件流(簡稱 EG)作為易用、穩(wěn)定、高效的數(shù)據(jù)同步管道連接不同的系統(tǒng)與服務(wù),支持中間件數(shù)據(jù)在線實(shí)時(shí)同步。事件流圍繞云中間件,降低了中間件之間數(shù)據(jù)流通的復(fù)雜性
    的頭像 發(fā)表于 10-31 18:39 ?516次閱讀
    <b class='flag-5'>中間件</b>全球數(shù)據(jù)實(shí)時(shí)同步利器,華為云 EventGrid 事件流重磅發(fā)布

    外設(shè)移植 Ai-WB2+FPM383C指紋

    以下作品由社區(qū)用戶 WT_0213 制作 關(guān)于 FPM383C 指紋模塊 在之前的帖子介紹的已經(jīng)比較詳細(xì)了可以看下這個(gè)帖子。 【外設(shè)移植】FPM383C 指紋模塊 +Ai
    的頭像 發(fā)表于 10-29 14:54 ?618次閱讀
    外設(shè)移植 <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>Ai-WB2</b>+FPM383C指紋

    外設(shè)移植 Ai-WB2-32S開發(fā)板+TM1637 NTP時(shí)鐘

    以下作品由社區(qū)用戶 King6688制作 產(chǎn)品說明 Ai-WB2-32S 是由深圳市
    的頭像 發(fā)表于 09-24 14:29 ?662次閱讀
    外設(shè)移植 <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>Ai-WB2</b>-32S開發(fā)板+TM1637 NTP時(shí)鐘

    超??!5款迷你封裝WiFi+BLE模塊

    Ai-WB2-01N/01F/M1/M1-I/05W,這5款模組是推出的Ai-WB2系列中
    的頭像 發(fā)表于 07-30 10:23 ?771次閱讀
    超??!<b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b>5款迷你封裝WiFi+BLE模塊

    Ai-WB2系列模組/開發(fā)板連接AWS亞馬遜云方法

    一、軟硬件的準(zhǔn)備二、亞馬遜云物模型建立三、連接亞馬遜云demo獲取以及配置四、硬件接線五、燒錄軟件的使用六、連接亞馬遜云七、聯(lián)系我們前言Ai-WB2系列模組是科技開發(fā)的Wi-Fi
    的頭像 發(fā)表于 07-05 08:23 ?782次閱讀
    <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>Ai-WB2</b>系列模組/開發(fā)板連接AWS亞馬遜云方法

    北京靈奧科技基于亞馬遜云科技打造大模型中間件

    助力企業(yè)加速應(yīng)用生成式AI 北京2024年6月27日?/美通社/ --?北京靈奧科技基于亞馬遜云科技的生成式AI、數(shù)據(jù)庫和容器等云服務(wù),打造大模型中間件,將基礎(chǔ)模型優(yōu)勢和企業(yè)業(yè)務(wù)數(shù)據(jù)無縫結(jié)合,打通
    的頭像 發(fā)表于 06-27 21:21 ?822次閱讀

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品