Android14上使用libgpiod[gpioinfo gpioget gpioset ...]

news/2025/1/12 11:59:30/

环境

$ cat /etc/os-release
NAME="Ubuntu"
VERSION="20.04.5 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.5 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal
 

tool下载

https://github.com/technexion-android/platform_external_libgpiod.git icon-default.png?t=O83Ahttps://github.com/technexion-android/platform_external_libgpiod.git%C2%A0android/external$ tree platform_external_libgpiod/
platform_external_libgpiod/
├── Android.bp
├── COPYING
├── include
│   ├── gpiod.h
│   └── linux
│       └── gpio.h
├── README
└── src
    ├── lib
    │   ├── config.h
    │   ├── core.c
    │   ├── ctxless.c
    │   ├── helpers.c
    │   ├── iter.c
    │   └── misc.c
    └── tools
        ├── gpiodetect.c
        ├── gpiofind.c
        ├── gpioget.c
        ├── gpioinfo.c
        ├── gpiomon.c
        ├── gpioset.c
        ├── tools-common.c
        └── tools-common.h

5 directories, 19 files
 

 tool编译

source build/envsetup.sh
lunch rk3576_u-userdebug

mmm external/platform_external_libgpiod/

放到板子 

adb push out\target\product\rk3576_u\system\lib64\libgpiod.so /data/local/tmp
adb push out\target\product\rk3576_u\system\bin\gpiodetect /data/local/tmp
adb push out\target\product\rk3576_u\system\bin\gpiofind /data/local/tmp
adb push out\target\product\rk3576_u\system\bin\gpioget /data/local/tmp
adb push out\target\product\rk3576_u\system\bin\gpioinfo /data/local/tmp
adb push out\target\product\rk3576_u\system\bin\gpiomon /data/local/tmp
adb push out\target\product\rk3576_u\system\bin\gpioset /data/local/tmp
export LD_LIBRARY_PATH=/data/local/tmp
export PATH=/data/local/tmp:$PATH

设置环境

export LD_LIBRARY_PATH=/data/local/tmp
export PATH=/data/local/tmp:$PATH 

 gpiodetect

rk3576_u:/ # gpiodetect
gpi


http://www.ppmy.cn/news/1562498.html

相关文章

计算机视觉算法实战——实例分割

✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连✨ ​​​​​​ ​​​​​​​​​​​​ ​​​​​ 1. 算法基本原理✨✨ 实例分割(Instance Segmentation)是计算机视…

Adobe Flash,Flash Player和RTMP之间的关系

flash也有很多版本,主要就分为Adobe Flash和Flash Player,那么二者间有什么关联呢? 母公司都是Adobe,flashplayer主要是网页播放插件,有些时候电脑里也会内置flashplayer来播放swf矢量动画文件。而swf文件动画又是Ado…

Spring——自动装配

假设一个场景: 一个人(Person)有一条狗(Dog)和一只猫(Cat),狗和猫都会叫,狗叫是“汪汪”,猫叫是“喵喵”,同时人还有一个自己的名字。 将上述场景 抽象出三个实体类&…

Perl语言的循环实现

Perl语言的循环实现 引言 Perl是一种强大的脚本语言,以其灵活的语法和强大的文本处理能力著称。无论是在系统管理、网络编程,还是在Web应用开发中,Perl都广泛应用于各种领域。循环是编程语言中一个极其重要的概念,它允许程序重复…

计算机网路HTTP、TCP详解

HTTP HTTP基本概念 HTTP(超文本传输协议):HTTP是在计算机世界中两点之间传输文字、图片、视频等超文本内容数据的约束与规范。 常见状态码: 2xx:报文被收到,已经在正确处理中。 3xx:重定向…

搭建docker私有化仓库Harbor

Docker私有仓库概述 Docker私有仓库介绍 Docker私有仓库是个人、组织或企业内部用于存储和管理Docker镜像的存储库。Docker默认会有一个公共的仓库Docker Hub,而与Docker Hub不同,私有仓库是受限访问的,只有授权用户才能够上传、下载和管理其中的镜像。这种私有仓库可以部…

HOW - Form 表单确认校验两种模式(以 Modal 场景为例)

目录 一、背景二、具体1. 模式一:点击确认进行校验提示2. 模式二:确认按钮依赖于表单内容实现说明 一、背景 基于react、antd form分别实现如下两种模式: 1、一个 Modal,点击确认进行校验提示2、一个 Modal,确认按钮…

蓝桥杯嵌入式速通(1)

1.工程准备 创建一文件夹存放自己的代码,并在mdk中include上文件夹地址 把所有自身代码的头文件都放在headfile头文件中,之后只需要在新的文件中引用headfile即可 headfile中先提前可加入 #include "stdio.h" #include "string.h"…