OpenWrt:通过GPIO管脚控制LED灯

网友投稿 1783 2022-12-01

OpenWrt:通过GPIO管脚控制LED灯

OpenWrt:通过GPIO管脚控制LED灯

在Linux中,GPIO表达为设备文件, 对GPIO的操作采用文件读写方式即可完成, 这些设备文件在目录/sys/class/gpio/ 中,如下所示:

目录中文件或子目录的作用如下所示:

export    导出控制的GPIO引脚编号

unexport    取消控制的GPIO引脚编号

gpio*    对应的gpio引脚信息

我要控制的LED灯对应的gpio*文件夹为gpio11,但是/sys/class/gpio/中并没有这个文件夹,可以按下列步骤操作

1.导出gpio11

echo 11 > export

2.然后需要设置该GPIO作为输入还是输出,这个LED灯是作为组网成功的指示灯的,所以我们需要输出

cd gpio11

echo out > direction

3.最后通过设置value为0或1来控制LED的开关

echo 1 > value

echo 0 > value

既然可以读写,那当然就通过编程来控制了,下列代码可以使该LED灯间隔1秒闪烁100次

#include #include #include #include int main(void){ FILE *f=nullptr; int i=0; for(;i<100;i++) { if(i%2==0) { f=fopen("/sys/class/gpio/gpio11/value","w"); fprintf(f,"%s","1"); fclose(f); } else { f=fopen("/sys/class/gpio/gpio11/value","w"); fprintf(f,"%s","0"); fclose(f); } sleep(1); } fclose(f); return 0;}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:C++笔试题之实现单链表两两反转(置换)
下一篇:如何通过外部电脑访问kafka服务器
相关文章

 发表评论

暂时没有评论,来抢沙发吧~