日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

android gpio操作

發(fā)布時(shí)間:2025/4/16 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android gpio操作 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

public class GPIOUtil {
? ? //讀GPIO
? ? private String getGpioString(String path) {
? ? ? ? String defString = "0";// 默認(rèn)值
? ? ? ? try {
? ? ? ? ? ? @SuppressWarnings("resource")
? ? ? ? ? ? BufferedReader reader = new BufferedReader(new FileReader(path));
? ? ? ? ? ? defString = reader.readLine();
? ? ? ? } catch (IOException e) {
? ? ? ? ? ? e.printStackTrace();
? ? ? ? }
? ? ? ? return defString;
? ? }


? ? //將GPIO口設(shè)置為輸出的時(shí)候,默認(rèn)是輸出,調(diào)用下面的方法即可變成默認(rèn)輸入
? ? public boolean gpio_input0(View v) {
? ? ? ? return ?RootCommand("echo ?2 > /sys/class/backlight/rk28_bl/gpio0");
? ? }
? ? public boolean gpio_input1(View v) {
? ? ? ? return ?RootCommand("echo ?2 > /sys/class/backlight/rk28_bl/gpio1");
? ? }
? ? public boolean gpio_input2(View v) {
? ? ? ? return RootCommand("echo ?2 > /sys/class/backlight/rk28_bl/gpio2");
? ? }

? ? //當(dāng)GPIO口為輸出的時(shí)候,通過(guò)以下的辦法來(lái)控制高低電平
? ? public boolean set_gpio0_high(View v) { ? //拉高
? ? ? ? boolean FLAG = RootCommand("echo ?1 > /sys/class/backlight/rk28_bl/gpio1");
? ? ? ? Log.e("123high", String.valueOf(FLAG));
? ? ? ? return FLAG;
? ? }

? ? public boolean set_gpio0_low(View v) { ? ?//拉低
? ? ? ? boolean FLAG = ?RootCommand("echo 0 > /sys/class/backlight/rk28_bl/gpio1");
? ? ? ? Log.e("123low", String.valueOf(FLAG));
// ? ? ? ?read_gpio0();
? ? ? ? return FLAG;
? ? }
? ? // ?其他的GPIO口都是一樣的方法(gpio0、gpio1、gpio2、gpio3)
? ? //下面的是執(zhí)行的方法
? ? private boolean RootCommand(String command) {
? ? ? ? Process process = null;
? ? ? ? DataOutputStream os = null;
? ? ? ? try {
? ? ? ? ? ? process = Runtime.getRuntime().exec("su");
? ? ? ? ? ? os = new DataOutputStream(process.getOutputStream());
? ? ? ? ? ? os.writeBytes(command + "\n");
? ? ? ? ? ? os.writeBytes("exit\n");
? ? ? ? ? ? os.flush();
? ? ? ? ? ? process.waitFor();
? ? ? ? } catch (Exception e) {
? ? ? ? ? ? return false;
? ? ? ? } finally {
? ? ? ? ? ? try {
? ? ? ? ? ? ? ? if (os != null) {
? ? ? ? ? ? ? ? ? ? os.close();
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? process.destroy();
? ? ? ? ? ? } catch (Exception e) {
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? return true;
? ? }
---------------------?
作者:馬偵銘?
來(lái)源:CSDN?
原文:https://blog.csdn.net/zhenming_ma/article/details/80264002?
版權(quán)聲明:本文為博主原創(chuàng)文章,轉(zhuǎn)載請(qǐng)附上博文鏈接!

總結(jié)

以上是生活随笔為你收集整理的android gpio操作的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。