This program is used to interface an Mbed board to Analog devices AD7151- Capacitance to Digital Converter IC, which uses simple I2C protocal for data transfer.This code contains writing to some of the AD7151 registers & reading CDC values

Dependencies:   mbed

Files at this revision

API Documentation at this revision

Comitter:
Santhosh
Date:
Thu Aug 05 09:11:32 2010 +0000
Commit message:

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Aug 05 09:11:32 2010 +0000
@@ -0,0 +1,62 @@
+/* This program is used to interface an Mbed board to Analog devices AD7151-
+   Capacitance to Digital Converter IC, which uses simple I2C protocal for data
+   transfer.This code contains writing to some of the AD7151 registers & reading 
+   CDC values*/
+    
+#include "mbed.h"
+
+int main() 
+{
+        I2C cdc(p28, p27);               // I2C cdc
+        cdc.frequency(50000);            // frequency set
+        
+        cdc.start();                     // Start condition
+        cdc.write(0x90);                 // Address 0x90 write(to write address of AD7151)
+        //Setup Register
+        cdc.write(0x0B);                 // Setup register Address 
+        cdc.write(0xCF);                 // Data to be written into Setup Register
+        //Configuration Register
+        cdc.start();                     // Start condition
+        cdc.write(0x90);                 // Address 0x90 write(to write address of AD7151)
+        cdc.write(0x0F);                 // Configuration Register Address 
+        cdc.write(0x31);                 // Adaptive threshold
+        //cdc.write(0xB1);               // For Fixed Threshold Mode
+        //Capdac Register
+        cdc.start();                     // Start condition
+        cdc.write(0x90);                 // Address 0x90 write(to write address of AD7151)
+        cdc.write(0x11);                 // CAPDAC register Address 
+        cdc.write(0x00);                 // Data
+        /*Fixed Threshold Register(09 & 0A)
+        cdc.start();                     // Start condition
+        cdc.write(0x90);                 // Address 0x90 write(to write address of AD7151)
+        cdc.write(0x09);                 // Fixed Threshold register Address 
+        cdc.write(0x00);                 // Data
+        cdc.write(0xF0);                 // Data in auto address update*/
+         //Sensitivity Register(09 )
+        cdc.start();                     // Start condition
+        cdc.write(0x90);                 // Address 0x90 write(to write address of AD7151)
+        cdc.write(0x09);                 // Sensitivity register Address 
+        cdc.write(0x11);                 // Data
+        
+        cdc.start();                     // Start condition
+        cdc.write(0x90);                 // Address 0x90 write(to write address of AD7151)
+        cdc.write(0x0A);                 // Setup register Address 
+        cdc.write(0x00);                 // Data
+       
+        cdc.stop();                      // Stop condition
+        wait(1);                         // wait 1 second
+         
+    while(1) 
+    {  
+        cdc.start();                       // Repeated start
+        cdc.write(0x90);                   // Address 0x90 write(to write address of AD7151)       
+        cdc.write(0x05);                   // Address pointer to be read
+        cdc.start();                       // Stop condition
+        cdc.write(0x91);                   // Address 0x91 to read(to read address of AD7151)
+        cdc.read(I2C::ACK);                // Read contents in Address 0x05
+        cdc.read(I2C::NoACK);              // Read contents in Address 0x06
+        cdc.stop();                        // Stop condition
+        wait_ms(20);
+    }
+       
+}
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Thu Aug 05 09:11:32 2010 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/9114680c05da