laxamar / gpiosysv
一个库,用于访问树莓派的GPIO引脚,无需root权限,适用于使用SysV消息队列和客户端/服务器模式的客户端。
1.4.2
2022-10-14 17:44 UTC
Requires
- php: ^7.4||^8.0
- ext-pcntl: *
- ext-sysvmsg: *
Requires (Dev)
- phpunit/phpunit: ^9.3
- dev-master
- 1.4.2
- 1.4.1
- v1.4
- v1.3.1
- v1.3
- v1.2.8
- v1.2.7
- v1.2.6
- v1.2.5
- v1.2.3
- v1.2.2
- v1.2.1
- v1.2
- v1.1.1
- v1.1
- v1.0.2
- v1.0.1
- v1.0
- v0.9.2
- v0.9.1
- v0.9
- v0.8.9.9
- v0.8.9.8
- v0.8.9.7
- v0.8.9.6
- v0.8.9.5
- v0.8.9
- v0.8.8
- v0.8.7
- v0.8.6
- v0.8.5
- v0.8
- v0.7
- v0.6.7.1
- v0.6.7
- v0.6.6
- v0.6.5
- v0.6
- v0.5
- 0.4.0
- v0.3.3
- v0.3.2
- v0.3.1
- v0.3.0
- 0.2.2
- v0.2.1
- v0.2.0
- v0.1.2
- v0.1.1
- v0.1.0
- dev-SystemD
- dev-SysV
- dev-rewind-fix
- dev-first-interrupt
This package is auto-updated.
Last update: 2024-09-14 21:46:15 UTC
README
一个用户空间(非root)库,用于低级别访问树莓派的GPIO引脚。这些引脚可以用来控制输出(LED、电机、阀门、泵)或读取输入(传感器)。
改编自 laxamar
安装
此版本包含两个组件。一个可以通过git或composer安装的服务器。一个使用composer安装和运行的客户端。
客户端(服务器作为服务,手动安装)
使用 composer
composer require laxamar/gpiosysv
或者
php composer.phar require laxamar/gpiosysv
服务器代码被安装在composer的service目录下的vendors/laxamar/gpiosysv目录,并可以按照以下方式安装
服务器
服务器可以通过git下载,使用sudo install_systemd.sh将必要的文件安装到/usr/local/GPIOSysV,并安装systemd服务
示例
设置输出引脚
use Amar\GPIOSysV\GPIOSysVClt; // Create a GPIO object $gpio_obj = GPIOSysVClt::getInstance(); // Set the value of the pin high (turn it on) $success = $gpio_obj->setPinHigh(18); $success = $gpio_obj->setPinLow(18); // Set a series on PINs using BCD $gpio->setPinsBinary($board, CS_PINs); for ($dec = 0; $dec < 8; $dec++) { // echo "Decimal $dec"; $gpio->strobeBinary($dec, LED_PINs, FLASH_PIN, 1, 0, $frequency, true, $error); }
输入引脚
use Amar\GPIOSysV\GPIOSysVClt; // Create a GPIO object $gpio_obj = GPIOSysVClt::getInstance(); // Set the value of the pin high (turn it on) $value = $gpio_obj->getPin(4);
进一步阅读
SitePoint发布了一篇关于如何使用PHP为树莓派项目供电的教程,该教程使用了这个库,并展示了带接线图的按钮示例。https://www.sitepoint.com/powering-raspberry-pi-projects-with-php/
更多资源
PiPHP维护了一个资源目录,用于在树莓派上使用PHP编程。