RM新时代网站-首页

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

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

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

4G模組Air724UG的軟件教程:KEYPAD示例!

合宙LuatOS ? 來源:合宙LuatOS ? 作者:合宙LuatOS ? 2024-11-30 09:44 ? 次閱讀

本回我要說的是低功耗4G模組Air724UG的KEYPAD示例,我已整理成文,特供大家參考。

一、簡介

電路設(shè)計(jì)中,通常需要較多的外部輸入,如果每個按鍵都單獨(dú)去占用一個 IO 接口,就會非常浪費(fèi)資源,為了減少 I/O 口的占用,通常將按鍵排列成矩陣形式,即矩陣鍵盤。

特性:

KEYIN0
掃描鍵盤輸入 0,與 UBOOT 復(fù)用,此管腳在模塊開機(jī)動作完成之前不能進(jìn)行拉高,電壓域?yàn)?V_GLOBAL_1V8。

KEYIN1
掃描鍵盤輸入 1,此管腳在模塊開機(jī)動作完成之前不能進(jìn)行拉高,電壓域?yàn)?V_GLOBAL_1V8。

KEYIN2、KEYIN3、KEYIN4、KEYIN5
掃描鍵盤輸入管腳,電壓域?yàn)?V_GLOBAL_1V8。

KEYOUT0、KEYOUT1、KEYOUT2、KEYOUT3
掃描鍵盤輸出管腳,電壓域?yàn)?V_GLOBAL_1V8。

KEYOUT4
掃描鍵盤輸出管腳 4,與 UART3_RXD 復(fù)用,電壓域?yàn)?V_GLOBAL_1V8。

KEYOUT5
掃描鍵盤輸出管腳 5,與 UART3_TXD 復(fù)用,電壓域?yàn)?V_GLOBAL_1V8。

注意:鍵盤接口的所有管腳不能復(fù)用為GPIO。

二、演示功能概述

教程教你如何使用開發(fā)板的矩陣鍵盤獲取輸入信息。

三、準(zhǔn)備硬件環(huán)境

3.1 開發(fā)板準(zhǔn)備

使用 EVB_Air724 開發(fā)板,如下圖所示:

wKgZO2dIaiSAMO86AA8Q93ykEYE630.png

此開發(fā)板的詳細(xì)使用說明參考:
https://docs.openluat.com/air724ug/product/

Air724UG 產(chǎn)品手冊中的《EVB_Air724UG_AXX 開發(fā)板使用說明》,寫這篇文章時最新版本的使用說明為:《EVB_Air724UG_A14 開發(fā)板使用說明》;開發(fā)板使用過程中遇到任何問題,可以直接參考這份使用說明文檔。

API文檔:
https://doc.openluat.com/wiki/21?wiki_page_id=2068

3.2 數(shù)據(jù)通信

USB數(shù)據(jù)線一根(micro USB)。

3.3 PC 電腦

WIN7以及以上版本的 WINDOWS 系統(tǒng)。

3.4 矩陣鍵盤

4x4 矩陣鍵盤

wKgZPGdIajmAdKYzAAiZP4pthtw784.png


3.5 組裝硬件環(huán)境

USB 數(shù)據(jù)線插入 USB 口,另一端與電腦相連,撥碼開關(guān)全部撥到 ON,串口切換開關(guān)選擇 UART1,USB 供電的 4V 對應(yīng)開關(guān)撥至 ON 檔,連接矩陣鍵盤,把鍵盤陣列軟排線接口插入開發(fā)板相對印引腳,keyin2 keyin3 keyin4 keyin5 keyout0 keyout1 keyout2 keyout3,如下圖所示。

wKgZPGdIakOAd7dIAAmxbsC3BLI820.png

四、準(zhǔn)備軟件環(huán)境

4.1 下載調(diào)試工具

使用說明參考:
Luatools下載和詳細(xì)使用
https://docs.openluat.com/Luatools/

4.2 源碼及固件

1、底層 core 下載

下載底層固件,并解壓。

鏈接:
https://docs.openluat.com/air724ug/luatos/firmware/

如下圖所示,紅框的是我們要使用到的

wKgZO2dIalCAYbYmAAXX99DGwZ4979.png

2、本教程使用的demo見附件:

https://gitee.com/openLuat/LuatOS-Air724UG/tree/master/script_LuaTask/demo/keypad

4.3 下載固件和腳本到開發(fā)板中

打開 Luatools,開發(fā)板上電開機(jī),如開機(jī)成功 Luatools 會打印如下信息。

wKgZO2dIaluAeyTpAARlf89wW64592.png

點(diǎn)擊項(xiàng)目管理測試選項(xiàng)。

wKgZPGdIamWAcxokAAExkyIwajQ599.png

進(jìn)入管理界面,如下圖所示。

wKgZO2dIam-ADY1FAAPRMHB1SNY041.png

點(diǎn)擊選擇文件,選擇底層固件,我的文件放在 D:luatOSAir724 路徑中

wKgZO2dIanmAS6-QAACY06CfvrU513.png

點(diǎn)擊增加腳本或資源文件,選擇之前下載的程序源碼,如下圖所示。

wKgZPGdIaoKAQU1mAAKGAyRIU20369.png

點(diǎn)擊下載底層和腳本,下載完成如下圖所示。

wKgZPGdIaoyAc5dKAAGDHrTLl2I419.png

五、代碼示例介紹

5.1 API 說明

5.1.1 powerKey.setup(longPrd, longCb, shortCb) 開機(jī)鍵功能配置

配置開機(jī)鍵長按彈起和短按彈起的功能.

如何定義長按鍵和短按鍵,例如長按鍵判斷時長為 3 秒:

按下大于等于 3 秒再彈起判定為長按鍵;

按下后,在3 秒內(nèi)彈起,判定為短按鍵

參數(shù)

名稱 傳入值類型 釋義
longPrd number 可選參數(shù),默認(rèn)為 3000 長按鍵判斷時長,單位毫秒
longCb function 可選參數(shù),默認(rèn)為 nil 長按彈起時的回調(diào)函數(shù),如果為 nil,使用默認(rèn)的處理函數(shù)
shortCb function 可選參數(shù),默認(rèn)為 nil 短按彈起時的回調(diào)函數(shù)

5.1.2 創(chuàng)建一個 tKeypad 表,儲存所有按鍵值(16 個鍵盤元素 +1 個開關(guān)機(jī)鍵元素)

--每個元素的索引為行列值拼接而成的字符串,值為按鍵名的字符串

--例如:按鍵名為"1"的行值為 5,列值為 3,則["53"] = "1"

wKgZPGdIapuARXw_AAGyjT0ofKk878.png

5.1.3 定義某個 keyName 按鍵的長按下消息處理函數(shù)

wKgZO2dIaqOAUkzEAADnWy8ZSTA701.png

5.1.4 定義一個按鍵消息處理函數(shù)

--按鍵消息處理函數(shù)

wKgZPGdIaqyAbVf0AAOR9IIvmMA891.png

5.1.5 注冊按鍵消息處理函數(shù)

wKgZO2dIasGAEgILAABa1IROzps606.png

5.1.6 初始化鍵盤陣列

wKgZPGdIariAKHa7AALsxLuR8kg847.png

5.2 testKeypad.lua 代碼

注冊按鍵消息處理函數(shù) rtos.on(rtos.MSG_KEYPAD,keyMsg),初始化鍵盤陣列 rtos.init_module(rtos.MOD_KEYPAD,0,0x0F,0x0F),當(dāng)有鍵盤按下或抬起時按鍵消息處理函數(shù)會打印出對應(yīng)的行列值。

wKgZO2dIauSAbdzyAAOrY_IIo0Q451.pngwKgZPGdIavCABA1RAALHBAL5aBg624.png

5.3 main.lua 代碼

本代碼為主程序腳本,系統(tǒng)啟動后首先會對 4G 網(wǎng)絡(luò)進(jìn)行配置,等待網(wǎng)絡(luò)連接成功,然后加載矩陣鍵盤測試模塊。

六、開機(jī)調(diào)試

6.1 開發(fā)板開機(jī)

連接好硬件并下載固件后,啟動 Luatools 軟件,系統(tǒng)運(yùn)行信息將顯示在界面中。紅框中為開發(fā)板連接到 PC 機(jī)后正常打印的信息,如下圖所示。

wKgZO2dIawKAWqvtAAMGBehHB0U752.png

6.2 鍵盤調(diào)試

鍵盤按下或抬起時按鍵消息處理函數(shù)會打印出對應(yīng)的行列,true 為按鍵按下,false 為按鍵抬起。

wKgZPGdIaw2APSCKAAYst20OC04923.png

七、常見問題

7.1 為什么 KEYIN0 的按鍵在開機(jī)時被按下后就會不開機(jī)。

答:因?yàn)?KEYIIN0 信號復(fù)用為是 USB_BOOT,如果被按下就會進(jìn)入下載模式,就進(jìn)入不了開機(jī)流程。只需重新斷電開機(jī)就能恢復(fù)

7.2 為什么按下按鍵時沒反應(yīng)?

1、看下按鍵引腳是否與模塊引腳是否接對?鍵盤是不是 ok?

2、是不是引用了 powKey.lua ,關(guān)機(jī)按鍵默認(rèn)行列是(255,255)不需另外配置。

分享完畢,歡迎關(guān)注

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

    關(guān)注

    6673

    文章

    2451

    瀏覽量

    204144
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8575

    瀏覽量

    151014
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5032

    瀏覽量

    97371
  • 模組
    +關(guān)注

    關(guān)注

    6

    文章

    1487

    瀏覽量

    30360
收藏 人收藏

    評論

    相關(guān)推薦

    掌握4G模組PWM|技術(shù)精要

    今天要講的是4G模組PWM的技術(shù)精要,以常用的合宙Air724UG為例做出示例分享給大家。
    的頭像 發(fā)表于 12-14 09:40 ?536次閱讀
    掌握<b class='flag-5'>4G</b><b class='flag-5'>模組</b>PWM|技術(shù)精要

    分步實(shí)操 | Air724UG低功耗模組軟件中復(fù)刻高效FTP示例!

    本文要說的是低功耗4G模組Air724UG軟件中復(fù)刻高效FTP示例,我已整理成文供大家參考。
    的頭像 發(fā)表于 12-03 11:45 ?578次閱讀
    分步實(shí)操 | <b class='flag-5'>Air724UG</b>低功耗<b class='flag-5'>模組</b><b class='flag-5'>軟件</b>中復(fù)刻高效FTP<b class='flag-5'>示例</b>!

    ESP32S2 WROVER在使用AT指令獲取4G模組時,dte會報(bào)超時怎么解決?

    模組:ESP32 S2 WROVER 4G模組:合宙Air724UG 在使用AT指令獲取4G模組
    發(fā)表于 06-27 06:54

    air724ug開發(fā)板

    air724ug開發(fā)板,最近購買了一塊4G開發(fā)板來玩玩,做個開發(fā)記錄開發(fā)板采用合宙Air724UG模塊作為主控,沒有外掛其它單片機(jī),原來的2/4G模塊都是通過AT指令串口外掛單片機(jī),此
    發(fā)表于 07-22 07:25

    STM32+Air724UG基本控制篇

    Air724UG,4G Cat.1全網(wǎng)通③基本外設(shè):液晶OLED(IIC); RGB三色燈;溫濕度傳感器(DHT1...
    發(fā)表于 08-20 06:09

    Air724UG模塊及其硬件接口規(guī)范

    1. 緒論本文檔定義了Air724UG模塊及其硬件接口規(guī)范,電氣特性和機(jī)械細(xì)節(jié),通過此文檔的幫助,結(jié)合我們的應(yīng)用手冊和用戶指導(dǎo)書,客戶可以快速應(yīng)用Air724UG模塊于無線應(yīng)用。2.綜述2.1
    發(fā)表于 11-11 06:44

    Air724UG是什么

    提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔文章目錄前言一、Air724UG是什么?二、AT是什么?三、服務(wù)器是什么?四、我們要做什么?五、我們該怎么做?0.準(zhǔn)備工作1·連接模塊
    發(fā)表于 12-13 07:07

    Air724UG軟件:ADC功能的創(chuàng)意展示

    今天我將對Air724UG軟件的ADC功能做出詳細(xì)示例,大家可以先收藏,再慢慢細(xì)讀,絕對有收獲。
    的頭像 發(fā)表于 11-17 09:53 ?286次閱讀
    <b class='flag-5'>Air724UG</b><b class='flag-5'>軟件</b>:ADC功能的創(chuàng)意展示

    UART通信入門:4G模組軟件的實(shí)踐指南

    本文將對4G模組Air724UG軟件的UART做出相關(guān)示例,希望想了解此模組的朋友們收藏好仔細(xì)看
    的頭像 發(fā)表于 11-17 00:07 ?403次閱讀
    UART通信入門:<b class='flag-5'>4G</b><b class='flag-5'>模組</b><b class='flag-5'>軟件</b>的實(shí)踐指南

    4G模組SD卡使用技巧|專家指南

    今天我們學(xué)習(xí)的是4G模組SD卡使用技巧,以Air724UG為例做出指南供大家參考。
    的頭像 發(fā)表于 12-14 09:37 ?146次閱讀
    <b class='flag-5'>4G</b><b class='flag-5'>模組</b>SD卡使用技巧|專家指南

    4G模組Air724UG軟件示例:UDP實(shí)戰(zhàn)演練!

    關(guān)于4G模組Air724UG軟件的UDP示例,今天我將對其實(shí)戰(zhàn)演練,整理成文示例展示:
    的頭像 發(fā)表于 11-26 12:10 ?167次閱讀
    <b class='flag-5'>4G</b><b class='flag-5'>模組</b><b class='flag-5'>Air724UG</b><b class='flag-5'>軟件</b><b class='flag-5'>示例</b>:UDP實(shí)戰(zhàn)演練!

    藏箱子里Air724UG模組LuatOS開發(fā)的HTTP示例!

    今天我們來學(xué)習(xí)的是我珍藏已久的低功耗模組Air724UG的LuatOS開發(fā)HTTP示例,獻(xiàn)給大家。
    的頭像 發(fā)表于 11-30 09:42 ?207次閱讀
    藏箱子里<b class='flag-5'>Air724UG</b><b class='flag-5'>模組</b>LuatOS開發(fā)的HTTP<b class='flag-5'>示例</b>!

    低功耗模組軟件的UDP示例 基礎(chǔ)教程篇

    本文以常用的低功耗4G模組Air724UG為例,做出關(guān)于低功耗模組軟件的UDP示例,以供大家參考
    的頭像 發(fā)表于 12-02 14:53 ?162次閱讀
    低功耗<b class='flag-5'>模組</b><b class='flag-5'>軟件</b>的UDP<b class='flag-5'>示例</b>   基礎(chǔ)教程篇

    輕松攻克低功耗4G模組軟件的FTP示例!

    今天是以Air724UG模組為例,輕松攻克低功耗4G模組軟件的FTP示例。
    的頭像 發(fā)表于 12-05 09:08 ?173次閱讀
    輕松攻克低功耗<b class='flag-5'>4G</b><b class='flag-5'>模組</b><b class='flag-5'>軟件</b>的FTP<b class='flag-5'>示例</b>!

    解讀Air724UG低功耗4G模組軟件的語音通話!

    本篇文章以Air724UG模組為例,解讀低功耗4G模組軟件的語音通話,呈現(xiàn)實(shí)用教程供大家參考。
    的頭像 發(fā)表于 12-09 09:39 ?168次閱讀
    解讀<b class='flag-5'>Air724UG</b>低功耗<b class='flag-5'>4G</b><b class='flag-5'>模組</b><b class='flag-5'>軟件</b>的語音通話!
    RM新时代网站-首页