Utilities for BORCH accelerometer BMA250E

Dependents:   MtConnect04S_Bike_Proximity Mt05_MtSense03

Revision:
1:b6bb47e17a9a
Parent:
0:8273e9b80c39
--- a/BMA250E.cpp	Mon Dec 19 06:07:10 2016 +0000
+++ b/BMA250E.cpp	Fri Apr 27 09:54:54 2018 +0000
@@ -20,21 +20,23 @@
 /******************************* 
  * Public methods
  *******************************/
-BMA250E::BMA250E(PinName i2c_sda, PinName i2c_scl, PinName interrupt1_pinname, PinName interrupt2_pinname)
+BMA250E::BMA250E(PinName i2c_sda, PinName i2c_scl, PinName interrupt1_pinname, PinName interrupt2_pinname,uint8_t range, uint8_t bandwith)
     : i2c_(i2c_sda, i2c_scl), 
       interrupt1_pinname_(interrupt1_pinname),
       interrupt1_(interrupt1_pinname),
       interrupt2_pinname_(interrupt2_pinname),  
-      interrupt2_(interrupt2_pinname) {
+      interrupt2_(interrupt2_pinname),
+      range_(range), bandwith_(bandwith) {
+          
     /* Basic */
-    RegWrite(0x14, 0xB6);   // softreset
-    RegWrite(0x0F, 0x03);   // range((+/-)2G)
-    RegWrite(0x10, 0x0C);   // bandwidth(125Hz)
+    RegWrite(0x14, 0xB6);        // softreset
+    RegWrite(0x0F, range_);      // range
+    RegWrite(0x10, bandwith_);   // bandwidth
     
     /* Interrupt */
     RegWrite(0x16, 0x00);   // Disable all interrupts
     RegWrite(0x17, 0x00);   // 
-    RegWrite(0x20, 0x00);   // int1_od(PP), int1_lvl(Low active), int2_od(PP), int2_lvl(Low active)
+    RegWrite(0x20, 0x00);   // int1_od(PP), int1_lvl(Low active), int2_od(PP), int2a_lvl(Low active)
     RegWrite(0x21, 0x80);   // reset_int, latch_int(non_latched)
 }
 
@@ -51,6 +53,7 @@
     xyz[0] >>= 6;
     xyz[1] >>= 6;
     xyz[2] >>= 6;
+    
 }
 
 void BMA250E::NewData(void(*fptr)(void)) {
@@ -152,4 +155,4 @@
     RegRead (reg, &val, 1);             // Read
     val = (val & ~clr_mask) | set_mask; // Modify
     RegWrite(reg, val);                 // Write
-}
+}
\ No newline at end of file