伦伦影院久久影视,天天操天天干天天射,ririsao久久精品一区 ,一本大道香蕉大久在红桃,999久久久免费精品国产色夜,色悠悠久久综合88,亚洲国产精品久久无套麻豆,亚洲香蕉毛片久久网站,一本一道久久综合狠狠老

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

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

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

LuatOS編程基礎(chǔ)教程:手把手帶你入門物聯(lián)網(wǎng)開發(fā)!

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

掃碼添加小助手

加入工程師交流群

對于渴望進入物聯(lián)網(wǎng)開發(fā)領(lǐng)域的初學(xué)者來說,LuatOS是一個理想的起點。本教程將通過由淺入深的教學(xué)方式,從搭建開發(fā)環(huán)境、理解核心API到編寫簡單應(yīng)用,逐步引導(dǎo)你掌握LuatOS編程的核心技能,開啟智能設(shè)備開發(fā)之旅。

學(xué)習(xí)LuatOS的主要方法之一是“運行各個功能模塊的demo代碼”,本期特別分享——LuatOS編程起步相關(guān)內(nèi)容。

注意:本文檔的讀者,默認都已經(jīng)了解初步的Lua語法。

如果不懂Lua語法的話,可以參考下方鏈接:http://docs.openluat.com/air780epm/common/lua_lesson/

一、底層固件怎么啟動LuatOS腳本

1.1 腳本入口執(zhí)行文件

簡單來說,底層固件首先就是要找到main.lua這個文件,然后啟動它。所有的其他功能,都需要在main.lua發(fā)起。

如下圖Air780EPM模組demo的Camera示例:

wKgZO2hJCJWAB2m_AACFiWL506I554.png

1.2 LuatOS啟動腳本的詳細流程

進一步詳細的說,LuatOS的底層固件啟動腳本的流程如下:

啟動底層core:系統(tǒng)上電或者復(fù)位后,底層固件(core)首先啟動,進行硬件初始化、內(nèi)存分配、文件系統(tǒng)掛載等系統(tǒng)底層的基礎(chǔ)操作。

加載Lua虛擬機:底層固件加載Lua虛擬機,為執(zhí)行 Lua腳本提供運行環(huán)境;

加載main.lua:自動查找并加載存儲在設(shè)備上的主腳本main.lua;

執(zhí)行腳本代碼:按順序執(zhí)行main.lua腳本中的代碼,通常包括任務(wù)創(chuàng)建(如 sys.taskInit)、功能初始化等。

進入任務(wù)調(diào)度:腳本最后通常調(diào)用sys.run(),進入事件循環(huán)和多任務(wù)調(diào)度,正式運行用戶邏輯。

1.3 怎么把固件和腳本燒錄到硬件:

使用官方LuatTools,將底層固件和用戶Lua腳本燒錄到合宙模組或者引擎硬件;上電后,底層固件自動完成上述啟動和腳本加載流程,無需手動干預(yù)。

Luatools下載及使用參見:https://docs.openluat.com/air780epm/common/Luatools/

二、main.lua需要包含哪些部分?

2.1 項目信息聲明

在main.lua的文件開頭,需要聲明項目名和版本號,便于管理和調(diào)試。后續(xù)的遠程升級,也需要用到項目名和版本號。

例如:

wKgZO2hJCO6AGpBwAABa3PJ0zms141.png

2.2 系統(tǒng)庫和必要模塊加載

在main.lua需要加載LuatOS的基礎(chǔ)庫和擴展庫(如zbuff、onewire等),用來實現(xiàn)具體的業(yè)務(wù)邏輯。

例如:

wKgZPGhJCRyAeRW7AABncp6EczM176.png

截止至當(dāng)前發(fā)文,LuatOS已提供74個核心庫和55個擴展庫。

最新LuatOS庫函數(shù)開發(fā)手冊詳見:https://docs.openluat.com/osapi/

2.3 至少啟動一個任務(wù)

在main.lua里面,至少需要啟動一個任務(wù),否則這個main就無所事事,是一個沒什么實際用處的主腳本了。

啟動一個任務(wù)的方法,分為2個步驟:

創(chuàng)建一個函數(shù),把要做的事情,放在這個函數(shù)里面使用。這個函數(shù)必須是無限循環(huán)的,防止很快結(jié)束生命,不妨把這個函數(shù)命名為task1()。

調(diào)用sys.taskInit(task1),啟動這個函數(shù),于是這個任務(wù),就放在待運行的任務(wù)列表里面了。


2.4 初步理解sys.run()

sys.run() 是一個無限循環(huán)的函數(shù)。

main.lua的最后一行,只能是sys.run(),代表sys.run() 接管了LuatOS的所有的執(zhí)行調(diào)度工作。

如下圖Air780EPM模組demo的LED示例:

wKgZO2hJCWGAftryAAK_5I9m_rI940.png

sys.run()是LuatOS的運行中樞,后續(xù)會詳細介紹。

三、LuatOS腳本編程的核心要點

3.1 LuatOS實現(xiàn)的典型功能

LuatOS腳本是利用了Lua的語法,以及基于LuatOS核心庫和擴展庫提供的API,進行簡便的編程,實現(xiàn)如下功能:

1)實現(xiàn)和云端服務(wù)器通信;

2)采集外設(shè)的數(shù)據(jù),控制外設(shè)設(shè)備;

3)實現(xiàn)人機交互,包括圖形交互和語音交互。

3.2 LuatOS的學(xué)習(xí)要點

要想寫好LuatOS的軟件,實現(xiàn)上述三個功能,除了逐漸掌握Lua的基本語法之外,還需要熟悉LuatOS的核心庫和擴展庫,這樣才能開發(fā)出優(yōu)質(zhì)的基于LuatOS的物聯(lián)網(wǎng)設(shè)備軟件。

學(xué)習(xí)的主要方法有如下幾個:

1)運行各個功能模塊的demo代碼;

2)閱讀docs.openluat.com的教程文檔;

3)遇到不懂問AI;

4)在QQ大群和微信大群進行技術(shù)交流。

3.3 一個典型的LuatOS實現(xiàn)

一個典型的LuatOS實現(xiàn),包含main.lua入口文件和若干個功能模塊文件。

這里以Air780EPM開發(fā)板的蜂鳴器示例代碼為例,有兩個腳本文件以及一個管腳描述json文件。

- Air780EPM蜂鳴器應(yīng)用示例 -

wKgZO2hJCamANEpmAAofWEk9Hdk698.png

1)main.lua文件

作用是啟動一個任務(wù),讓蜂鳴器響一秒鐘,再停頓一秒鐘,如此往復(fù)。

wKgZO2hJCjKAFo9FAAGeRNeSo8E891.png


2)airbuzzer.lua

封裝了驅(qū)動蜂鳴器的功能實現(xiàn)。

wKgZO2hJCleAWtbSAAFJNgsJPcg641.png

3)pins_Air780EPM.json描述了本例使用到的管腳的功能,Air780EPM的26管腳,用作PWM4。

wKgZPGhJCo-AIj2zAACJJEMmhyU066.png


把上述幾個文件,連同Air780EPM最新的固件版本,用LuaTools建立一個工程,燒錄到Air780EPM開發(fā)板,就可以聽到蜂鳴器的播放聲音了。

在應(yīng)用開發(fā)中,可根據(jù)實際需求靈活調(diào)整。

今天的內(nèi)容就分享到這里了,歡迎感興趣的朋友加技術(shù)交流群一起探討。

審核編輯 黃宇

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

    關(guān)注

    2948

    文章

    47995

    瀏覽量

    417333
  • 編程
    +關(guān)注

    關(guān)注

    90

    文章

    3721

    瀏覽量

    97376
  • LuatOS
    +關(guān)注

    關(guān)注

    0

    文章

    163

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    手把手教你學(xué)51單片機-C語言版

    ,沒有專業(yè)的人員帶領(lǐng)大家入門。 基于這些原因,我們編寫了這本《手把手教你學(xué)51單片機-C語言版》(第3版),并且配套了相關(guān)的視頻教程、電子教案、源代碼和實驗開發(fā)板(詳情瀏覽青島金思特電子有限公司網(wǎng)站獲取
    發(fā)表于 03-05 11:47

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

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

    明晚:睿擎聯(lián)網(wǎng)實戰(zhàn):從傳感器采集到MQTT上云全流程解析|問學(xué)直播

    核心研發(fā)工程師手把手帶你掌握從硬件外設(shè)到云端通信的完整開發(fā)流程!直播預(yù)告▎直播主題睿擎平臺聯(lián)網(wǎng)實戰(zhàn):從外設(shè)
    的頭像 發(fā)表于 11-25 18:31 ?506次閱讀
    明晚:睿擎<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>實戰(zhàn):從傳感器采集到MQTT上云全流程解析|問學(xué)直播

    【直播預(yù)告】下周三晚8點|睿擎聯(lián)網(wǎng)實戰(zhàn):從傳感器采集到MQTT上云全流程解析

    核心研發(fā)工程師手把手帶你掌握從硬件外設(shè)到云端通信的完整開發(fā)流程!直播預(yù)告▎直播主題睿擎平臺聯(lián)網(wǎng)實戰(zhàn):從外設(shè)
    的頭像 發(fā)表于 11-21 17:07 ?2154次閱讀
    【直播預(yù)告】下周三晚8點|睿擎<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>實戰(zhàn):從傳感器采集到MQTT上云全流程解析

    迅為Hi3403開發(fā)板極速啟航 | 手把手帶你玩轉(zhuǎn)核心例程,輕松上手AI視覺!

    迅為Hi3403開發(fā)板極速啟航 | 手把手帶你玩轉(zhuǎn)核心例程,輕松上手AI視覺!
    的頭像 發(fā)表于 11-19 13:56 ?1804次閱讀
    迅為Hi3403<b class='flag-5'>開發(fā)</b>板極速啟航 | <b class='flag-5'>手把手</b><b class='flag-5'>帶你</b>玩轉(zhuǎn)核心例程,輕松上手AI視覺!

    【迅為RK3568開發(fā)板NPU實戰(zhàn)】別再閑置你的NPU!手把手教你玩轉(zhuǎn)RKNN-Toolkit2 的使用

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

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

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

    手把手教您完成LuatOS GNSS定位調(diào)試:實用操作指南

    想要快速掌握LuatOS GNSS定位調(diào)試?本文將以手把手的方式,帶領(lǐng)您一步步完成調(diào)試流程。無論您是初學(xué)者還是有一定經(jīng)驗的開發(fā)者,這份實用操作指南都能幫助您有效提升調(diào)試效率,確保定位功能穩(wěn)定可靠
    的頭像 發(fā)表于 11-04 18:30 ?2162次閱讀
    <b class='flag-5'>手把手</b>教您完成<b class='flag-5'>LuatOS</b> GNSS定位調(diào)試:實用操作指南

    學(xué)習(xí)聯(lián)網(wǎng)怎么入門?

    景等。同時,學(xué)習(xí)聯(lián)網(wǎng)的基本技術(shù),如傳感器技術(shù)、通信技術(shù)、云計算等,也是非常重要的。 其次,選擇適合自己的學(xué)習(xí)方式也是入門學(xué)習(xí)聯(lián)網(wǎng)的重
    發(fā)表于 10-14 10:34

    RT-Thread Nano硬核移植指南:手把手實現(xiàn)VGLite圖形驅(qū)動適配 | 技術(shù)集結(jié)

    VGLite是NXP提供的輕量級2D圖形API,本文將手把手帶你實現(xiàn)VGLite圖形驅(qū)動適配RT-Thread。文章分為上、下兩篇,將手把手教您移植。上篇對RT-ThreadNano內(nèi)核與Finsh組件進行移植,下篇則教您改寫S
    的頭像 發(fā)表于 07-17 14:40 ?3555次閱讀
    RT-Thread Nano硬核移植指南:<b class='flag-5'>手把手</b>實現(xiàn)VGLite圖形驅(qū)動適配 | 技術(shù)集結(jié)

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

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

    手把手教你如何調(diào)優(yōu)Linux網(wǎng)絡(luò)參數(shù)

    在高并發(fā)網(wǎng)絡(luò)服務(wù)場景中,Linux內(nèi)核的默認網(wǎng)絡(luò)參數(shù)往往無法滿足需求,導(dǎo)致性能瓶頸、連接超時甚至服務(wù)崩潰。本文基于真實案例分析,從參數(shù)解讀、問題診斷到優(yōu)化實踐,手把手教你如何調(diào)優(yōu)Linux網(wǎng)絡(luò)參數(shù),支撐百萬級并發(fā)連接。
    的頭像 發(fā)表于 05-29 09:21 ?1131次閱讀

    【精選直播】手把手教你做星閃無人機第九課:無線通信編程之 SLE 專題

    手把手教你做星閃無人機》系列直播課再度開播!《KaihongOS星閃無人機開發(fā)實戰(zhàn)⑨:無線通信編程之SLE專題》↑掃碼入群,領(lǐng)課程講義資料包↑深開鴻資深工程師親臨直播間依托筆電實戰(zhàn)產(chǎn)品案例細致剖析
    的頭像 發(fā)表于 05-27 08:05 ?553次閱讀
    【精選直播】<b class='flag-5'>手把手</b>教你做星閃無人機第九課:無線通信<b class='flag-5'>編程</b>之 SLE 專題

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

    正點原子Linux系列全新視頻教程來啦!手把手教你MP257開發(fā)板,讓您輕松入門! 一、視頻觀看 正點原子手把手教你學(xué)STM32MP257-第1期:https://www.bilib
    發(fā)表于 05-16 10:42

    請求贈閱《零基礎(chǔ)開發(fā)AI Agent——手把手教你用扣子做智能體》

    博主好!致敬葉濤 管鍇 張心雨三位AI具身智能-智能體方面的專家、導(dǎo)師! 《零基礎(chǔ)開發(fā)AI Agent——手把手教你用扣子做智能體》一不懂編程的多數(shù)大眾也可以開發(fā)Agent,這意義深遠
    發(fā)表于 04-10 12:16