MBed 5 version of BME280 test verify a BME280 can be reset via the I2C Bus

Dependencies:   mbed

Revision:
0:8ffd97155ff2
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Fri Apr 14 02:03:45 2017 +0000
@@ -0,0 +1,43 @@
+#include "mbed.h"
+
+I2C i2c(I2C_SDA , I2C_SCL ); 
+Serial debug(USBTX, USBRX);
+
+int main() {
+    char buffer[2];
+    buffer[1] = 0xE0;
+    buffer[0] = 0x86;
+    int count = 2;
+    int address = 0x77;
+    int error;
+ //   int i2c_frequency = 200 * 1000;
+    int i2c_frequency = 100 * 1000;
+    debug.printf("\nI2C BME280 Rest Test");
+
+    i2c.frequency(i2c_frequency);
+
+    i2c.start();
+    error = i2c.write(address << 1); //We shift it left because mbed takes in 8 bit addreses
+    i2c.stop();
+    if (error == 1)
+    {
+      debug.printf("\nI2C device found at address 0x%X", address);
+    }
+    else
+    {
+        debug.printf("\nDevice at IC address Ox%X, not responding", address);
+    }
+    
+    i2c.start();
+    error = i2c.write(address << 1, buffer, count); //We shift it left because mbed takes in 8 bit addreses
+    i2c.stop();
+    if (error == 1)
+    {
+      debug.printf("\nBME280 reset request send success");
+    }
+    else
+    {
+        debug.printf("\nBME280 reset request send failed Error Code: %d", error);
+    }
+    debug.printf("\ndone\n");
+}