zoukankan      html  css  js  c++  java
  • beaglebone_black_学习笔记——(8)GPIO输入之KEY

      今天笔者在LED灯的基础上写了一个GPIO作为输入端口的例子。实验中笔者采用一个按键作为IO输入设备,然后用bb_black去采集当前的信息。

    第一步:硬件介绍

      1、按键介绍

      轻触按键的结构如下图所示,按键的1,2脚,3,4脚是分别连在一起的,当按下按键是也就是将1,3(或者2,4)引脚短接,松开时两脚间开路。

    image

      2、硬件原理

    image

      注:

      (1)为了防止误操作时,3.3V将IO口烧掉笔者在按键与3.3V之间连接了一个限流电阻(10k);

      (2)本实验笔者使用了P8排座的14引脚,也就是GPIO_26引脚。

      3、硬件连接

      笔者使用的按键是从废旧的板子上拆下来的,焊接了两根线,两根线的另一头直接焊接了插针,焊接部位用热缩管抱住,在做各种开发的时候使用起来非常的简单实用。

    IMG_20150308_151541_1425798972113

    第二步:软件代码

      1、先看看第一部分的代码

     1 #include <stdio.h> 
     2 #define GPIO_DIR "/sys/class/gpio/"
     3 
     4 int main() 
     5 { 
     6     FILE *stream=NULL; 
     7     char a[10]; 
     8     stream=fopen(GPIO_DIR"export","w");
     9 
    10     fwrite("26",sizeof(int),2,stream); 
    11     fclose(stream);
    12 
    13 
    14     stream=fopen(GPIO_DIR"gpio26/direction","r+"); 
    15     fwrite("in",sizeof(char),2,stream); 
    16     fclose(stream); 
    17     while(1) 
    18     { 
    19         stream=fopen(GPIO_DIR"gpio26/value","r+"); 
    20         fscanf(stream,"%s",a); 
    21         printf("%s
    ",a); 
    22         fclose(stream); 
    23         sleep(1); 
    24     }
    25 
    26     return 0; 
    27 } 

     注:

    (1)关于fopen,fwrite,fread,fclose的用法参照笔者的另外一篇笔记http://www.cnblogs.com/zhezhe1988/p/4264482.html;

      2、实验结果:

    image

  • 相关阅读:
    从外部访问 Template (模板)的控件、获取它的属性值
    继续聊WPF——动态数据模板
    WPF数据模板样式选择器
    深入理解正则表达式
    nssm使用,安装服务、删除服务
    Windows删除某服务
    nssm设置solr开机启动服务
    Windows下直接双击可执行的jar
    Unsupported major.minor version 52.0——解决
    js延迟2秒执行事件
  • 原文地址:https://www.cnblogs.com/zhezhe1988/p/4338417.html
Copyright © 2011-2022 走看看