2016-11-14 45 views
1

我有一个电路,其中包含mcp3008和雨量传感器模块,可读取模拟数据并将数字数据发送到树莓派。我如何创建另一个具有可打开和关闭雨量传感器电路的按钮的电路。雨量传感器电路连接到树莓派上的5v引脚。任何人都可以帮助我如何打开和关闭雨量传感器电路?如何打开/关闭python电路?

这是我发现的有关网站如何从它的开/关的其它线路: http://www.barryhubbard.com/raspberry-pi/howto-pn2222a-npn-gpio-controlled-simple-transistor-circuit-for-raspberry-pi/

回答

0
import RPi.GPIO as GPIO #Get's GPIO module 
import Adafruit_GPIO.SPI as SPI 
import Adafruit_MCP3008 
#Define your MCP3008 SPI stuff here 
CLK = 18 # Change these values to then pins you are using 
MISO = 20 
MOSI = 21 
CS = 8 
mcp = Adafruit_MCP3008.MCP3008(clk=CLK, cs=CS, miso=MISO, mosi=MOSI) 
GPIO.setmode(GPIO.BCM) #sets mode 
GPIO.setup(22, GPIO.IN, pull_up_down=GPIO.PUD_UP) #Button Pin 
input_state = GPIO.input(22) #Get's button input 
while True: 
     if input_state == 1: 
      break 
     else: 
      continue 

而且还有你的代码!我也碰巧将MCP3008模块用于windsensor!快乐编程!

编辑: 要读取一个信道简单地 import Adafruit_SPI as SPI import Adafruit_MCP3008 CLK = 18 MISO = 20 MOSI = 21 CS = 8 mcp = Adafruit_MCP3008.MCP3008(clk=CLK, cs=CS, miso=MISO, mosi=MOSI) values = [0]*8 for i in range(8): values[i] = mcp.read_adc(i) CHANNEL_ZERO = '{0:>4'.format(*values)

+0

另外我的雨水传感器程序被包含的wxPython模块,使得它仅具有一个主循环。我使用计时器来更新界面,我没有使用线程,因为我是一个Python初学者。也可以帮助我对这个问题之前,我的问题在这个链接http://stackoverflow.com/questions/40459949/how-to-change-my-wxpython-program-that-read-and-display-rain-sensor-数据从-MC – anubismmt

+0

我由其他给出的解决方案相混淆,当我尝试它,它读取多个通道,因为我只希望它读一个通道,并为您的解决方案上面的是我必须做的关于雨水传感器作为销雨量传感器模块使用5v引脚,如果我将其更改为gpio引脚,它只能从gpio引脚获得3v电压? – anubismmt

+0

读取一个通道 – Will4cat