Steve Mylroie
/
BME280_Tests_5BM
MBed 5 version of BME280 test verify a BME280 can be reset via the I2C Bus
main.cpp
- Committer:
- Roietronics
- Date:
- 2017-04-14
- Revision:
- 0:8ffd97155ff2
File content as of revision 0:8ffd97155ff2:
#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"); }