香蕉派GPIO深入介绍

作者: 霹雳之火
上传时间为: 2014-10-20 06:11 PM

上一篇介绍了GPIO的简单操作,通过脚本实现了对GPIO的控制,这里深入介绍
上一篇中我们实现了对IO-1,即P12脚的控制
这里主要介绍

  • 控制其他引脚
  • 实现对闪烁频率的控制
  • 实现对GPIO输出稳定地高低电平


0 准备
做好上一篇的工作

1 运行
cd /home/pi/RPi.GPIO_BP-master/test
显示
#!/usr/bin/env python
import RPi.GPIO as GPIO
import time
PIN_NUM = 12

GPIO.setmode(GPIO.BOARD)
GPIO.setup(PIN_NUM,GPIO.OUT)
while True:

GPIO.output(PIN_NUM,True)
time.sleep(0.5)
GPIO.output(PIN_NUM,False)
time.sleep(0.5)

11.JPG



2 修改实现更快的闪烁
将sleep调小,即可实现快速的闪烁
GPIO.output(PIN_NUM,True)
time.sleep(0.2)
GPIO.output(PIN_NUM,False)
time.sleep(0.2)

3修改实现其他引脚的控制(比如P11脚,其他类似)
将IO-1(P12脚)改为IO-0(P11脚)
PIN_NUM = 11
按照上篇的接法接好电路
从con3的11引脚引出,接一个限流电阻,在接一个led灯,在接到GND,形成回路
按照上篇的方法运行,即可看到led灯闪烁

1.JPG



4 实现稳定地输出高电平或者低电平
4.1运行
pi@bananapi ~/RPi.GPIO_BP-master/test $ sudo ps

杀死python进程
pi@bananapi ~/RPi.GPIO_BP-master/test $ sudo kill -9 2608

12.JPG


4.2运行
pi@bananapi:~$ ls /sys/class/gpio/
显示
export gpio18 gpio7 gpiochip1 unexport
其中gpio18对应IO-1(P12脚),gpio7对应IO-0(P11脚)
PS:有可能gpiox不一样,以自己的实际情况为准

4.3切换到root
即运行
pi@bananapi ~/RPi.GPIO_BP-master/test $ su
然后输入password

4.4 运行
root@bananapi:/home/pi/RPi.GPIO_BP-master/test# echo 1 > /sys/class/gpio/gpio18/value
现象:led灯常亮

3.5 运行
root@bananapi:/home/pi/RPi.GPIO_BP-master/test# echo 1 > /sys/class/gpio/gpio18/value
现象:led灯常灭

13.JPG


4 其它的GPIO引脚操作类似,不在赘述

全部评论 ()

创建讨论帖子

登录 后参与评论
系统提示