2014-09-25 17 views
0

我如何在c中訪問gpio電子白板?在c的gpio編程用於電子白板

我有一個ubuntu 14.04的wandboard,想要在我的c程序中訪問我們的gpio。 我可以在shell腳本中訪問,並且我可以將腳本放入我的c代碼中,但我想要一種直接訪問gpio模式的我的c代碼,而無需使用shell命令。

這是我的shell命令

echo 91 > /sys/class/gpio/export 
echo out > /sys/class/gpio/gpio91/direction 
echo 1 > /sys/class/gpio/gpio91/value 
echo 0 > /sys/class/gpio/gpio91/value 
+2

這些是文件。只需打開它們並寫入。你認爲echo命令對他們有什麼樣的魔法? – indiv 2014-09-25 19:20:40

+0

使用這些命令,我​​可以從GPIO引腳讀取或寫入信號,例如可以使用原型板 – user3651443 2014-09-25 19:29:53

回答

1

只需使用基本的C文件IO。

echo 91 > /sys/class/gpio/export 

FILE *fp = fopen("/sys/class/gpio/export", "w"); 
if (fp) { 
    if (fprintf(fp, "91") < 0) { 
     perror("fprintf to /sys/class/gpio/export"); 
    } 
    if (fclose(fp) == EOF) { 
     // error can very well happen when fclose flushes, must check 
     perror("fclose of /sys/class/gpio/export"); 
    } 
} else { 
    perror("fopen of /sys/class/gpio/export"); 
} 

擴大,爲其他案件應該很容易。