**
在树莓派上控制GPIO引脚可以通过Python的RPI.GPIO库,但是对于熟悉Arduino的人来说可能会不大习惯这个库,如果想要延续Arduino的风格的话,可以使用Mr.戈登的wiringPi库(C语言编写,http://wiringpi.com/),其核心函数与Arduino的核心函数基本没什么区别,但是如果使用了该库的话,就难以同时使用Python的其它第三方类库,这是一个麻烦的问题。不过令人高兴的是,有其他的爱好者将wiringPi库wrapper成了包括Python在内的其它语言库,这就极大的方便了使用。该项目地址:https://github.com/WiringPi/WiringPi
**
安装方式:
pip install wiringpi
初始化函数:
wiringpi.wiringPiSetup() # For sequential pin numbering
# OR
wiringpi.wiringPiSetupSys() # For /sys/class/gpio with GPIO pin numbering
# OR
wiringpi.wiringPiSetupGpio() # For GPIO pin numbering
引脚控制:
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
串口通信:
serial = wiringpi.serialOpen('/dev/ttyAMA0', 9600) # Requires device/baud and returns an ID
wiringpi.serialPuts(serial, "hello")
wiringpi.serialClose(serial) # Pass in ID
SPI通信:
wiringpi.wiringPiSPISetup(channel, speed)
buf = bytes([your data here])
retlen, retdata = wiringpi.wiringPiSPIDataRW(0, buf)
点亮一盏LED:
import wiringpi as pi
pin=0 #wiringPi引脚编码
LOW=0
HIGH=1
OUTPUT=1
pi.wiringPiSetup() #初始化函数
pi.pinMode(pin,OUTPUT)
pi.digitalWrite(pin,LOW)
while True:
pi.digitalWrite(pin,HIGH)
pi.delay(1000)
pi.digitalWrite(pin,LOW)
pi.delay(1000)