如果搭建树莓派的服务器和PHP没有问题,可以用exec执行python程序,比如打印hello world

但是如果调用python的GPIO库,则没有反应,php代码:

<?php// echo "hello python";exec("python3 test1.py",$out);foreach($out as $value){echo $value."<br/>";}
?>

以为是环境问题,所以加了个echo,发现正常,那么应该是python问题。python如下:

##树莓派IO控制基础方法
#!/usr/bin/python3
import RPi.GPIO as GPIO
import time
print("这是点灯演示")
GPIO.setmode(GPIO.BCM)      ##设置为BCM模式,管脚对应的是BCM编号
print("point 1")
GPIO.setup(2, GPIO.OUT)     ##设置2脚为输出
print("point 2")
GPIO.output(2, GPIO.LOW)
blinks = 0
print('开始闪烁')
while (blinks < 5):GPIO.output(2, GPIO.HIGH) ##点灯print("点灯")time.sleep(0.5)GPIO.output(2, GPIO.LOW)    ##关灯print("关灯")time.sleep(0.5)blinks = blinks + 1
GPIO.output(2, GPIO.LOW)
GPIO.cleanup()
print('结束闪烁')

加了两个打印点,结果point1可以出来,point2不能出来,所以是库的问题,一搜原来是sudo权限。参考:

https://blog.csdn.net/lanlz/article/details/76250999

树莓派的这个GPIO库需要sudo才能设置,所以导致在shell可以执行,而被php调用则不行。即使将php文件设置为777,由于服务器的权限是普通用户,所以仍然没用。

使用命令sudo visudo,在最后增加

www-data ALL=(ALL) NOPASSWD: ALL

相当于将服务器设置为管理员用户。

如果树莓派挂外网,肯定不行,但是自己用在内网玩浇花,所以随便了。。

这样,访问php文件后,树莓派点灯正常。

php控制树莓派GPIO相关推荐

  1. java gpio_Java控制树莓派GPIO口-Pi4J

    Pi4J(http://pi4j.com/)是专门用来控制树莓派GPIO口以及通信的Java库.它有如下功能: Export & unexport GPIO pins Configure GP ...

  2. 树莓派系列-6-Qt控制树莓派GPIO(3B V1.2)

    Qt 控制树莓派GPIO ​ 今天来个临时小任务,使用树莓派通过GPIO引脚控制继电器开关. 文章目录 Qt 控制树莓派GPIO 系统安装 安装Qt 树莓派引脚图 在Shell中测试 在Qt中编码 在 ...

  3. android客户端控制树莓派GPIO点亮LED灯

    首先需要android客户端与树莓派进行连接,树莓派与android客户端利用wifi连接并进行socket通信请参考我的另一片文章:https://mp.csdn.net/postedit/7991 ...

  4. python控制树莓派led_Python 控制树莓派 GPIO 输出:控制 LED 灯

    树莓派 GPIO 控制输出的入门应该都是从控制 LED 灯开始的吧. 树莓派版本:Model 3B+ 树莓派系统:Raspbian Stretch with desktop and recommend ...

  5. python控制灯_Python 控制树莓派 GPIO 输出:控制 LED 灯

    树莓派 GPIO 控制输出的入门应该都是从控制 LED 灯开始的吧. 树莓派版本:Model 3B+ 树莓派系统:Raspbian Stretch with desktop and recommend ...

  6. python控制树莓派gpioled,Python 控制树莓派 GPIO 输出:控制 LED 灯

    树莓派 GPIO 控制输出的入门应该都是从控制 LED 灯开始的吧. 树莓派版本:Model 3B+ 树莓派系统:Raspbian Stretch with desktop and recommend ...

  7. matlab控制树莓派3b,树莓派3B+ 手机h5网页控制GPIO

    ezgif-4-5d181e9b42.gif 本文介绍如何在H5页面控制树莓派GPIO 仅实现以BCM编码方式控制GPIO,其他方式未做. 演示地址:http://gpio.exmll.cn/ 点击B ...

  8. Linux学习~树莓派gpio控制

    WiringPi 是应用于树莓派平台的 GPIO 控制库函数,WiringPi 遵守 GUN Lv3.wiringPi 使用 C 或者 C++ 开发并且可以被其他语言包转,例如 Python.ruby ...

  9. Raspberry Pi 4B树莓派 |#入门教程02# 树莓派GPIO控制(Python、C)

    树莓派GPIO编号方式 功能物理引脚 从左到右,从上到下:左边奇数,右边偶数:1-40 通过打开终端窗口并运行命令,可以在Raspberry Pi上访问方便的参考pinout.该工具由GPIO零 Py ...

最新文章

  1. ComponentOne Silverlight C1TabItem 关闭按钮tooltip提示汉化localization
  2. VMware 使用
  3. springboot整合websocket实现一对一消息推送和广播消息推送
  4. OpenCV Sobel检测算子和Scharr检测算子
  5. php while for 性能,php的foreach,while,for的性能比较
  6. 用配置还用Attribute来实现IoC?
  7. python zip dict_关于python:zip(list)和zip(* list)之间的区别
  8. svn的安装出现报错问题解决办法
  9. Bat脚本-timeout 命令
  10. vue读取服务器文件,vue读取txt文件
  11. Seaweed-fs
  12. 身份证识别SDK——混合非原生调用
  13. HBase综合测试(头歌实践教学项目)
  14. python中pass的含义_python中pass语句意义与作用(实例分析)
  15. | 一文 uiautomator2 自动化测试工具使用
  16. python创建_python 创建txt并写入Python基础1 Hello World!
  17. 基于物联网的环境监控系统设计与实现
  18. 真Unity3d_立个Flag_PBR学习路径
  19. 电脑开机黑屏一串英文_电脑开机黑屏一串英文怎么办
  20. linux 工程师 考试试题,2017年信息安全工程师考试下午试题加答案

热门文章

  1. 2021年西式面点师(初级)考试题库及西式面点师(初级)考试试题
  2. 从C/C++到Python(之一)(By Robinvane Suen)
  3. 计算机基本单位——位、字节、字、字长
  4. SQL Server 2019:硬件和软件要求
  5. 主板声卡坏了会不会有电流声_2020年|短视频直播间设备(手机,直播声卡,麦克风,监听耳机,摄影补光灯)选购推荐指南...
  6. mybatis-plus乐观锁配置
  7. iOS自动自动隐藏软键盘
  8. WPF路径绘图制作心形
  9. JavaWeb自我学习——进一步学习MyBatis
  10. IDEA 报错 Cannot connect to the Maven process. If the problem persists, check the jdk.