本文將解析4G模組GPIO編程技巧,從概述、軟硬件環(huán)境準(zhǔn)備、示例等詳細(xì)道來:
一、GPIO 概述
GPIO 是通用型輸入輸出的簡稱,一個 GPIO 引腳可以用于輸入、輸出或其他特殊功能。
二、演示功能概述
本文將介紹 724UG GPIO 的輸入與輸出 DEMO 講解與效果演示。
三、準(zhǔn)備硬件環(huán)境
3.1 開發(fā)板準(zhǔn)備
使用 Air724UG-NFM 開發(fā)板,如下圖所示:

此開發(fā)板的詳細(xì)使用說明參考:
https://docs.openluat.com/air724ug/product/
Air724UG 產(chǎn)品手冊中的 《EVB_Air724UG_AXX開發(fā)板使用說明》,寫這篇文章時最新版本的使用說明為:《EVB_Air724UG_A14開發(fā)板使用說明》;開發(fā)板使用過程中遇到任何問題,可以直接參考這份使用說明文檔。
3.2 數(shù)據(jù)通信線
請準(zhǔn)備一根用于連接 Air724UG-NFM 開發(fā)板和 PC 電腦的數(shù)據(jù)線,該數(shù)據(jù)線將實(shí)現(xiàn)業(yè)務(wù)邏輯的控制與交互。
USB 數(shù)據(jù)線(其一端為 micro-B 接口(俗稱老安卓口),用于連接 Air724UG-NFM 開發(fā)板)。通常,這種數(shù)據(jù)線的外觀如下示意圖所示:

USB 數(shù)據(jù)線:此數(shù)據(jù)線不僅用于為測試板供電,還可用于查看抓取 lua 腳本上層和底層 core 日志。其一端為 micro-B 接口,連接 Air724UG-NFM 開發(fā)板;另一端為標(biāo)準(zhǔn) USB 接口,連接 PC 電腦。
3.3 PC 電腦
WINDOWS 系統(tǒng),其他暫無特別要求;
四、準(zhǔn)備軟件環(huán)境
4.1 源碼和工具
724UG 模塊使用固件為LuatOS-Air_V4030_RDA8910_TTS_NOLVGL_FLOAT.pac
下載最新版本的底層 CORE,解壓后會出現(xiàn)多個版本的固件,本教程使用的是 LuatOS-Air_V4030_RDA8910_TTS_NOLVGL_FLOAT.dfota.bin。

本教程使用的 demo:
https://gitee.com/openLuat/LuatOS-Air724UG/tree/master/script_LuaTask/demo/gpio/gpioSingle
將固件和腳本燒錄到模塊中,使用說明參考:
https://docs.openluat.com/Luatools/
4.2 燒錄代碼
首先,確保你的 Luatools 的版本大于或者等于 3.0.6 版本.
在 Luatools 的左上角上有版本顯示的,如圖所示:

Luatools 版本沒問題的話, 就點(diǎn)擊 Luatools 右上角的“項(xiàng)目管理測試”按鈕,如下圖所示:

這時會彈出項(xiàng)目管理和燒錄管理的對話框,如下圖:

選擇對應(yīng)的項(xiàng)目燒錄代碼。

五、GPIO 軟硬件資料
5.1 相關(guān)硬件接口
Air724UG 模塊引腳共支持 28 個 GPIO,部分引腳上電前后狀態(tài)不同,如使用這些管腳,需根據(jù)實(shí)際情況使用。
管腳定義:

參考硬件設(shè)計手冊中的管腳描述:
https://docs.openluat.com/air724ug/product/
5.2 相關(guān) API 介紹
GPIO 相關(guān) API:
https://doc.openluat.com/wiki/21?wiki_page_id=2286
六、功能示例
6.1 GPIO 簡介
GPIO(General-Purpose Input/Output) 指通用輸入輸出口。在軟件運(yùn)行期間能夠動態(tài)配置和控制的通用引腳,實(shí)現(xiàn)某時刻電平狀態(tài)的輸出與輸入,即可以通過它們輸出高低電平或者通過它們讀入引腳的狀態(tài)-是高電平或是低電平。
6.2 輸入模式簡介
GPIO 的輸入模式是指將 GPIO 配置為接收外部信號的模式。
6.2.1 核心代碼

6.2.2 示例效果展示
使用杜邦線短接 VDD1V8 和 GPIO19。


6.3 輸出模式簡介
GPIO 的輸出模式是指將 GPIO 配置為向外界輸出高低電平的模式。
6.3.1 核心代碼

6.3.2 示例效果展示:

6.4 中斷模式簡介
當(dāng) GPIO 檢測到電平變化且滿足觸發(fā)條件時,觸發(fā)中斷,CPU 就會暫停當(dāng)前任務(wù),執(zhí)行中斷回調(diào)函數(shù)中的內(nèi)容,當(dāng)中斷回調(diào)函數(shù)中的內(nèi)容執(zhí)行完畢時,再繼續(xù)執(zhí)行之前沒有執(zhí)行完的任務(wù)。除了中斷回調(diào)方式,還有中斷計數(shù)模式。中斷計數(shù)模式時,中斷時不回調(diào)。
6.4.1 核心代碼

6.4.2 示例效果展示:
使用杜邦線將 GPIO13 短接下 VDD1V8.

七、總結(jié)
本節(jié)我們學(xué)習(xí)了有關(guān) GPIO 的知識。其中包括輸入模式,輸出模式,中斷模式。
合宙 Cat.1 模塊具有多種不同的 GPIO 接口,部分 GPIO 口同時可復(fù)用為其他功能,并且模塊的 GPIO 管腳輸入輸出電壓能力按照不同的電壓域區(qū)分,特珠管腳的使用需要打開對應(yīng)的電壓域方能使用。
八、常見問題
1. 為什么 GPIO4 管腳操作沒反應(yīng)?
答:GPIO4 管腳為 VCC_LCD 電壓域,需要先配置 pmd.ldoset(2,pmd.LDO_VLCD)打開,才能正常操作該管腳。
九、擴(kuò)展
脈沖統(tǒng)計個數(shù):
使用杜邦線短接 GPIO23 和 GPIO11


示例效果展示:

分享完畢。
審核編輯 黃宇
-
4G
+關(guān)注
關(guān)注
15文章
5617瀏覽量
123970 -
編程
+關(guān)注
關(guān)注
90文章
3716瀏覽量
97178 -
GPIO
+關(guān)注
關(guān)注
16文章
1328瀏覽量
56218
發(fā)布評論請先 登錄
4G頻段物聯(lián)網(wǎng)天線通信模塊方案選型與應(yīng)用指南解析
GD01C 4G路由模組:串口轉(zhuǎn)4G/WiFi/網(wǎng)口通信
戶外4G模組優(yōu)選高穩(wěn)時鐘NDK NT2016SB TCXO
從零開始學(xué)模組功耗:新手必備基礎(chǔ)解析
新品上市:用微信小程序就能遠(yuǎn)程控制的遙控開關(guān)+本地雙控的4G模塊,來了!
物流車4G車載監(jiān)控系統(tǒng)的核心功能與應(yīng)用場景解析
充電樁核心設(shè)備:國網(wǎng)協(xié)議4G工業(yè)網(wǎng)關(guān)深度解讀
CE31-TD系列4G遙控開關(guān)模組核心板方案推薦
SkyOne? 汽車多模多頻段前端模塊,用于 4G LTE 和 4G LTE-A(下行鏈路載波聚合 (CA) 應(yīng)用) skyworksinc
4G全網(wǎng)通網(wǎng)關(guān)是什么?有什么功能?
4G DTU 無線數(shù)傳模塊:RS232/485轉(zhuǎn)4G,穩(wěn)定不宕機(jī)
基于EPCM3568B-LI的無線模塊應(yīng)用 — 4G篇
手把手教你!4G模組Air780EPM——GPIO的設(shè)計說明
深度解析 4G模組GPIO編程技巧篇
評論