实现GPIO获取IO口数据,将连接到车载屏上的门磁开关或者其他开关信息通过GPIO采集到Android平板
package com.example.x6.gpio_3288demo;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
/*
IO 信息,下面的例子就是GPIO1_D0
*/
private static int numgroup = 1;
private static char group = 'D';
private static int num = 1;
private final static String TAG = "gpioctl";
private GpioUtils gpioUtils;
private TextView disp;
private Button open;
private Button setdirection;
private CheckBox isIn;
private Button setvalue;
private CheckBox isLow;
private Button getvalue;
private Button close;
private static boolean is_in = false;
private static boolean is_low = false;
private static int high = 1;
private static int low = 0;
private static int io = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
init();
open.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
gpioUtils = GpioUtils.getGpioUtils();
io = gpioUtils.getGpioPin(numgroup,group,num);
Log.e(TAG,String.valueOf(io));
}
});
setdirection.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(is_in) {
gpioUtils.setGpioDirection(io, 1);
}else{
gpioUtils.setGpioDirection(io,0);
}
}
});
isIn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(isIn.isChecked()){
is_in = true;
}else{
is_in = false;
}
}
});
isLow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(isLow.isChecked()){
is_low = true;
}else{
is_low = false;
}
}
});
setvalue.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(!is_in){
if(is_low){
gpioUtils.gpioSetValue(io,low);
}else{
gpioUtils.gpioSetValue(io,high);
}
}
}
});
getvalue.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(is_in){
if(low == gpioUtils.gpioGetValue(io)){
disp.setText( "电平状态(GETVALUE):" "low");
}else{
disp.setText("电平状态(GETVALUE):" "high");
}
}
}
});
close.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(gpioUtils != null)
gpioUtils.close();
MainActivity.this.finish();
}
});
}
private void init() {
disp = (TextView) findViewById(R.id.disp);
open = (Button) findViewById(R.id.open);
setdirection = (Button) findViewById(R.id.setdirection);
isIn = (CheckBox) findViewById(R.id.isIn);
setvalue = (Button) findViewById(R.id.setvalue);
isLow = (CheckBox) findViewById(R.id.isLow);
getvalue = (Button) findViewById(R.id.getvalue);
close = (Button) findViewById(R.id.close);
}
}
资源文件列表
gpio_3288demo/.gitignore , 187
gpio_3288demo/.gradle/4.6/fileChanges/last-build.bin , 1
gpio_3288demo/.gradle/4.6/fileContent/fileContent.lock , 17
gpio_3288demo/.gradle/4.6/fileHashes/fileHashes.bin , 436982
gpio_3288demo/.gradle/4.6/fileHashes/fileHashes.lock , 17
gpio_3288demo/.gradle/4.6/fileHashes/resourceHashesCache.bin , 20741
gpio_3288demo/.gradle/4.6/javaCompile/classAnalysis.bin , 603612
gpio_3288demo/.gradle/4.6/javaCompile/jarAnalysis.bin , 254885
gpio_3288demo/.gradle/4.6/javaCompile/javaCompile.lock , 17
gpio_3288demo/.gradle/4.6/javaCompile/taskHistory.bin , 193618
gpio_3288demo/.gradle/4.6/javaCompile/taskJars.bin , 28741
gpio_3288demo/.gradle/4.6/taskHistory/taskHistory.bin , 2357894
gpio_3288demo/.gradle/4.6/taskHistory/taskHistory.lock , 17
gpio_3288demo/.gradle/buildOutputCleanup/buildOutputCleanup.lock , 17
gpio_3288demo/.gradle/buildOutputCleanup/cache.properties , 51
gpio_3288demo/.gradle/buildOutputCleanup/outputFiles.bin , 23051
gpio_3288demo/.gradle/vcsWorkingDirs/gc.properties , 0
gpio_3288demo/.idea/caches/build_file_checksums.ser , 545
gpio_3288demo/.idea/codeStyles/Project.xml , 1803
gpio_3288demo/.idea/gradle.xml , 626
gpio_3288demo/.idea/libraries/Gradle__android_arch_core_common_1_1_1_jar.xml , 541
gpio_3288demo/.idea/libraries/Gradle__android_arch_core_runtime_1_1_1.xml , 655
gpio_3288demo/.idea/libraries/Gradle__android_arch_lifecycle_common_1_1_1_jar.xml , 556
gpio_3288demo/.idea/libraries/Gradle__android_arch_lifecycle_livedata_1_1_1.xml , 671
gpio_3288demo/.idea/libraries/Gradle__android_arch_lifecycle_livedata_core_1_1_1.xml , 695
gpio_3288demo/.idea/libraries/Gradle__android_arch_lifecycle_runtime_1_1_1.xml , 666
gpio_3288demo/.idea/libraries/Gradle__android_arch_lifecycle_viewmodel_1_1_1.xml , 676
gpio_3288demo/.idea/libraries/Gradle__com_android_support_animated_vector_drawable_28_0_0.xml , 522
gpio_3288demo/.idea/libraries/Gradle__com_android_support_appcompat_v7_28_0_0.xml , 678
gpio_3288demo/.idea/libraries/Gradle__com_android_support_asynclayoutinflater_28_0_0.xml , 507
gpio_3288demo/.idea/libraries/Gradle__com_android_support_collections_28_0_0_jar.xml , 375
gpio_3288demo/.idea/libraries/Gradle__com_android_support_constraint_constraint_layout_1_1_3.xml , 509
gpio_3288demo/.idea/libraries/Gradle__com_android_support_constraint_constraint_layout_solver_1_1_3_jar.xml , 433
gpio_3288demo/.idea/libraries/Gradle__com_android_support_coordinatorlayout_28_0_0.xml , 698
gpio_3288demo/.idea/libraries/Gradle__com_android_support_cursoradapter_28_0_0.xml , 489
gpio_3288demo/.idea/libraries/Gradle__com_android_support_customview_28_0_0.xml , 480
gpio_3288demo/.idea/libraries/Gradle__com_android_support_documentfile_28_0_0.xml , 486
gpio_3288demo/.idea/libraries/Gradle__com_android_support_drawerlayout_28_0_0.xml , 678
gpio_3288demo/.idea/libraries/Gradle__com_android_support_interpolator_28_0_0.xml , 486
gpio_3288demo/.idea/libraries/Gradle__com_android_support_loader_28_0_0.xml , 468
gpio_3288demo/.idea/libraries/Gradle__com_android_support_localbroadcastmanager_28_0_0.xml , 513
gpio_3288demo/.idea/libraries/Gradle__com_android_support_print_28_0_0.xml , 650
gpio_3288demo/.idea/libraries/Gradle__com_android_support_slidingpanelayout_28_0_0.xml , 501
gpio_3288demo/.idea/libraries/Gradle__com_android_support_support_annotations_28_0_0_jar.xml , 399
gpio_3288demo/.idea/libraries/Gradle__com_android_support_support_compat_28_0_0.xml , 686
gpio_3288demo/.idea/libraries/Gradle__com_android_support_support_core_ui_28_0_0.xml , 495
gpio_3288demo/.idea/libraries/Gradle__com_android_support_support_core_utils_28_0_0.xml , 504
gpio_3288demo/.idea/libraries/Gradle__com_android_support_support_fragment_28_0_0.xml , 694
gpio_3288demo/.idea/libraries/Gradle__com_android_support_support_vector_drawable_28_0_0.xml , 519
gpio_3288demo/.idea/libraries/Gradle__com_android_support_swiperefreshlayout_28_0_0.xml , 702
gpio_3288demo/.idea/libraries/Gradle__com_android_support_test_espresso_espresso_core_3_0_2.xml , 718
gpio_3288demo/.idea/libraries/Gradle__com_android_support_test_espresso_espresso_idling_resource_3_0_2.xml , 773
gpio_3288demo/.idea/libraries/Gradle__com_android_support_test_monitor_1_0_2.xml , 670
gpio_3288demo/.idea/libraries/Gradle__com_android_support_test_runner_1_0_2.xml , 665
gpio_3288demo/.idea/libraries/Gradle__com_android_support_versionedparcelable_28_0_0.xml , 507
gpio_3288demo/.idea/libraries/Gradle__com_android_support_viewpager_28_0_0.xml , 477
gpio_3288demo/.idea/libraries/Gradle__com_google_code_findbugs_jsr305_2_0_1_jar.xml , 367
gpio_3288demo/.idea/libraries/Gradle__com_squareup_javawriter_2_1_1_jar.xml , 546
gpio_3288demo/.idea/libraries/Gradle__javax_inject_javax_inject_1_jar.xml , 536
gpio_3288demo/.idea/libraries/Gradle__junit_junit_4_12_jar.xml , 495
gpio_3288demo/.idea/libraries/Gradle__net_sf_kxml_kxml2_2_3_0_jar.xml , 518
gpio_3288demo/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3_jar.xml , 551
gpio_3288demo/.idea/libraries/Gradle__org_hamcrest_hamcrest_integration_1_3_jar.xml , 586
gpio_3288demo/.idea/libraries/Gradle__org_hamcrest_hamcrest_library_1_3_jar.xml , 565
gpio_3288demo/.idea/misc.xml , 2116
gpio_3288demo/.idea/modules.xml , 363
gpio_3288demo/.idea/runConfigurations.xml , 564
gpio_3288demo/.idea/workspace.xml , 216539
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/.ninja_deps , 7068
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/.ninja_log , 181
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/android_gradle_build.json , 1757
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/android_gradle_build_mini.json , 683
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/build.ninja , 12035
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/CMakeCache.txt , 13967
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/CMakeFiles/3.6.0-rc2/CMakeCCompiler.cmake , 2923
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/CMakeFiles/3.6.0-rc2/CMakeCXXCompiler.cmake , 5472
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/CMakeFiles/3.6.0-rc2/CMakeDetermineCompilerABI_C.bin , 10544
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/CMakeFiles/3.6.0-rc2/CMakeDetermineCompilerABI_CXX.bin , 10560
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/CMakeFiles/3.6.0-rc2/CMakeSystem.cmake , 446
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/CMakeFiles/cmake.check_cache , 86
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/CMakeFiles/CMakeOutput.log , 35372
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/CMakeFiles/feature_tests.bin , 14496
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/CMakeFiles/feature_tests.c , 762
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/CMakeFiles/feature_tests.cxx , 9249
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/CMakeFiles/ioctl.dir/src/main/cpp/ioctl.c.o , 36480
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/CMakeFiles/TargetDirectories.txt , 301
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/cmake_build_command.txt , 620
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/cmake_build_output.txt , 939
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/cmake_install.cmake , 1483
gpio_3288demo/app/.externalNativeBuild/cmake/debug/arm64-v8a/rules.ninja , 2646
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/.ninja_deps , 7200
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/.ninja_log , 185
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/android_gradle_build.json , 1829
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/android_gradle_build_mini.json , 693
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/build.ninja , 12218
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeCache.txt , 14163
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/3.6.0-rc2/CMakeCCompiler.cmake , 2832
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/3.6.0-rc2/CMakeCXXCompiler.cmake , 5381
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/3.6.0-rc2/CMakeDetermineCompilerABI_C.bin , 40240
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/3.6.0-rc2/CMakeDetermineCompilerABI_CXX.bin , 40316
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/3.6.0-rc2/CMakeSystem.cmake , 446
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/cmake.check_cache , 86
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/CMakeOutput.log , 39002
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/feature_tests.bin , 90292
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/feature_tests.c , 762
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/feature_tests.cxx , 9249
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/ioctl.dir/src/main/cpp/ioctl.c.o , 34656
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/CMakeFiles/TargetDirectories.txt , 307
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/cmake_build_command.txt , 626
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/cmake_build_output.txt , 941
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/cmake_install.cmake , 1485
gpio_3288demo/app/.externalNativeBuild/cmake/debug/armeabi-v7a/rules.ninja , 2652
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/.ninja_deps , 7344
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/.ninja_log , 176
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/android_gradle_build.json , 1712
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/android_gradle_build_mini.json , 653
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/build.ninja , 11995
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/CMakeCache.txt , 13860
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/CMakeFiles/3.6.0-rc2/CMakeCCompiler.cmake , 2692
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/CMakeFiles/3.6.0-rc2/CMakeCXXCompiler.cmake , 5241
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/CMakeFiles/3.6.0-rc2/CMakeDetermineCompilerABI_C.bin , 8364
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/CMakeFiles/3.6.0-rc2/CMakeDetermineCompilerABI_CXX.bin , 8440
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/CMakeFiles/3.6.0-rc2/CMakeSystem.cmake , 443
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/CMakeFiles/cmake.check_cache , 86
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/CMakeFiles/CMakeOutput.log , 31657
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/CMakeFiles/feature_tests.bin , 8208
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/CMakeFiles/feature_tests.c , 762
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/CMakeFiles/feature_tests.cxx , 9249
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/CMakeFiles/ioctl.dir/src/main/cpp/ioctl.c.o , 33184
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/CMakeFiles/TargetDirectories.txt , 283
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/cmake_build_command.txt , 602
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/cmake_build_output.txt , 933
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/cmake_install.cmake , 1477
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86/rules.ninja , 2598
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/.ninja_deps , 7072
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/.ninja_log , 180
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/android_gradle_build.json , 1722
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/android_gradle_build_mini.json , 668
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/build.ninja , 12007
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/CMakeCache.txt , 13840
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/CMakeFiles/3.6.0-rc2/CMakeCCompiler.cmake , 2893
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/CMakeFiles/3.6.0-rc2/CMakeCXXCompiler.cmake , 5442
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/CMakeFiles/3.6.0-rc2/CMakeDetermineCompilerABI_C.bin , 9264
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/CMakeFiles/3.6.0-rc2/CMakeDetermineCompilerABI_CXX.bin , 9304
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/CMakeFiles/3.6.0-rc2/CMakeSystem.cmake , 445
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/CMakeFiles/cmake.check_cache , 86
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/CMakeFiles/CMakeOutput.log , 36701
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/CMakeFiles/feature_tests.bin , 13216
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/CMakeFiles/feature_tests.c , 762
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/CMakeFiles/feature_tests.cxx , 9249
gpio_3288demo/app/.externalNativeBuild/cmake/debug/x86_64/CMakeFiles/ioctl.dir/src/main/cpp/ioctl.c.o , 35456
最多只能显示150条信息!
