12bit 8ch ADC with SPI interface

Fork of MCP3208 by Yoji KURODA

Revision:
0:2300f3b42cdb
Child:
1:0876e83ba21b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mcp3208.cpp	Wed Oct 24 03:41:03 2012 +0000
@@ -0,0 +1,33 @@
+//
+//
+//
+#include "mcp3208.h"
+
+
+MCP3208::MCP3208(PinName mosi, PinName miso, PinName clk, PinName cs)
+:   _spi(mosi,miso,clk),
+    _cs(cs),
+    vref(5.0)
+{
+    _spi.frequency(2000000);
+    _spi.format(14,3);
+    _cs = 1;    
+}
+
+int
+MCP3208::binary(int ch)
+{
+    _cs = 0;
+    int ret = _spi.write(0x18|ch);
+    int adb = _spi.write(0);
+    int dum = _spi.write(0);
+    _cs = 1;
+    return adb;
+}
+
+float
+MCP3208::volt(int ch)
+{
+    return vref * binary(ch) / 4095;
+}
+