Analog sensor input raspberry pi med en MCP3008: ledningar/installera/basic-program (3 / 3 steg)
Steg 3: Steg 3: klistra in koden
Nu kan du kopiera min kod till din fil eller du kan skriva det själv.
Min kod:
För vissa skäl indraget kvar, på bilden hittar du propper strukturen så behöver du bara dra in korrekt och du är bra att gå.
#! /usr/bin/env python
# python programa att kommunicera med en MCP3008
# Importera våra SpiDe omslag och våra insomningsfunktionen
importera spidev
från att importera sömn
# Upprätta SPI enhet på buss 0, enhet 0
SPI = spidev. SpiDev()
SPI.Open(0,0)
def getAdc (kanal):
#check giltig kanal
om ((channel>7) or(channel<0)):
återvända -1
# Preform SPI transaktionen och lagra returnerade bitar i 'r'
r = spi.xfer ([1, (8 + kanal) << 4, 0])
#Filter bitar från retruned bitar
adcOut = ((r [1] & 3) << 8) + r [2]
procent = int(round(adcOut/10.24))
#print ut 0-1023 värde och andel
skriva ut ("ADC utdata: {0: 4d} procent: {1:3}%".format (adcOut, procent))
Sleep(0.1)
samtidigt sant:
getAdc(0)
Obs: Om du använder en annan kanal skall du skriva getAdc(your channel) eftersom det är de villkor som används av funktionen för att bestämma vilken kanal du använder.
Nu kan du köra detta program genom att skriva i Kommandotolken:
sudo python mcp3008.py
Om du vill stoppa slog programmet Ctrl C
Bilden visar vad detta program bör utgång.
Källor:
Datasheet MCP3008: http://www.adafruit.com/datasheets/MCP3008.pdf
Video av Fraser maj: https://www.youtube.com/watch?v=oW0mTwFck_c
Adafruit: https://learn.adafruit.com/reading-a-analog-in-an...
Hårdvara: Raspberry Pi modell B, Fundruino fukt sensor, MCP3008