国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

零基礎開發小安派-Eyes-S1 進階篇 ——通過屏幕輸入連接 Wi-Fi

AIoT行業洞察 ? 來源:AIoT行業洞察 ? 作者:AIoT行業洞察 ? 2025-01-16 09:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

AiPi-Eyes-S1是安信可開源團隊專門為Ai-M61-32S設計的一款開發板,支持WiFi6、BLE5.3。所搭載的Ai-M61-32S 模組具有豐富的外設接口,具體包括 DVP、MJPEG、Dispaly、AudioCodec、USB2.0、SDU、以太網 (EMAC)、SD/MMC(SDH)、SPI、UART、I2C、I2S、PWM、GPDAC、GPADC、ACOMP 和 GPIO 等。

AiPi-Eyes-S1集成了SPI屏幕接口,DVP攝像頭接口,外置ES8388音頻編解碼芯片以及預留TF卡座,并且引出USB接口,可接入USB攝像頭。

從零開始學習小安派:

1、零基礎開發小安派-Eyes-S1【入門篇】——初識小安派-Eyes-S1

2、零基礎開發小安派-Eyes-S1【入門篇】——安裝VMware與Ubuntu

3、入門篇:零基礎開發小安派-Eyes-S1——新建工程并燒錄調試

4、零基礎開發小安派-Eyes-S1入門篇——Win下SSH連接Linux

5、零基礎開發小安派-Eyes-S1【入門篇】——Samba共享文件夾

6、零基礎開發小安派-Eyes-S1【入門篇】——工程文件架構

7、零基礎開發小安派-Eyes-S1【外設篇】——GPIO 輸入輸出

8、零基礎開發小安派-Eyes-S1【外設篇】——GPIO中斷編程

9、零基礎開發小安派-Eyes-S1【外設篇】——PWM

10、零基礎開發小安派-Eyes-S1【外設篇】——UART

11、零基礎開發小安派-Eyes-S1【外設篇】——I2C

12、零基礎開發小安派-Eyes-S1【外設篇】——ADC

13、零基礎開發小安派-Eyes-S1【外設篇】——I2S

14、零基礎開發小安派-Eyes-S1【外設篇】——TIMER

15、零基礎開發小安派-Eyes-S1【外設篇】——DAC

16、零基礎開發小安派-Eyes-S1【進階篇】——初識 LVGL 并搭建最小工程

17、功德+1,用小安派-Eyes-S1做一個電子木魚

本篇教大家通過屏幕輸入連接 Wi-Fi 。網絡協議道阻且長,得慢慢啃,先從簡簡單單連接 Wi-Fi 開始,當然在這基礎上得實現通過屏幕輸入連接,同時將Wi-Fi 連接后的消息保存在Flash中,以保存Wi-Fi名稱和密碼。

01UI 設計

打開 GuiGuider,依舊是熟悉的新建工程,不熟悉的伙伴可以看之前的教程復習一下。這里設計兩個界面,第一個界面為一個日歷(擺飾)。

wKgZPGeIZTuAcudRAACkoCE6ppE932.jpg

第二個界面才是重頭戲,連接 Wi-Fi 的界面。這里添加了幾個控件,重點的幾個控件:

led(改變顏色來顯示Wi-Fi的狀態)

buttun(按下按鈕獲取輸入框內容同時連接 Wi-Fi)

兩個輸入框(分別輸入ssid 和 password)

wKgZO2eIZTuAdUFHAACPT9P6Mw0826.jpg

wKgZPGeIZTyAYtSSAACVSn8Zits547.jpg

wKgZO2eIZTyAfqL4AACkNFS6km8242.jpg

wKgZPGeIZT2AdizKAACTUos6cRM704.jpg

界面UI設計成功后,為界面添加兩個事件,分別為左劃和右劃來切換不同的界面。這里點擊界面2(Wi-Fi 連接界面)——添加事件——選擇 GestureLeft(左劃),在通用這里勾選 load screen——加載界面,選擇界面1(日歷界面)。

wKgZO2eIZT2AHPeQAACwHuyO8-k481.jpg

保存后同樣的步驟,點擊界面1(日歷界面)——添加事件,選擇 GestureRight(右劃),同樣的加載界面選擇界面 2(Wi-Fi 連接界面)。

wKgZPGeIZT6AYQ66AACihjlmpWg033.jpg

在界面 2(Wi-Fi 連接界面)的屬性設置這里,選擇顯示鍵盤,這樣UI設計就基本完成了。

wKgZO2eIZT6AQxrtAACdx1HZSdk038.jpg

設計完成后記得模擬看一下效果。

wKgZPGeIZT6AQqs_AAAsgJU-l2w142.jpg

02文件移植和編程

新建一個工程,命名為 WiFi_Connect。添加的 components 組件(功能作為模塊分類),添加 config(一些系統配置),main(主函數)。主要在 components 中添加,記得將所有鏈接下的文件夾添加到 CMakeLitst.txt 中

commponents 中添加了部分庫,包括 easyflash,UI(設計的 UI,屏幕與觸摸的配置),Voice(8388 的驅動庫),Wi-Fi(一個WiFi連接的庫,在 Project_base 中可以copy 過來)。準備好需要的驅動后,配置 CMakeLitst.txt(可以參考以下截圖中的方式)。

wKgZO2eIZT-AU5MOAAEj7GLstpY139.jpg

wKgZPGeIZT-AKjYYAAAzdqaBl-w490.jpg

在本程序中主要的流程就是通過圖片上的按鈕來實現其它的 Wi-Fi 連接,所以需要在按鈕中添加事件獲取輸入框的內容,同時將這些內容作為參數傳輸給連接Wi-Fi的函數。

由于LVGL全是依靠一個lv_ui的結構體來保存成員,其定義在 WiFi_Connect/components/UI/generated/gui_guider.h 下,在main 中會定義一個guider_ui的全局變量,

該.h 中也是通過extern來聲明該結構體已在外部定義,可以在 lv_ui 中添加 ssid 和 password 數組來暫存我們的 Wi-Fi 名稱和密碼。

wKgZO2eIZT-AXegoAAEYv74V4Ls907.jpg

在 WiFi_Connect/components/UI/generated/events_init.c 中注冊一個按鈕事件,這里面可以看到左劃右劃切換界面的事件,區域中顯示的是界面 2,對應Wi-Fi 連接界面,在文件中注冊一個事件,對應按鈕btn_1,可以參考筆者寫的方式,可以看到 case 中對應的枚舉類型是 CLICKED(點擊)。

這里使用防御性編程,先判斷獲取框中的內容是否為空,添加 if 和 else if 語句,隨后清空緩存ssid和passsword數組,將輸入框中的內容通過 strcpy 輸入到緩存中。這里調用Wi-Fi庫中已經編寫好的wifi_connect 連接Wi-Fi。記得將 wifi_event.h 添加到頭文件中。注意這里面的 ui 全是一個結構體指針,指向 guider_ui 這個全局的結構體。注意完成后將編寫的函數在頁面 2 的初始化中,使用 lv_obj_add_event_cb 添加事件。

wKgZPGeIZUCACho3AAEFtWxXtJM836.jpg

wKgZO2eIZUCAEMTQAAFYygnrZcI430.jpg

在 Wi-Fi 庫中可以看到 wifi_start_firmware_task,該任務已經配置好了Wi-Fi,而 wifi_event_handler 對應了Wi-Fi的各種狀態,這里對應著底層的Wi-Fi狀態機,有掃描、斷連、獲取 IP 等等狀態,小伙伴可以自行查閱。

在wifi_connect 函數中,這里面也有一些Wi-Fi的連接狀態,都是基于這個 sta_ConnectStatus來判斷。在連接失敗時修改“LED”燈狀態,對應 lv_led_set_color,這里的 ui 定義了臨時變量并將全局的 guider_ui 的地址賦予它。同樣在成功連接后,也就是獲取 IP 時修改 LED 的顏色,同時將Wi-Fi的ssid 和password寫入Flash中,通過字段保存。字段定義在easy_flash 的 user_esflash.h 中。在其它文件中使用 Flash 注意將頭文件也添加。

wKgZPGeIZUGAKe2AAAEJRcYmzeE649.jpg

wKgZO2eIZUGAEH0sAAElBDtJSIA163.jpg

最后在WiFi_Connect/components/UI/generated/setup_scr_screen_2.c 中,也就是對應界面2初始化內容來修改,通過Flash 判斷上一次成功輸入Wi-Fi且被儲存的內容是否存在,來顯示上一次連接的Wi-Fi名稱和密碼,就不用重復輸入。

wKgZPGeIZUKAITo8AACeMB4cFPY519.jpg

03最終效果展示

上電的初始界面,如果是第一次燒錄應該是ssid和星號隱藏的password。這里筆者連接過了,顯示的是本人的Wi-Fi名稱和密碼。

未連接時左上角的燈為紅色,滑動顯示下一個日歷界面。

wKgZO2eIZUKAUCzDAAERDBrBD1E618.jpg

wKgZPGeIZUKADUExAADHkPr0Vo8907.jpg

輸入正確的Wi-Fi名稱和密碼后,點擊連接按鈕,成功連接 Wi-Fi 后,左上角的燈變為綠色,可以通過LOG口查看連接的過程。正確連接一次 Wi-Fi 后,以后每次復位或者燒錄顯示的都是上一次連接的 Wi-Fi 名稱和密碼。

wKgZO2eIZUOAHrctAADcKQSV5Ss198.jpg

wKgZPGeIZUSAL2cwAAHAy6UPouk856.jpg

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    463

    文章

    54007

    瀏覽量

    465952
  • wi-fi
    +關注

    關注

    15

    文章

    2424

    瀏覽量

    129538
  • 音頻編解碼
    +關注

    關注

    0

    文章

    21

    瀏覽量

    3285
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    技術資訊 I Wi-Fi 模塊設計

    Wi-Fi模塊可實現無縫連接和數據交換,對設備進行遠程控制和監測。Wi-Fi模塊設計旨在打造一套緊湊且高效的軟硬件解決方案,使設備能夠通過Wi-F
    的頭像 發表于 02-27 17:12 ?552次閱讀
    技術資訊 I <b class='flag-5'>Wi-Fi</b> 模塊設計

    ESP32 Wi-Fi 控制 LED 燈的原理

    在智能家居、物聯網設備中,用手機通過Wi-Fi控制燈光、風扇或插座,已經非常普遍。而在嵌入式開發中,ESP32是最常用的Wi-Fi模塊之一。本文將帶你系統理解:ESP32是如何
    的頭像 發表于 01-09 19:04 ?294次閱讀
    ESP32 <b class='flag-5'>Wi-Fi</b> 控制 LED 燈的原理

    Wi-Fi:無線連接的全球通用語

    現代生活中不可或缺的無線連接方式。二、Wi-Fi的核心特點1. 高速率,寬帶寬支持從幾十Mbps到數Gbps的傳輸速率,滿足高清視頻、在線游戲等高帶寬應用需求。2. 廣泛兼容,生態成熟幾乎所有智能終端均內置
    發表于 01-07 09:49

    Nordic發布nRF7002 EBII 開發板, 支持Wi-Fi 6, 解鎖nRF54L新玩法

    Wi-Fi 6 功能,幫助開發人員創建高性能、高能效的Wi-Fi 6 物聯網解決方案。 基于 Nordic 的 nRF7002 Wi-Fi 協同 IC,nRF7002 EBII幫助
    發表于 12-10 11:58

    淺談Wi-Fi 6E與Wi-Fi 7的關鍵器件——BAW濾波器新技術

    作者: Qorvo 亞太區無線連接事業部高級行銷經理林健富 ? 2020年1月,Wi-Fi聯盟正式宣布開放6GHz頻段(5925MHz-7125MHz),并將其命名為Wi-Fi 6E。
    發表于 09-19 18:29 ?2113次閱讀
    淺談<b class='flag-5'>Wi-Fi</b> 6E與<b class='flag-5'>Wi-Fi</b> 7的關鍵器件——BAW濾波器新技術

    【開源硬件】小安AiPi-Eyes-R2詳細測評+DIY天氣時鐘

    接口-130W像素 1 顯示器-4.0寸-RGB接口40寸-像素480x480 1 咪頭-2pin-1.25mm間距-交叉絞線100mm 2 具體開箱流程照片如下: 環境搭建 因為之前筆者已經用過Windows開發
    的頭像 發表于 08-12 16:23 ?793次閱讀
    【開源硬件】<b class='flag-5'>小安</b><b class='flag-5'>派</b>AiPi-<b class='flag-5'>Eyes</b>-R2詳細測評+DIY天氣時鐘

    LitePoint Wi-Fi測試軟件減輕客戶設計負擔

    Wi-Fi 7于一年多前獲得Wi-Fi聯盟認證以來,作為最新一代通信技術,Wi-Fi正逐步成為用戶實現無所不在無線連接的新選擇。隨著每一代Wi-F
    的頭像 發表于 08-06 15:34 ?1194次閱讀
    LitePoint <b class='flag-5'>Wi-Fi</b>測試軟件減輕客戶設計負擔

    如何選擇合適的芯科科技Wi-Fi開發

    您正在尋找適用于超低功耗物聯網應用項目的Wi-Fi 開發板嗎?本文將介紹Silicon Labs(芯科科技)推出的所有SiWx917 Wi-Fi 6和低功耗藍牙5.4解決方案的Wi-Fi
    的頭像 發表于 07-09 09:15 ?2684次閱讀

    Wi-Fi 8:開啟極高可靠性 (UHR) 連接的新紀元——1

    2023年11月成立,將持續致力于推動802.11bn的標準化進程,直至符合Wi-Fi 8標準且通過完整認證的產品問世。 表1. Wi-Fi 技術的演進 圖2. IEEE 802.
    發表于 06-13 11:09

    貿澤電子開售Qorvo Wi-Fi 7前端模塊

    貿澤電子開售Qorvo的Wi-Fi 7前端模塊。Qorvo Wi-Fi 7前端模塊可提供下一代連接能力,搭載了專為Wi-Fi 7革新而定制的專屬功能。Qorvo
    的頭像 發表于 06-12 10:21 ?1190次閱讀

    RK3568驅動指南|驅動基礎進階篇-進階7 向系統中添加一個系統調用

    RK3568驅動指南|驅動基礎進階篇-進階7 向系統中添加一個系統調用
    的頭像 發表于 05-21 14:15 ?709次閱讀
    RK3568驅動指南|驅動基礎<b class='flag-5'>進階篇</b>-<b class='flag-5'>進階</b>7 向系統中添加一個系統調用

    Wi-Fi HaLow如何突破傳統Wi-Fi性能瓶頸?

    視頻推薦在萬物互聯的時代,傳統Wi-Fi在覆蓋范圍、功耗、連接數上漸顯不足。而Wi-FiHaLow的誕生,正在用黑科技打破傳統Wi-Fi的性能瓶頸!今天,我們一起來探究
    的頭像 發表于 04-22 11:38 ?1107次閱讀
    <b class='flag-5'>Wi-Fi</b> HaLow如何突破傳統<b class='flag-5'>Wi-Fi</b>性能瓶頸?

    nRF Cloud Wi-Fi 定位服務

    、Predictive-GPS、Single-Cell、Multi-Cell 和 Wi-Fi 定位。通過利用 nRF Cloud 的優化定位算法,基于 Nordic SoC 和 模組的產品可在定位用例
    發表于 04-17 15:07

    Wi-Fi 定位服務

    Wi-Fi 是一種著名的無線網絡技術,用于設備的局域網和互聯網接入。Wi-Fi 通過 Wi-Fi 網絡為家庭、辦公室和學校等環境提供便捷的無線互聯網接入服務。
    發表于 04-17 15:01

    功德+1,用小安-Eyes-S1做一個電子木魚

    2024積德累功,心想事成!接下來看看如何用小安-Eyes-S1做一個電子木魚。01GUI-Guider頁面設計先新建一個工程。直接進入UI設計界面,這里用到了兩個
    的頭像 發表于 04-09 18:38 ?981次閱讀
    功德+<b class='flag-5'>1</b>,用<b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>做一個電子木魚