当前位置: 首页 > news >正文

uniapp安卓GPIO电平控制

模块简介

本模块为 UniApp 提供了对 Android 系统下 GPIO 的访问能力,支持导出、设置方向、读写电平值等操作。适用于 Android 架构设备(如 RK3288 平台)。

支持功能

功能方法名说明
初始化 GPIO 方向initGpio({gpio, direction})设置 GPIO 输入/输出模式
设置 GPIO 电平setGpioValue({gpio, value})设置高/低电平(仅限输出模式)
读取 GPIO 电平readGpioValue({gpio})获取当前引脚电平值

引脚说明(/sys/class/gpio 接口)

  • 所有 GPIO 需先通过 initGpio 初始化方向后才可使用
  • 输出模式下才可以调用 setGpioValue
  • 输入模式下才可以调用 readGpioValue

使用示例

1. 加载插件

const gpioModule = uni.requireNativePlugin('zy-GpioModule');

2. 初始化 GPIO 方向

方法:initGpio(options, callback)
参数:
{"gpio": 17,"direction": "out"
}
示例代码:
gpioModule.initGpio({gpio: 17,direction: 'out'
}, (res) => {console.log(res);
});
返回结构:
{"code": 1,"msg": "GPIO 初始化成功","data": {"gpio": 17,"direction": "out"}
}

3. 设置 GPIO 电平

方法:setGpioValue(options, callback)
参数:
{"gpio": 17,"value": 1
}
示例代码:
gpioModule.setGpioValue({gpio: 17,value: 1
}, (res) => {console.log(res);
});
返回结构:
{"code": 1,"msg": "GPIO 设置成功","data": {"gpio": 17,"value": 1}
}

❗ 注意:如果未将 GPIO 设置为输出模式,将返回错误信息:

GPIO 设置失败:请先将 GPIO 17 设置为输出模式

4. 读取 GPIO 电平

方法:readGpioValue(options, callback)
参数:
{"gpio": 17
}
示例代码:
gpioModule.readGpioValue({gpio: 17
}, (res) => {console.log(res);
});
返回结构:
{"code": 1,"msg": "GPIO 读取成功","data": {"gpio": 17,"value": "1"}
}

返回统一结构说明

所有方法均返回以下格式的 JSON 对象:

{"code": 1,"msg": "描述信息","data": { ... }
}

错误处理建议

在 JS 中应根据 code 字段判断执行结果,并提示用户或记录日志:

if (res.code === 1) {uni.showToast({ title: res.msg });
} else {uni.showToast({ title: res.msg, icon: 'none' });console.error(res);
}

开发注意事项

项目说明
权限要求必须具备 root 权限才能操作 /sys/class/gpio 文件系统
架构兼容性armeabi-v7a

总结

功能是否需要 root是否必须初始化方向
initGpio✅ 是
setGpioValue✅ 是✅ 是
readGpioValue✅ 是✅ 是

相关文章:

  • Milvus【部署 03】Linux OpenEuler 环境在线+离线安装及卸载
  • 【软考高级系统架构论文】论企业集成架构设计及应用
  • Milvus【工具 01】milvus_cli和可视化工具attu安装使用
  • uniapp vue2多选模糊下拉组件
  • 住宅老年护理软件:市场洞察与发展前景
  • 顶级思维方式——认知篇十一《传习录》笔记
  • leetcode:78. 子集
  • 手机摄影后期进阶:LR调色参数黄金比例表
  • LeetCode中K个链表的链接的解法
  • 从本地到云端:通过ToolJet和cpolar构建远程开发环境实践过程
  • 操作系统 第九章 部分
  • 详解HarmonyOS NEXT仓颉开发语言中的全局弹窗
  • 2024计算机保研--哈工大、中山、国防科大(二)
  • 前端高频面试题汇总
  • 【入门级-基础知识与编程环境:3、计算机网络与Internet的基本概念】
  • Flask框架index.html里引用的本地的js和css或者图片
  • RK3576 Yolo 部署
  • PyTorch实战(12)——StyleGAN详解与实现
  • 七八章习题测试
  • 从传统Cube到现代化指标体系:物化视图驱动的指标平台升级之路
  • 学做衣服网站知乎/推广优化师
  • 内网电脑做网站/宁波正规优化seo公司
  • wordpress显示10篇文章/企业网站seo托管怎么做
  • finebi商业智能软件/seo霸屏
  • 新手建网站视频教程/美国新冠疫情最新消息
  • vb.net做网站/如何创建一个平台