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

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

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

3天內不再提示

Air780E模組LuatOS開發實戰 —— 手把手教你搞定數據打包解包

合宙LuatOS ? 來源:合宙LuatOS ? 作者:合宙LuatOS ? 2024-12-03 11:17 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文要說的是低功耗4G模組Air780E的LuatOS開發實戰,我將手把手教你搞定數據打包解包。

一、LuatOS string 庫pack和unpack接口

LuatOS string庫的pack和unpack是一個用于在Lua程序中進行二進制數據打包和解包操作的接口,支持多種數據類型和字節序格式,方便處理二進制協議和文件。

由于Lua中字符串幾乎可以用于存儲所有形式的數據,所以下面先系統介紹下Lua字符串的特點,方便習慣使用C語言編程的初學者系統的了解兩種語言在數據存儲方面的一些差異。

1.1 字節序的概念

字節序是指在計算機存儲或傳輸多字節數據時,字節的排列順序,通常分為大端序(big-endian,最高有效字節在前)和小端序(little-endian,最低有效字節在前)。

大端也常被稱作叫“網絡序”因為 TCP、UDP 網絡數據傳輸和存儲都使用這種格式,而一些像 STM32ARM 單片機,則使用小端存儲格式;

1.2 Lua 中字符串存儲

Lua 中字符串可以存儲所有字節數據,包括“字符串中的可見和不可見字符”,這一點與 C 語言有很大區別;

wKgZPGdNvJuAXpOwAAWs3wSNnN0725.png

1.3 Lua 中字符串的序號

注:Lua 中字符串首字節從序號 1 開始,而不像 C 語言是從序號 0 開始;并且 Lua 字符串有正數序號也有負數序號,這一點也與 C 語言不同;

wKgZO2dNvKeAWo1EAASxrBq-K2A301.png

二、演示功能概述

本文使用 Air780E 核心板,運用 LuatOS string 庫 pack 和 unpack 接口對二進制數據進行打包和解包操作。

三、準備硬件環境

3.1 Air780E 開發板

wKgZO2dNvLOAPmOoAAMn5hxol-U495.png

(注意:需要配套采購 4G 物聯網卡!)

3.2 TYPE-C 數據線

wKgZPGdNvMKAaHiwABXVR3Q417M048.png

(注意:必須是具備USB通信的數據線?。?/p>

四、準備軟件環境

4.1 Luatools

Luatools日志打印與程序燒錄軟件下載:
https://docs.openluat.com/Luatools/

4.2 core 固件和源碼腳本

注:core 固件,是基礎環境,該固件由官方提供,用戶不可修改;源碼腳本,為應用程序,可由客戶自行修改

五、軟硬件資料

1、Air780E 開發板原理圖
打開 Air780E 產品手冊,訪問頁面中的 《EVB_Air780X_V1.6.zip》:
https://docs.openluat.com/air780e/product/

2、API 使用介紹說明

3、Air780E開發板使用說明
打開Air780E 產品手冊,訪問頁面中的 《開發板Core_Air780E使用說明 V1.0.5.pdf》

5.1 開發板按鈕與指示燈圖示與說明

wKgZO2dNvNeANFoRAANgv9R2Lfo842.png

wKgZO2dNvOWALXrfAA9Fhmkft7k269.png

5.2 硬件安裝與連接

5.2.1 SIM 卡安裝

wKgZPGdNvO-ATacLAA4MVjG4lZk125.png

5.2.2 實物連接圖

wKgZPGdNvPyAY02WAAg_Kzqj0I4431.png

注:開發板與電腦通過 TYPE-C 線連接,用于通信與供電,所以必須使用具有 USB 通信功能的 TYPE-C 線才可以;

六、代碼示例介紹

6.1 完整程序清單

注:完整復制后保存為 main.lua,可直接使用

wKgZO2dNvQ6AOd4DAATcnedzMZo797.png

wKgZO2dNvR2ATG6RAASvv2jzu7M607.png

wKgZO2dNvSyAT_uuAAVc5_syJYc942.png

wKgZPGdNvTuAc9n_AANFXrzQ0uU740.png

七、功能驗證

7.1 開機

按下圖所示通過TYPE-C線將開發板與電腦連接無誤后,開發板電源指示紅燈常亮,網絡指示燈滅:

wKgZPGdNvUmAJVhoAAlraMg0Cs8393.png

此時按下開機鍵,約2秒后釋放,等待幾秒網絡指示綠燈常亮,即開機成功,如下圖:

wKgZO2dNvVeAFEnoAAmY7gFn7tk451.png


此時電腦設備管理器中會發現下圖所示幾個設備,即代表開機成功!

wKgZPGdNvWGAZ9NeAAN5hVdcPhM782.png

7.2 打開 Luatool 軟件工具并進入項目管理測試頁面

wKgZO2dNvWyAVG_AAAKvmVwMkrQ946.png

7.3 按序號步驟創建項目

wKgZPGdNvXeAFUIGAAKVP_95RTo693.png

wKgZO2dNvYGAStmvAAM-aDNwlHI292.png

7.4 按如下步驟進行程序燒錄

注:如果出現下圖警告,請點“確認”(首次使用該軟件一定要升級到最新版本)

wKgZPGdNvYuAL4RxAAKfKnbcRzI281.png

wKgZPGdNvZSAWsIbAAK9o8T9Qg4498.png

wKgZO2dNvaSAdRA_AAxuflmfTqo802.png

7.5 觀察下載過程后確認燒錄結果

wKgZPGdNva6Aar3RAAIYrN2IBLY760.png

wKgZO2dNvbaAQqHUAAHYoq-YzHM671.png

7.6 關閉項目管理界面,回到調試頁面,觀察輸出

注:詳細日志輸出內容,在程序中有增強注釋說明,請詳細查看。

wKgZO2dNvcGAMANFAAe1MGqtFnc625.png

八、總結

至此,我們已使用 Air780E 開發板驗證了 LuatOS string 庫 pack 和 unpack 接口對二進制數據進行打包和解包的功能。

九、拓展說明

lua 5.3 之前,string 不支持這兩個接口,當時我們移植了 pack 庫,使用方法和 string 庫的兩個接口原理一樣,函數入口參數順序有少許差別,具體可以參考 api(https://docs.openluat.com/air780e/luatos/api/core/pack/),當前最新固件 string 已完全支持 pack 和 unpack 兩個接口,所以開發者可直接使用string這兩個方法即可。

審核編輯 黃宇

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

    關注

    6

    文章

    1768

    瀏覽量

    32252
  • 數據打包
    +關注

    關注

    0

    文章

    2

    瀏覽量

    1008
  • LuatOS
    +關注

    關注

    0

    文章

    156

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    從0到1,10+年資深LabVIEW專家,手把手教你攻克機器視覺+深度學習(5000分鐘實戰課)

    “告別檢測系統能力缺陷!10+年LabVIEW視覺資深專家手把手教你:5000+分鐘高清教程(含工具、算法原理、實戰操作、項目優化全流程講解)”——從傳統視覺算法→深度學習建?!I級部署"
    的頭像 發表于 12-02 08:07 ?520次閱讀
    從0到1,10+年資深LabVIEW專家,<b class='flag-5'>手把手</b><b class='flag-5'>教你</b>攻克機器視覺+深度學習(5000分鐘<b class='flag-5'>實戰</b>課)

    【迅為RK3568開發板NPU實戰】別再閑置你的NPU!手把手教你玩轉RKNN-Toolkit2 的使用

    【迅為RK3568開發板NPU實戰】別再閑置你的NPU!手把手教你玩轉RKNN-Toolkit2 的使用
    的頭像 發表于 11-11 14:21 ?1114次閱讀
    【迅為RK3568<b class='flag-5'>開發</b>板NPU<b class='flag-5'>實戰</b>】別再閑置你的NPU!<b class='flag-5'>手把手</b><b class='flag-5'>教你</b>玩轉RKNN-Toolkit2 的使用

    【RK3568 NPU實戰】別再閑置你的NPU!手把手帶你用迅為資料跑通Android AI檢測Demo,附完整流程與效果

    【RK3568 NPU實戰】別再閑置你的NPU!手把手帶你用迅為資料跑通Android AI檢測Demo,附完整流程與效果
    的頭像 發表于 11-10 15:58 ?1056次閱讀
    【RK3568 NPU<b class='flag-5'>實戰</b>】別再閑置你的NPU!<b class='flag-5'>手把手</b>帶你用迅為資料跑通Android AI檢測Demo,附完整流程與效果

    手把手教你 Air8000 模塊 CAN 接口開發與配置實戰全攻略

    面對復雜多樣的嵌入式通信需求,Air8000 模塊的 CAN 接口開發尤為重要。本文以實戰為導向,詳細拆解 Air8000 模塊 CAN 接口的開發
    的頭像 發表于 10-29 14:04 ?367次閱讀
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b> <b class='flag-5'>Air</b>8000 模塊 CAN 接口<b class='flag-5'>開發</b>與配置<b class='flag-5'>實戰</b>全攻略

    【精選直播】手把手教你做PC第十二課:WIFI 驅動框架適配

    手把手教你做PC》系列直播課再度開播!《KaihongOS筆記本電腦開發實戰第十二課:WIFI驅動框架適配》將于07月02日19:00開播↑掃碼入群,領課程講義資料包↑深開鴻資深工程
    的頭像 發表于 07-01 08:08 ?562次閱讀
    【精選直播】<b class='flag-5'>手把手</b><b class='flag-5'>教你</b>做PC第十二課:WIFI 驅動框架適配

    LuatOS編程基礎教程:手把手帶你入門物聯網開發!

    對于渴望進入物聯網開發領域的初學者來說,LuatOS是一個理想的起點。本教程將通過由淺入深的教學方式,從搭建開發環境、理解核心API到編寫簡單應用,逐步引導你掌握LuatOS編程的核心
    的頭像 發表于 06-11 13:03 ?764次閱讀
    <b class='flag-5'>LuatOS</b>編程基礎教程:<b class='flag-5'>手把手</b>帶你入門物聯網<b class='flag-5'>開發</b>!

    【精選直播】手把手教你做星閃無人機第十課:KaihongOS Lite系統專題

    手把手教你做星閃無人機》系列直播課再度開播!《KaihongOS星閃無人機開發實戰⑩:KaihongOSLite系統專題》↑掃碼入群,領課程講義資料包↑深開鴻資深工程師親臨直播間依托
    的頭像 發表于 06-10 08:06 ?509次閱讀
    【精選直播】<b class='flag-5'>手把手</b><b class='flag-5'>教你</b>做星閃無人機第十課:KaihongOS Lite系統專題

    手把手教你如何調優Linux網絡參數

    在高并發網絡服務場景中,Linux內核的默認網絡參數往往無法滿足需求,導致性能瓶頸、連接超時甚至服務崩潰。本文基于真實案例分析,從參數解讀、問題診斷到優化實踐,手把手教你如何調優Linux網絡參數,支撐百萬級并發連接。
    的頭像 發表于 05-29 09:21 ?964次閱讀

    正點原子Linux系列全新視頻教程來啦!手把手教你MP257開發板,讓您輕松入門!

    正點原子Linux系列全新視頻教程來啦!手把手教你MP257開發板,讓您輕松入門! 一、視頻觀看 正點原子手把手教你學STM32MP257
    發表于 05-16 10:42

    解鎖LuatOS-log庫:全棧工程師的日志管理實戰課!

    針對全棧開發者設計的實戰教程,本文聚焦LuatOS平臺log庫的高效使用,從基礎配置到高級調試策略,手把手教你搭建可擴展的日志系統,提升項目
    的頭像 發表于 05-12 15:23 ?1511次閱讀
    解鎖<b class='flag-5'>LuatOS</b>-log庫:全棧工程師的日志管理<b class='flag-5'>實戰</b>課!

    手把手教你!利用Air780EPM快速體驗LuatOS的入門

    在物聯網開發領域,選擇合適的硬件平臺與操作系統是項目成功的關鍵。本文將帶領你從零開始,通過詳細的步驟與示例代碼,掌握Air780EPM與LuatOS的入門開發流程,并深入探討其核心功能
    的頭像 發表于 03-25 16:38 ?701次閱讀
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>!利用<b class='flag-5'>Air780</b>EPM快速體驗<b class='flag-5'>LuatOS</b>的入門

    《零基礎開發AI Agent——手把手教你用扣子做智能體》

    《零基礎開發AI Agent——手把手教你用扣子做智能體》是一本為普通人量身打造的AI開發指南。它不僅深入淺出地講解了Agent的概念和發展,還通過詳細的工具介紹和
    發表于 03-18 12:03

    手把手教你做星閃無人機—KaihongOS星閃無人機開發實戰》系列課程課件匯總

    —KaihongOS星閃無人機開發實戰》系列課程,該課程與《手把手教你做PC—KaihongOS筆記本電腦開發
    發表于 03-18 10:33

    手把手教你做PC-KaihongOS筆記本電腦開發實戰》課件匯總

    ”攜手“電子發燒友”聯合推出了 《KaihongOS手把手系列直播課程》,該系列課程以實際產品為案例,詳細講解每個產品的開發全流程。 此次首發內容是《手把手教你做PC-Kaihong
    發表于 03-18 10:25

    手把手教你!4G模組Air780EPM——GPIO的設計說明

    ? 開發方式 :Air780EPM 僅支持 LuatOS 軟件開發方式,不支持 AT 指令開發方式。若使用 AT 指令
    的頭像 發表于 03-17 16:07 ?1117次閱讀
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>!4G<b class='flag-5'>模組</b><b class='flag-5'>Air780</b>EPM——GPIO的設計說明