WiringPi 2.0库的Python接口,允许轻松与Raspberry Pi的GPIO引脚接口。还支持i2c和SPI。
项目描述
这是Gordon的WiringPi库的非官方移植。如果遇到问题,请不要给Gordon发邮件,他将无法提供帮助。
有关支持、评论、问题等,请加入WiringPi Discord频道: https://discord.gg/SM4WUVG
WiringPi for Python
WiringPi:为Raspberry Pi实现大多数Arduino Wiring功能。
WiringPi实现了管理IO扩展器的新功能。
快速安装
库已打包在PyPI上,可以使用pip安装
pip install wiringpi
使用方法
import wiringpi
# One of the following MUST be called before using IO functions:
wiringpi.wiringPiSetup() # For sequential pin numbering
# OR
wiringpi.wiringPiSetupSys() # For /sys/class/gpio with GPIO pin numbering
# OR
wiringpi.wiringPiSetupGpio() # For GPIO pin numbering
通用IO
wiringpi.pinMode(6, 1) # Set pin 6 to 1 ( OUTPUT )
wiringpi.digitalWrite(6, 1) # Write 1 ( HIGH ) to pin 6
wiringpi.digitalRead(6) # Read pin 6
设置外围设备
WiringPi支持通过设置端口扩展器来扩展可用的“引脚”范围。您的端口扩展器的实现细节将透明处理,您可以将额外的引脚(从PIN_OFFSET >= 64开始)写入,就像它们是Pi上的普通引脚一样。
wiringpi.mcp23017Setup(PIN_OFFSET, I2C_ADDR)
此示例在快速2wire板上进行了测试,其中一个数字IO扩展板通过I2C连接
wiringpi.mcp23017Setup(65, 0x20)
wiringpi.pinMode(65, 1)
wiringpi.digitalWrite(65, 1)
软音
将扬声器连接到您的Pi,并使用软音生成音乐。对于调制AC等其他用途生成频率也很有用。
wiringpi.softToneCreate(PIN)
wiringpi.softToneWrite(PIN, FREQUENCY)
位移位
wiringpi.shiftOut(1, 2, 0, 123) # Shift out 123 (b1110110, byte 0-255) to data pin 1, clock pin 2
串行
serial = wiringpi.serialOpen('/dev/ttyAMA0', 9600) # Requires device/baud and returns an ID
wiringpi.serialPuts(serial, "hello")
wiringpi.serialClose(serial) # Pass in ID
SPI
在Python 3中,wiringPiSPIDataRW() 函数需要传递一个 bytes 对象。在Python 2中,它接受一个字符串。以下代码在Python 2和Python 3中都应该有效。
wiringpi.wiringPiSPISetup(channel, speed)
buf = bytes([your data here])
retlen, retdata = wiringpi.wiringPiSPIDataRW(0, buf)
现在,retlen 将包含调用接收/读取的字节数。 retdata 将包含实际数据,在Python 3中,buf 也将被修改以包含它(在Python 2中不会发生这种情况,因为那时 buf 是一个字符串,而字符串是不可变的)。
API的完整详情请见: http://www.wiringpi.com
手动构建
获取/设置仓库
git clone --recursive https://github.com/WiringPi/WiringPi-Python.git
cd WiringPi-Python
别忘了使用 --recursive;这是必需的,以从其自己的仓库中拉取WiringPi C代码。
先决条件
为了重新构建绑定,您首先必须安装 swig,python-dev,和 python-setuptools(或它们的 python3- 等效版本)。WiringPi 还应作为系统范围内的安装,以便访问 gpio 工具。
sudo apt-get install python-dev python-setuptools swig wiringpi
使用以下命令构建和安装:
sudo python setup.py install
或者Python 3
sudo python3 setup.py install
项目详情
下载文件
下载适合您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。
源分布
构建的发行版
wiringpi-2.60.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b0c65d5d7c65d0bbef25c56d90237ca4098b1edabc528fb48dc6b61d62cd4b7d |
|
MD5 | 78beceab8a759be2e6ab6e6d507f180c |
|
BLAKE2b-256 | d39c08eb589c718cda9f2168649f1952aa9cb3711dc93d765991a6741cf6a8b7 |