Bob Giesberts / LDC1614

Dependencies:   SHTx

Dependents:   Inductive_Sensor_3

Fork of LDC1101 by Bob Giesberts

Revision:
5:98d4fd07734a
Parent:
3:bf6ac5967bd1
Child:
8:b5fb9681869c
--- a/LDC1000.h	Tue May 19 14:10:01 2015 +0000
+++ b/LDC1000.h	Tue May 26 14:34:05 2015 +0000
@@ -32,6 +32,8 @@
 
 typedef enum { LDC_MODE_STANDBY = 0, LDC_MODE_ACTIVE = 1} LDC_MODE;
 
+typedef enum { WAKE_UP = 1, COMPARATOR = 2 , ACTIVE = 4} LDC_INTB;
+
 
 /**
 * Class for the LDC1000.
@@ -51,6 +53,7 @@
     * @param mode choose from LDC_MODE_ACTIVE or LDC_MODE STANDBY
     **/
     void mode(LDC_MODE mode){writeSPI((uint8_t *)(&mode), 0x0B);};
+    void setINTB(LDC_INTB setINTB){writeSPI((uint8_t *)(&setINTB), 0x0A);};
     /**
     * @brief get the calculated inductance value
     **/
@@ -70,6 +73,10 @@
     * This is needed for the calculation of the inductance.
     **/
     uint32_t readRawL(void){_raw_l = readRawCounts(); return _raw_l;};
+
+    // EXTRA test Read INTB register
+    uint32_t readINTBregister(void){INTB = readINTB(); return INTB;}; 
+
     /**
     * @brief Set the Response Time parameters. 
     * @param responsetime 
@@ -97,7 +104,9 @@
     private:
     void readSPI(uint8_t *data, uint8_t address, uint8_t num_bytes = 1);
     void writeSPI(uint8_t *data, uint8_t address, uint8_t num_bytes = 1);
+    void writeSPIregister(uint8_t reg, uint8_t value){writeSPI(&value,reg);};
     uint32_t readRawCounts(void);
+    uint32_t readINTB(void); // EXTRA UNTB Read register
     LDC_RESPONSE _responsetime;
     LDC_AMPLITUDE _amplitude;
     float _fsensor;
@@ -105,6 +114,7 @@
     float _frequency; //frequency of external clock
     float cap;    
     uint32_t _raw_l;
+    uint32_t INTB; // extra: read register INTB
     SPI _spiport;
     DigitalOut _cs_pin;
     FastPWM _clock;