#实验背景:当我们做传感器实验时,经常会有个疑虑,当传感器被触发或者被获取之前,那么程序的电压状态是高电平还是低电平呢;这块其实程序处于一个float状态,也就是悬浮可变状态,它会很容易受到其他因素的干扰,从而导致出现获取到意外的数值。因此就需要在程序开始之时,初始化对应的针脚的电压状态。
【GPIO.IN】
设置示例
可见通过:
1、GPIO.setup(channel, GPIO.IN, pull_up_down=GPIO.PUD_UP) #拉高电压
2、GPIO.setup(channel, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)#拉低电压
执行代码可见,当pull_up_down=GPIO.PUD_UP时,输出高电平1;当GPIO.setup(channel, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)时,输出低电平0。
#!/usr/bin/env python
#coding:utf-8
'''
from JiuJiang
树莓酱的操作实例
http:://www.suhmeijiang.com
'''
import RPi.GPIO as GPIO ##引入GPIO模块
import time ##引入time库
detectPin = 18
GPIO.setmode(GPIO.BCM) ##此处采用的BCM编码 因为T型扩展板也是BCM编码 方便统一
#GPIO.setup(detectPin, GPIO.IN, pull_up_down=GPIO.PUD_UP) ##拉高电压
GPIO.setup(detectPin, GPIO.IN, pull_up_down=GPIO.PUD_DOWN) ##拉点电压
print GPIO.input(detectPin)
GPIO.cleanup()
【GPIO.OUT】
设置示例
可见通过:
1、GPIO.output(detectPin, GPIO.LOW) ##初始化低电平
2、GPIO.output(detectPin, GPIO.HIGH) ##初始化高电平
执行代码可见,当GPIO.LOW时输出低电平0;当GPIO.HIGH时输出高电平1;
#!/usr/bin/env python
#coding:utf-8
'''
from JiuJiang
树莓酱的操作实例
http:://www.suhmeijiang.com
'''
import RPi.GPIO as GPIO ##引入GPIO模块
import time ##引入time库
detectPin = 18
GPIO.setmode(GPIO.BCM) ##此处采用的BCM编码 因为T型扩展板也是BCM编码 方便统一
GPIO.setup(detectPin, GPIO.OUT) ##设置为输出模式
GPIO.output(detectPin, GPIO.LOW) ##设置默认输出低电平
#GPIO.output(detectPin, GPIO.HIGH) ##设置默认输出高电平
print GPIO.input(detectPin)
GPIO.cleanup()