OB1203 basic mbed driver

Dependents:   OB1203_IDT

Revision:
16:d5fe5debb5d2
Parent:
15:9bbac15f5e19
Child:
19:a27b98998edf
--- a/OB1203.cpp	Tue Jul 03 21:19:45 2018 +0000
+++ b/OB1203.cpp	Fri Sep 28 21:54:57 2018 +0000
@@ -145,8 +145,8 @@
     char writeData[4];
     writeData[0] = (char) (ps_thres_hi & 0x000FF);
     writeData[1] = (char) ((ps_thres_hi & 0xFF00)>>8);
-        writeData[0] = (char) (ps_thres_lo & 0x000FF);
-    writeData[1] = (char) ((ps_thres_lo & 0xFF00)>>8);
+    writeData[2] = (char) (ps_thres_lo & 0x000FF);
+    writeData[3] = (char) ((ps_thres_lo & 0xFF00)>>8);
     writeBlock(OB1203_ADDR,REG_PS_THRES_HI,writeData,4); //default  
 }
 
@@ -300,13 +300,13 @@
     writeBlock(OB1203_ADDR,REG_PS_MOV_AVG_HYS,writeData,1);
     setIntConfig();
     setPSthresh();
-    setPScurrent();
+    setPScurrent();   
     setLSthresh();
     ls_en = LS_ON;
     ppg_ps_en = PPG_PS_ON;
     ppg_ps_mode = PS_MODE;
     setLEDTrim();
-    setMainConfig();    
+    setMainConfig();
 }
 
 
@@ -317,7 +317,7 @@
     ls_en = LS_OFF;
     setIntConfig(); 
     char readData[1];
-    readBlock(OB1203_ADDR,REG_PS_INT_CFG_1,readData,1);
+    //readBlock(OB1203_ADDR,REG_PS_INT_CFG_1,readData,1);
 //    pc.printf("int config 1 = %02X\r\n",readData[0]);
     setPPG_PSgain_cfg();
     setPPGcurrent();
@@ -353,7 +353,7 @@
 uint32_t OB1203::bytes2uint32(char *data, int start_byte) 
 {
     //coverts a string of 3 bytes with LSB first into unsigned long MSB last
-    return uint32_t(data[start_byte+2])<<16 | uint32_t(data[start_byte+1])<<8 | uint32_t(data[start_byte]) ;
+    return ((uint32_t)data[start_byte+2])<<16 | ((uint32_t)data[start_byte+1])<<8 | ((uint32_t)data[start_byte]) ;
 }
 
 uint32_t OB1203::twoandhalfBytes2uint32(char *data, int start_byte)