简介:
合宙Air780E开发板是一款基于 Cat.1技术的物联网通信模组开发板,采用了移芯EC618平台,具有低功耗,全网通,多种接口支持等特点,支持AT指令和LuatOS二次开发。
今天我们来讲解一个基于Air780E开发板,集成ec11旋转编码器的实例。
本文适用于780E开发板
关联文档和使用工具:
LuatOS-Soc固件获取
程序中使用函数讲解
Luatools下载调试工具
本文使用了更加通用的ec11.lua扩展例程库实现了编码器的功能。
(使用的不是demo中的程序,那个需要模块支持ioqueue才能使用。)
如果你想调整音箱的音量或者电视屏幕的亮度,只需轻轻旋转旋钮,设备音量就变大了或屏幕变亮了,这就是旋转编码器在起作用。
我们现在把EC11旋转编码器集成在合宙Air780E开发板上,让它拥有更多功能~
EC11旋转编码器在合宙Air780E开发板上的功能主要是作为输入设备,用于精确控制参数、提供直观的人机交互接口、实现自动化与控制系统集成、数据采集与监测以及自定义功能与扩展性。
接下来,就让我们一起来看一下是怎么做的吧~
一、准备工作
1.准备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 = 6local GPIO_B = 7 ec11.init(GPIO_A,GPIO_B) -- 演示接收旋转效果local count = 0local function ec11_callBack(direction)if direction == "left" then-- 往左选,逆时针 count = count - 1else-- 往右旋,顺时针 count = count + 1endlog.info("ec11", direction, count) end sys.subscribe("ec11",ec11_callBack) sys.run()
三、烧录运行
程序写好后,我们就可以把它烧录在Air780E开发板上了~
打开Luatools下载固件和脚本:LuatOS-Soc固件获取
根据步骤一步一步来,就烧录完成了~
四、效果展示
下载后旋转旋转编码器,可以到Luatools工具中打印旋转状态,来验证我们的程序是否能够成功运行。
烧录成功后,试着旋转EC11传感器,看下程序是否可以成功并且正确的读取到旋转状态。
通过图片中的展示效果来看,和我实际旋转EC11传感器旋转状态一致
看到这样的结果,就是我们集成成功了!
大家有合宙模组的可以试一试,有问题评论区留言呀!