||
在物聯(lián)網(wǎng)開發(fā)領(lǐng)域,選擇合適的硬件平臺與操作系統(tǒng)是項目成功的關(guān)鍵。本文將帶領(lǐng)你從零開始,通過詳細的步驟與示例代碼,掌握Air780EPM與LuatOS的入門開發(fā)流程,并深入探討其核心功能與擴展?jié)摿Α?br>
一、必須先要告訴你的一些廢話
這里,先要告訴你一些前提條件,雖然聽著像是廢話,但是如果你不知道的話,可能后面會比較懵逼,所以還是希望你能夠認真看一看這一節(jié)。
這個項目的產(chǎn)品定義是:模組每隔3秒,就往串口輸出一次 “ hello world” 字符串。
要想達到這個目的,這里有必要先介紹一下 LuatOS 在4G模組的運行原理:
4G模組,除了運行4G協(xié)議棧之外,還植入了5.3版本的Lua虛擬機,以及內(nèi)置的一個腳本代碼區(qū)。
4G模組上電之后, 虛擬機會去代碼區(qū)讀取腳本代碼的main入口, 并執(zhí)行這個 main入口函數(shù)。
你只需要用 Lua 腳本改寫 main 入口函數(shù),并把這個腳本燒錄到模組的正確位置,就可以正確運行腳本的代碼。
幸運的是, 你只需要用Luatools工具燒錄腳本, 就一定能保證腳本燒錄到正確的位置。
在完成這個初始項目之前,你還需要準(zhǔn)備好一套合適的硬件。
合適的硬件是什么呢?
是能運行LuatOS腳本的4G模組。
怎么知道哪些4G模組能運行LuatOS呢?
要想知道答案,你可以看我們的選型手冊第二頁:
選型手冊:https://docs.openluat.com/product/
模塊對應(yīng)的總代碼倉庫地址:
https://gitee.com/openLuat
打開這個代碼倉庫的網(wǎng)址,你會看到公開的一系列代碼倉庫。
不僅僅公開了每個模組的示例代碼,還把缺陷跟蹤也公開了,真是絕對自信!
你要想運行哪個模組的軟件, 就找到對應(yīng)的模組開發(fā)板, 然后進入對應(yīng)的代碼倉庫,就可以開發(fā)了!
今天,我們用 LuatOS-Air780EPM 這個倉庫中的demo作為例子來進行學(xué)習(xí)。
Air780EPM_LuatOS開發(fā)代碼倉庫:https://gitee.com/openLuat/LuatOS-Air780EPM
同時,還有強大的社區(qū)資料支持,這個網(wǎng)站的LuatOS-SOC接口文檔中,可以看到使用的API函數(shù)的介紹說明:
Luatos_API介紹說明:https://docs.openluat.com/air780epm/luatos/api/
在開始之前,我已經(jīng)事先準(zhǔn)備好了 Air780EPM 開發(fā)板,你準(zhǔn)備好了嗎?
Air780EPM模塊硬件資料:https://docs.openluat.com/air780epm/product/#_1
二、下載模組的示例代碼
下載示例代碼到一個合適的項目目錄。從gitee下載代碼的教程如下:
Luat/LuatOS-Air780EPM代碼倉庫:https://gitee.com/openLuat/LuatOS-Air780EPM
1、最簡單快速的方式:
直接進入倉庫,點擊下載倉庫文件
2、使用git工具下載
git工具下載地址:Git - Downloading Package
以下是以Git Air780E項目進行舉例說明,Git Air780EPM流程一樣,只需要替換成Air780EPM Git路徑即可。
( 1 )進入下載地址后,下載對應(yīng)的工具
(2)雙擊安裝工具
(3)雙擊后,直接下一步安裝即可 中途都是一些配置選項,一般使用默認選項即可。
git下載好之后。。。
(1)新建一個文件夾,右鍵打開操作面板
(2)設(shè)置用戶簽名:
用戶名和郵箱是用來標(biāo)識是誰提交的代碼,輸入以下命令
(3)初始化本地庫,輸入以下命令
輸入這個命令后,可以在當(dāng)前目錄下看到一個.git文件。只有.git文件是用git init命令生成的。其他的沒關(guān)系。有了.git文件后,當(dāng)前文件夾就是一個git倉庫了,可以與遠程的倉庫進行連接。
(4)從遠程倉庫下載一個公鑰,為了讓遠程倉庫驗證自己的身份。輸入以下命令
生成的公鑰可以在C:/User/用戶/.ssh下看到
(5)將公鑰添加到gitee倉庫
gitee:Gitee - 基于 Git 的代碼托管和研發(fā)協(xié)作平臺https://gitee.com/
在gitee找到賬號設(shè)置,然后找到SSH公鑰,再添加公鑰。
(6)克隆倉庫到本地,輸入以下命令
此時在資源管理器中可以看到git下來的倉庫文件
三、修改代碼
用編輯器打開你下載下來的 LuatOS-Air780EPM/demo/helloworld/main.lua 文件。demo鏈接地址
我是習(xí)慣用 vscode,后面的例子都用 vscode 做演示了。
如果你是用其他的編輯器, 也差不多類似。
其中sys.timerLoopStart(func, timeout)的作用是每隔timeout的時間循環(huán)執(zhí)行回調(diào)函數(shù)func中的內(nèi)容。
你把這段代碼稍作修改后,改為這樣:
然后保存,代碼修改工作就大功告成了!
我們實現(xiàn)了每隔3000ms執(zhí)行一次printf("hello world")
是不是超級簡單?
四、燒錄代碼到硬件
燒錄代碼, 需要進行如下幾步:
1. 下載和安裝調(diào)試工具 LuatTools
要想燒錄代碼, 先要下載強大的調(diào)試工具: Luatools。
如果你已經(jīng)安裝使用過 Luatools, 可以直接跳到下個小節(jié): 燒錄代碼。
Luatools 的最新版本的工具介紹和下載地址為:
https://docs.openluat.com/Luatools/
Luatools 工具主要有如下幾個功能:
(1)自動從服務(wù)器獲取最新的模組固件;
(2)燒錄固件和腳本;
(3)查看和保存模組的串口輸出日志;
(4)簡單的串口調(diào)試;
Luatools 下載之后, 無需安裝, 解壓到你的硬盤,點擊 Luatools_v3.exe 運行,出現(xiàn)如下界面,就代表 Luatools
2. 燒錄代碼
首先要說明一點: 腳本代碼, 要和固件的bin文件一起燒錄。
(1)找到燒錄的固件文件
Air780EPM 的固件可以去DOCS網(wǎng)站下載。底層core下載地址:Air780EPM LuatOS固件版本https://docs.openluat.com/air780epm/luatos/firmware/
(2)正確連接電腦和4G模組電路板
使用帶有數(shù)據(jù)通信功能的數(shù)據(jù)線,不要使用僅有充電功能的數(shù)據(jù)線;
(3)識別4G模組的BOOT引腳
在下載之前,要用模組的BOOT引腳觸發(fā)下載, 也就是說,要把4G模組的BOOT引腳拉到 1.8v,或者直接把BOOT引腳和VDD_EXT引腳相連。我們要在按下BOOT按鍵時讓模塊開機,就可以進入下載模式了。
具體到 Air780EMP開發(fā)板,
1、當(dāng)我們模塊沒開機時,按著BOOT鍵然后長按PWR開機。
2、當(dāng)我們模塊開機時,按著BOOT鍵然后點按重啟鍵即可。
(4)識別電腦的正確端口
判斷是否進入BOOT模式:模塊上電,此時在電腦的設(shè)備管理器中,查看串口設(shè)備, 會出現(xiàn)一個端口表示進入了boot下載模式,如下圖所示:
一旦進入了boot下載模式,表示硬件連接上已經(jīng)處于就緒狀態(tài),此時就可以使用Luatools工具進行燒錄了!
(5)新建項目
首先,確保你的 Luatools 的版本,是大于 3.0.15 版本的。
在 Luatools 的左上角上有版本顯示的,如圖所示:
Luatools 版本沒問題的話, 就點擊Luatools 右上角的“項目管理測試”按鈕,如下圖所示:
這時會彈出項目管理和燒錄管理的對話框,如下圖:
1、新建一個項目
(6) 開始燒錄
選擇Air780EPM板子對應(yīng)的底層core和剛改的main.lua腳本文件。下載到板子中。
點擊下載后,我們需要進入boot模式才能正常下載,在(3)(4)小節(jié)已經(jīng)介紹了如何進入boot模式。
3. 燒錄問題排查
如果你在燒錄過程中遇到了問題, 請點擊如下鏈接,進行燒錄的問題排查。
詳細的燒錄操作步驟參考此處:https://docs.openluat.com/Luatools/#_23
五、驗證功能
燒錄完成后,會自動開機,此時電腦的設(shè)備管理器中會虛擬出三個端口表示正常開機
Luatools會自動抓取應(yīng)用日志和系統(tǒng)日志,并且在主界面解析顯示應(yīng)用日志,如下圖所示:
從打印的日志可以看到,這個4G開發(fā)板,在不斷的打印 hello world。
你太棒了! 你成功了!
六、總結(jié)
這節(jié)我們學(xué)會了
1、如何下載LuatOS的core,
2、如何使用燒錄工具Luatools,
3、如何編輯lua腳本實現(xiàn)打印hello world
大家快去試試吧~