Adafruit_Python_MCP3008/examples/differential.py
2016-04-14 14:41:29 -07:00

38 lines
1.2 KiB
Python

# Simple example of reading the MCP3008 analog input channels using its
# differential mode. Will print the difference of channel 0 and 1.
# Author: Tony DiCola
# License: Public Domain
import time
# Import SPI library (for hardware SPI) and MCP3008 library.
import Adafruit_GPIO.SPI as SPI
import Adafruit_MCP3008
# Software SPI configuration:
# CLK = 18
# MISO = 23
# MOSI = 24
# CS = 25
# mcp = Adafruit_MCP3008.MCP3008(clk=CLK, cs=CS, miso=MISO, mosi=MOSI)
# Hardware SPI configuration:
SPI_PORT = 0
SPI_DEVICE = 0
mcp = Adafruit_MCP3008.MCP3008(spi=SPI.SpiDev(SPI_PORT, SPI_DEVICE))
print('Press Ctrl-C to quit...')
while True:
# Grab the difference between channel 0 and 1 (i.e. channel 0 minus 1).
# Note you can specify any value in 0-7 to grab other differences:
# - 0: Return channel 0 minus channel 1
# - 1: Return channel 1 minus channel 0
# - 2: Return channel 2 minus channel 3
# - 3: Return channel 3 minus channel 2
# - 4: Return channel 4 minus channel 5
# - 5: Return channel 5 minus channel 4
# - 6: Return channel 6 minus channel 7
# - 7: Return channel 7 minus channel 6
value = mcp.read_adc_difference(0)
print('Channel 0 minus 1: {0}'.format(value))
time.sleep(0.5)