簡介:
合宙Air780E開發板是一款基于 Cat.1技術的物聯網通信模組開發板,采用了移芯EC618平臺,具有低功耗,全網通,多種接口支持等特點,支持AT指令和LuatOS二次開發。
今天我們來講解一個基于Air780E開發板,集成ec11旋轉編碼器的實例。
本文適用于780E開發板
關聯文檔和使用工具:
LuatOS-Soc固件獲取
程序中使用函數講解
Luatools下載調試工具
本文使用了更加通用的ec11.lua擴展例程庫實現了編碼器的功能。
(使用的不是demo中的程序,那個需要模塊支持ioqueue才能使用。)
如果你想調整音箱的音量或者電視屏幕的亮度,只需輕輕旋轉旋鈕,設備音量就變大了或屏幕變亮了,這就是旋轉編碼器在起作用。
我們現在把EC11旋轉編碼器集成在合宙Air780E開發板上,讓它擁有更多功能~
EC11旋轉編碼器在合宙Air780E開發板上的功能主要是作為輸入設備,用于精確控制參數、提供直觀的人機交互接口、實現自動化與控制系統集成、數據采集與監測以及自定義功能與擴展性。
接下來,就讓我們一起來看一下是怎么做的吧~
一、準備工作
準備Air780E開發板:
確保Air780E開發板已經連接好電源,長按pwrkey 1.5s,讓模塊處于開機狀態
2.確認EC11旋轉編碼器的引腳:
EC11旋轉編碼器通常具有五個引腳,分別是VCC(電源正極)、GND(地線)、A相(信號輸出1)、B相(信號輸出2)和SW(按鍵,可選)。
二、程序實例
API說明
接口:ec11.init(GPIO_A,GPIO_B)
參數:
參數類型 | 描述 |
number | GPIO_A A引腳對應的GPIO編號, 例如 GPIO6, 就寫6 |
number | GPIO_B B引腳對應的GPIO編號, 例如 GPIO7, 就寫7 |
返回值:無
完整程序
在main.lua中添加如下程序
這里是完整的控制程序:
PROJECT = "ROTARY_TEST" VERSION = "1.0.0" -- 用法實例, 當前支持一定一脈沖local ec11 = require("ec11") -- 按實際接線寫 local GPIO_A = 6 local GPIO_B = 7 ec11.init(GPIO_A,GPIO_B) -- 演示接收旋轉效果local count = 0 local function ec11_callBack(direction) if direction == "left" then-- 往左選,逆時針 count = count - 1 else-- 往右旋,順時針 count = count + 1 end log.info("ec11", direction, count) end sys.subscribe("ec11",ec11_callBack) sys.run()
三、燒錄運行
程序寫好后,我們就可以把它燒錄在Air780E開發板上了~
打開Luatools下載固件和腳本:LuatOS-Soc固件獲取
根據步驟一步一步來,就燒錄完成了~
四、效果展示
下載后旋轉旋轉編碼器,可以到Luatools工具中打印旋轉狀態,來驗證我們的程序是否能夠成功運行。
燒錄成功后,試著旋轉EC11傳感器,看下程序是否可以成功并且正確的讀取到旋轉狀態。
通過圖片中的展示效果來看,和我實際旋轉EC11傳感器旋轉狀態是一致的。
看到這樣的結果,就是我們集成成功了!
合宙支持LuatOS開發的模組型號,除本文介紹的Air780E外,
> 還有Air780EPA、Air780EP、Air780EX、Air201、Air780EPT、Air780EPS等型號,
> 本文介紹的適配EC11旋轉編碼器的流程,同樣也適用于這些型號。但是要注意實際的接線方式,因為不同的模組引腳定義可能不同。
大家有合宙模組的可以試一試,有問題評論區留言呀!
如有需要,請點擊www.openluat.com
審核編輯 黃宇
-
編碼器
+關注
關注
45文章
3644瀏覽量
134559 -
開發板
+關注
關注
25文章
5058瀏覽量
97531
發布評論請先 登錄
相關推薦
評論