0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

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

【XR806開發(fā)板試用】留言板功能開發(fā)

冬至子 ? 來源:申屠鵬會 ? 作者:申屠鵬會 ? 2023-10-08 10:58 ? 次閱讀

開發(fā)板簡介

XR806開源鴻蒙開發(fā)板是一款基于XR806芯片設(shè)計(jì),高度集成WiFi/BLE/常用外設(shè),可供開發(fā)者進(jìn)行方案評估、DIY或小規(guī)模產(chǎn)品研發(fā),可廣泛應(yīng)用于智能家居智能樓宇、智能城市和工業(yè)互聯(lián)等領(lǐng)域。

  • 搭載OpenHarmony系統(tǒng)(已通過OpenHarmony兼容性認(rèn)證),支持OTA升級,littlefs、spifs文件系統(tǒng)
  • 兼容802.11b/g/n,集成TCP/IP協(xié)議棧及WLAN協(xié)議棧、支持完整網(wǎng)絡(luò)服務(wù)協(xié)議、快速接入hilink生態(tài)
  • 支持BLE 5.0,支持完整低功耗藍(lán)牙服務(wù)GATT,SIG mesh完整協(xié)議棧
  • 內(nèi)置低功耗PMU,支持智能低功耗管理系統(tǒng),多級喚醒源設(shè)置;支持WiFi超低功耗保活,廣泛應(yīng)用各類低功耗應(yīng)用場景
  • 豐富的io接口,板載15個(gè)可編程GPIO,支持常用外接接口,如SPI/UART/I2C/PWM/ADC/IrDA TX/RX
  • 全安全架構(gòu),TrustZone/安全總線/安全Memory/安全eFuse/安全啟動/安全Debug接口/Flash實(shí)時(shí)加解密

編寫思路

  1. WiFi連接和數(shù)據(jù)接收

    • 在一個(gè)FreeRTOS任務(wù)中循環(huán)接收UDP數(shù)據(jù)報(bào)文
    • 從UDP數(shù)據(jù)中解析出留言內(nèi)容
  2. 墨水屏顯示

    • 使用E-Ink屏幕,在另一個(gè)FreeRTOS任務(wù)中循環(huán)顯示留言
    • 使用墨水屏庫函數(shù)清屏,設(shè)置顯示坐標(biāo),寫文字顯示留言內(nèi)容
    • 考慮顯示內(nèi)容排版、截?cái)噙^長留言等
  3. 任務(wù)與隊(duì)列

    • WiFi接收任務(wù)將解析后的留言內(nèi)容提交到隊(duì)列
    • 墨水屏顯示任務(wù)從隊(duì)列中獲取留言內(nèi)容
    • 使用二值信號量或者消息隊(duì)列進(jìn)行任務(wù)間同步

    核心代碼

    配置FreeRTOS,在main函數(shù)中初始化FreeRTOS,創(chuàng)建任務(wù)和隊(duì)列:

    #include "FreeRTOS.h"
    #include "task.h"
    #include "queue.h"
    
    #define WIFI_TASK_PRI 1
    #define EINK_TASK_PRI 2
    
    QueueHandle_t msgQueue;
    
    int main() {
    
      msgQueue = xQueueCreate(10, sizeof(Message));
    
      xTaskCreate(wifiRecvTask, "WiFiRecv", 128, NULL, WIFI_TASK_PRI, NULL);
    
      xTaskCreate(einkDisplayTask, "EinkDisplay", 256, NULL, EINK_TASK_PRI, NULL);
    
      vTaskStartScheduler(); 
    }
    

    wifi接收留言信息

    void wifiRecvTask(void *pvParameters) {
    
      WIFI_Init(); //初始化WiFi
    
      Socket socket = createUDPSocket();
    
      while(1) {
     ParseMessage(socket.receive()); //解析留言
     xQueueSend(msgQueue, &message, 0); //發(fā)送到隊(duì)列
      }
    
    }
    

    墨水屏展示

    void einkDisplayTask(void *pvParameters) {
    
      EPD_Init(); //初始化墨水屏
    
      while(1) {
     Message msg;
     xQueueReceive(msgQueue, &msg, portMAX_DELAY); 
     EPD_ClearScreen();
     EPD_ShowText(msg.text); //顯示留言文本
      }
    
    }
    
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • FreeRTOS
    +關(guān)注

    關(guān)注

    12

    文章

    484

    瀏覽量

    62815
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1223

    瀏覽量

    52756
  • Flash存儲
    +關(guān)注

    關(guān)注

    0

    文章

    39

    瀏覽量

    8347
  • BLE技術(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    28

    瀏覽量

    5963
  • xr806
    +關(guān)注

    關(guān)注

    0

    文章

    14

    瀏覽量

    1367
收藏 人收藏

    評論

    相關(guān)推薦

    XR806開發(fā)板適用】基于多源信息融合的糧食霉變檢測系統(tǒng)設(shè)計(jì)

    XR806開發(fā)板具有強(qiáng)大的數(shù)據(jù)處理和傳輸能力,廣泛應(yīng)用于物聯(lián)網(wǎng)和嵌入式系統(tǒng)開發(fā)。
    的頭像 發(fā)表于 10-27 17:06 ?1072次閱讀
    【<b class='flag-5'>XR806</b><b class='flag-5'>開發(fā)板</b>適用】基于多源信息融合的糧食霉變檢測系統(tǒng)設(shè)計(jì)

    基于全志XR806開發(fā)板的家用環(huán)境監(jiān)測傳感器設(shè)計(jì)

    本文來自全志XR806開發(fā)板評測活動文章,作者使用XR806開發(fā)板制作一個(gè)簡單的家用環(huán)境監(jiān)測傳感器,可以獲取當(dāng)前的溫度、濕度、氣壓、海拔這四個(gè)參數(shù),同時(shí)能夠通過外部的屏幕實(shí)時(shí)顯示刷新。
    的頭像 發(fā)表于 12-03 10:20 ?764次閱讀
    基于全志<b class='flag-5'>XR806</b><b class='flag-5'>開發(fā)板</b>的家用環(huán)境監(jiān)測傳感器設(shè)計(jì)

    如何使用XR806開發(fā)板來設(shè)計(jì)一個(gè)糧食霉變檢測系統(tǒng)?

    XR806開發(fā)板具有強(qiáng)大的數(shù)據(jù)處理和傳輸能力,廣泛應(yīng)用于物聯(lián)網(wǎng)和嵌入式系統(tǒng)開發(fā),
    的頭像 發(fā)表于 01-05 17:30 ?929次閱讀
    如何使用<b class='flag-5'>XR806</b><b class='flag-5'>開發(fā)板</b>來設(shè)計(jì)一個(gè)糧食霉變檢測系統(tǒng)?

    OpenHarmony南向嵌入式:【XR806開發(fā)板指導(dǎo)文檔】

    XR806_OpenHarmony開發(fā)板是基于XR806芯片設(shè)計(jì)開發(fā)的參考評估,身集成了XR806
    的頭像 發(fā)表于 04-14 09:25 ?862次閱讀
    OpenHarmony南向嵌入式:【<b class='flag-5'>XR806</b><b class='flag-5'>開發(fā)板</b>指導(dǎo)文檔】

    XR806芯片、XR806開源鴻蒙開發(fā)板簡介

    ??蓮V泛滿足 智能家居、智慧樓宇、工業(yè)互聯(lián)、兒童玩具、電子競賽、極客DIY 等領(lǐng)域的無線連接需求。芯片框圖芯片參數(shù)XR806開源鴻蒙開發(fā)板介紹XR806開發(fā)板是基于
    發(fā)表于 11-15 17:08

    XR806芯片、XR806開源鴻蒙開發(fā)板簡介

    。可廣泛滿足 智能家居、智慧樓宇、工業(yè)互聯(lián)、兒童玩具、電子競賽、極客DIY 等領(lǐng)域的無線連接需求。芯片框圖芯片參數(shù)XR806開源鴻蒙開發(fā)板介紹XR806開發(fā)板是基于
    發(fā)表于 11-15 18:32

    有哪位大神可以分享一下XR806開發(fā)板/模組的資料呢

    XR806開發(fā)板/模組的硬件包含哪幾個(gè)部分?XR806開發(fā)板/模組的硬件該怎樣去設(shè)計(jì)呢?
    發(fā)表于 12-28 06:51

    如何對XR806開發(fā)板的環(huán)境進(jìn)行配置呢

    如何對XR806開發(fā)板的環(huán)境進(jìn)行配置呢?有哪些配置步驟?
    發(fā)表于 12-28 07:51

    請問大佬XR806鴻蒙開發(fā)板怎么樣?

    請問大佬XR806鴻蒙開發(fā)板怎么樣?
    發(fā)表于 12-29 07:06

    求大佬分享XR806鴻蒙開發(fā)板功能引腳序號及對應(yīng)IO功能

    求大佬分享XR806鴻蒙開發(fā)板功能引腳序號及對應(yīng)IO功能
    發(fā)表于 12-29 07:44

    簡述星辰處理器的全志XR806鴻蒙開發(fā)板上手體驗(yàn)

    本文轉(zhuǎn)載于極術(shù)社區(qū)極術(shù)專欄:STAR CPU(星辰處理器)作者:PingYang XR806鴻蒙開發(fā)板是全志科技新出的一款支持WiFi和BLE的高集成度無線MCU芯片,支持鴻蒙L0系統(tǒng)。CPU采用
    的頭像 發(fā)表于 11-03 15:00 ?8726次閱讀
    簡述星辰處理器的全志<b class='flag-5'>XR806</b>鴻蒙<b class='flag-5'>開發(fā)板</b>上手體驗(yàn)

    簡述XR806開發(fā)板與STAR-MC1處理器

    全志XR806開發(fā)板基于XR806芯片設(shè)計(jì),搭載了安謀中國的星辰系列STAR-MC1處理器。該開發(fā)板體積較小,具備WiFi、低功耗藍(lán)牙技術(shù)等功能
    的頭像 發(fā)表于 04-11 18:08 ?3346次閱讀

    XR806開發(fā)板試用】FreeRTOS創(chuàng)建任務(wù)測試

    這篇來學(xué)習(xí)下,XR806開發(fā)板在FreeRTOS系統(tǒng)下創(chuàng)建兩個(gè)任務(wù)測試,由于沒有找到學(xué)習(xí)的文檔,試著參考例程來測試。
    的頭像 發(fā)表于 10-10 11:47 ?745次閱讀
    【<b class='flag-5'>XR806</b><b class='flag-5'>開發(fā)板</b><b class='flag-5'>試用</b>】FreeRTOS創(chuàng)建任務(wù)測試

    XR806串口驅(qū)動CM32M對小廚寶的控制實(shí)驗(yàn)

    非常感謝基于安謀科技STAR-MC1的全志XR806 Wi-Fi+BLE開源鴻蒙開發(fā)板試用活動,并獲得開發(fā)板試用。
    的頭像 發(fā)表于 10-23 11:39 ?674次閱讀
    <b class='flag-5'>XR806</b>串口驅(qū)動CM32M對小廚寶的控制實(shí)驗(yàn)

    全志XR806開發(fā)板原理圖

    全志XR806開發(fā)板原理圖
    發(fā)表于 10-19 15:11 ?12次下載