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\n",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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM