Wifi Pressure Sensor
Dependencies: HTTPClient MPL3115A2 NTPClient TMP102 USBDevice cc3000_hostdriver_mbedsocket mbed
Diff: tcpTests.cpp
- Revision:
- 15:56ec0751ca71
- Parent:
- 14:93db6bb9ac89
- Child:
- 16:a7902d75bef3
diff -r 93db6bb9ac89 -r 56ec0751ca71 tcpTests.cpp --- a/tcpTests.cpp Thu Jun 19 00:37:48 2014 +0000 +++ b/tcpTests.cpp Fri Jun 20 06:52:48 2014 +0000 @@ -6,8 +6,8 @@ #include "TCPSocketServer.h" #include "HTTPClient.h" //#include "Websocket.h" -#include "TMP102.h" - +//#include "TMP102.h" +#include "MPL3115A2.h" using namespace mbed_cc3000; extern cc3000 wifi; @@ -42,20 +42,58 @@ AnalogIn adc7(P0_23); //P10 -TMP102 temperature(P0_5, P0_4, 0x90); //A0 pin is connected to ground +//TMP102 temperature(P0_5, P0_4, 0x90); //A0 pin is connected to ground +// Turn on and initalise the sensor +I2C i2c(P0_5, P0_4); // sda, scl +//Serial pc(USBTX, USBRX); // tx, rx +MPL3115A2 sensor(&i2c); // ------------------------------------------------------------------------------------------------------------ /*! - @brief Post all analog inputs to xively every second + @Post Pressure and Temperature Values to website */ // ------------------------------------------------------------------------------------------------------------ void TempTest (void) { float tempt = 0; +float pressure = 0; float random = 0; +pc.printf("** MPL3115A2 SENSOR **\r\n"); + +sensor.init(); + +//pc.printf("Who Am I: 0x%X\r\n", sensor.whoAmI()); + +Altitude a; +Temperature t; +Pressure p; + +// Offsets for Dacula, GA +//sensor.setOffsetAltitude(83); +//sensor.setOffsetTemperature(20); +//sensor.setOffsetPressure(-32); + while (1) { - tempt = temperature.read(); + sensor.readAltitude(&a); + sensor.readTemperature(&t); + + sensor.setModeStandby(); + sensor.setModeBarometer(); + sensor.setModeActive(); + sensor.readPressure(&p); + + pc.printf("Altitude: %sM, Temp: %sºC, Pressure: %sPa\r\n", a.print(), t.print(), p.print()); + // pc.printf("OFF_H: 0x%X, OFF_T: 0x%X, OFF_P: 0x%X\r\n", sensor.offsetAltitude(), sensor.offsetTemperature(), sensor.offsetPressure()); + + wait(1); + + sensor.setModeStandby(); + sensor.setModeAltimeter(); + sensor.setModeActive(); + + /*tempt = temperature.read(); + pc.printf( "%05d\r\nTEMP, %.1f\r\n\0", tempt); // HTTP POST Test @@ -81,6 +119,9 @@ } wait_ms(1000); + */ + + if ( pc.readable() ) { pc.printf("Ending Temp Posting \r\n"); @@ -92,6 +133,12 @@ } +// ------------------------------------------------------------------------------------------------------------ +/*! + @brief Post all analog inputs to xively every second +*/ +// ------------------------------------------------------------------------------------------------------------ + void XivelySimpleTest ( void ) { TCPSocketConnection socket; @@ -122,7 +169,7 @@ else {number++;} // Temp Read - tempt = temperature.read(); + //tempt = temperature.read(); // Build the data string httpDataLen = sprintf(&tmpDataBuffer[0], "COUNT, %05d\r\nRAMP, %05d\r\nTEMP, %.1f\r\n\0", counter, number, tempt);