我目前遇到了使用Beaglebone黑色板的GPIO引脚的问题。
我正在寻找一种在C语言中从GPIO引脚p8_4读取值的正确方法。我尝试过使用一个库,该库使用了一种旧的不受支持的方式,在设备树引入之前的时代中使用,如果我理解得正确的话。
我尝试找到其他解决方案,但似乎找不到一个。是否有人能帮我在C中找到正确的解决方案?
我目前遇到了使用Beaglebone黑色板的GPIO引脚的问题。
我正在寻找一种在C语言中从GPIO引脚p8_4读取值的正确方法。我尝试过使用一个库,该库使用了一种旧的不受支持的方式,在设备树引入之前的时代中使用,如果我理解得正确的话。
我尝试找到其他解决方案,但似乎找不到一个。是否有人能帮我在C中找到正确的解决方案?
这里是一段C代码:
#include <stdio.h>
int main()
{
FILE *io,*iodir,*ioval;
io = fopen("/sys/class/gpio/export", "w");
fseek(io,0,SEEK_SET);
fprintf(io,"%d",39);
fflush(io);
iodir = fopen("/sys/class/gpio/gpio39/direction", "w");
fseek(iodir,0,SEEK_SET);
fprintf(iodir,"out");
fflush(iodir);
ioval = fopen("/sys/class/gpio/gpio39/value", "w");
fseek(ioval,0,SEEK_SET);
while(1)
{
fprintf(ioval,"%d",1);
fflush(ioval);
sleep(1);
fprintf(ioval,"%d",0);
fflush(ioval);
sleep(1);
}
fclose(io);
fclose(iodir);
fclose(ioval);
return 0;
}
请确保进行适当的错误检查。
关注Derek Molloy的Beaglebone网站他的网站