Driver for National Semiconductor ADC128Sxxx family of analog to digital converters

Revision:
1:0edd6142cd67
Parent:
0:28addf1f4c26
Child:
2:f6c4a79f2ee0
--- a/ADC128S.h	Fri Feb 18 20:52:59 2011 +0000
+++ b/ADC128S.h	Wed Mar 02 05:50:24 2011 +0000
@@ -1,13 +1,50 @@
-// ADC128S   a library for the National Semiconductor ADC128S family of ADCs
-//
-// by Michael Shimniok - http://www.bot-thoughts.com/
-//
-class ADC128S {
-public:
-    ADC128S(PinName cs, PinName mosi, PinName miso, PinName sck);
-    unsigned int read(int channel);
-
-private:
-    SPI _adc;
-    DigitalOut _cs;
+/* mbed library for the National Semiconductor ADC128S family of analog to digital converters
+ *
+ * by Michael Shimniok - http://www.bot-thoughts.com/
+ */
+ 
+ /** An interface for driving a National Semiconductor ADC128Sxxx analog to digital converter using SPI
+ *
+ * @code
+ * #include "mbed.h"
+ * #include "ADC128S.h"
+ *
+ * Serial pc(USBTX, USBRX); // tx, rx
+ * ADC128S adc(p5, p6, p7, p15); // mosi, miso, sck, cs
+ *
+ * int main() {
+ *   unsigned int result;
+ *   pc.baud(115200);    
+ *
+ *   while(1) {
+ *     for (int i = 0; i < 8; i++) {
+ *       result = adc.read(i);
+ *       pc.printf("ADC(%d)=%d\n", i, result);
+ *     }
+ *     pc.printf("\n");
+ *   }
+ * }
+ * @endcode
+ */
+class ADC128S {
+public:
+    /** Create an ADC128S interface
+     *
+     * @param mosi  MOSI line
+     * @param miso  MISO line
+     * @param sck   SCK line
+     * @param cs    !CS/!SS line
+     */
+    ADC128S(PinName mosi, PinName miso, PinName sck, PinName cs);
+
+    /** Read in analog value from the specified ADC channel
+     *
+     * @param channel  The ADC channel to read
+     * @param returns the analog to digital conversion result
+     */
+    unsigned int read(int channel);
+
+private:
+    SPI _adc;
+    DigitalOut _cs;
 };
\ No newline at end of file