summaryrefslogtreecommitdiff
path: root/Adafruit_Python_MCP3008/examples/differential.py
diff options
context:
space:
mode:
Diffstat (limited to 'Adafruit_Python_MCP3008/examples/differential.py')
-rw-r--r--Adafruit_Python_MCP3008/examples/differential.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/Adafruit_Python_MCP3008/examples/differential.py b/Adafruit_Python_MCP3008/examples/differential.py
new file mode 100644
index 0000000..df30e65
--- /dev/null
+++ b/Adafruit_Python_MCP3008/examples/differential.py
@@ -0,0 +1,38 @@
+# 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)