wiringPi 程序运行权限的问题

最近用c wiringPi学习控制led,例程编译后在linux命令界面能正常运行。

后来尝试在apache环境,通过web控制led,始终不能点亮,

后来发现 在这个函数wiringPiSetup(); 就卡住了。

反复测试,发现是编译好的led程序的权限不够,

chmod 4755 led 

赋予权限后再通过web调用就能正常控制led了。

由于apache是搭建在linux系统中,许多linux的操作,需要权限才能执行。

所以,如果单独调试的程序能正常执行,如果换了环境就出错误,就要考虑程序的执行权限的问题

 

补充:

有博文说,https://blog.csdn.net/qq_31669419/article/details/53339770

在树莓派中运行opencv与GPIO结合的程序时,如果使用wiringPiSetup()设置函数初始化wiringPi系统,运行程序时必需获取root权限,但此时若调用函数imshow时出错

其实,在wiringPi中还提供了wiringPiSetupSys(void)初始化函数,它可以被非root用户调用,提供的GPIO引脚必须在事先使用gpio命令导出。在这种模式下的引脚编号是原生的Broadcom GPIO引脚编号(BCM)。

wiringPiSetupSys();
pinMode(17,OUTPUT);//BCM第17脚就是wringPI第0脚

在运行程序之前,先在终端中输入指令

gpio export 17 out

 

------------------------------------

感觉有点麻烦,还是给权限吧

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值