test program for HDC1000

Dependencies:   HDC1000 mbed

Committer:
Rhyme
Date:
Mon Apr 17 02:49:51 2017 +0000
Revision:
0:655618676da2
Child:
1:03353fe864df
First working version;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Rhyme 0:655618676da2 1 #include "mbed.h"
Rhyme 0:655618676da2 2 #include "MSS.h"
Rhyme 0:655618676da2 3 #include "HDC1000.h"
Rhyme 0:655618676da2 4
Rhyme 0:655618676da2 5 #define HDC1000_I2C_ADDRESS 0x40
Rhyme 0:655618676da2 6
Rhyme 0:655618676da2 7 HDC1000 *hdc1000 = 0 ;
Rhyme 0:655618676da2 8
Rhyme 0:655618676da2 9 int main() {
Rhyme 0:655618676da2 10 float temp, hume ;
Rhyme 0:655618676da2 11 uint16_t device_id, manufacture_id ;
Rhyme 0:655618676da2 12 uint16_t utemp, uhume ;
Rhyme 0:655618676da2 13 uint16_t conf = 0 ;
Rhyme 0:655618676da2 14 int mode = 0 ;
Rhyme 0:655618676da2 15
Rhyme 0:655618676da2 16 hdc1000 = new HDC1000(PIN_SDA, PIN_SCL, PIN_INT0, HDC1000_I2C_ADDRESS) ;
Rhyme 0:655618676da2 17 // hdc1000 = new HDC1000(PIN_SDA, PIN_SCL, HDC1000_I2C_ADDRESS) ;
Rhyme 0:655618676da2 18 hdc1000->reset() ;
Rhyme 0:655618676da2 19 wait(2) ;
Rhyme 0:655618676da2 20 conf = 0x0000 ;
Rhyme 0:655618676da2 21 hdc1000->setConfig(conf) ;
Rhyme 0:655618676da2 22 conf = 0x1000 ;
Rhyme 0:655618676da2 23 hdc1000->setConfig(conf) ;
Rhyme 0:655618676da2 24 conf = hdc1000->getConfig() ;
Rhyme 0:655618676da2 25 printf("Config = 0x%04X\n", conf) ;
Rhyme 0:655618676da2 26
Rhyme 0:655618676da2 27 device_id = hdc1000->getDeviceID() ;
Rhyme 0:655618676da2 28 printf("Device ID = 0x%04X\n", device_id) ;
Rhyme 0:655618676da2 29 manufacture_id = hdc1000->getManufactureID() ;
Rhyme 0:655618676da2 30 printf("Manufacture ID = 0x%04X\n", manufacture_id) ;
Rhyme 0:655618676da2 31 printf("=== test HDC1000 for %s (%s) ===\n", BOARD_NAME, __DATE__) ;
Rhyme 0:655618676da2 32 mode = 0 ;
Rhyme 0:655618676da2 33 printf("mode = %d\n", mode) ;
Rhyme 0:655618676da2 34 hdc1000->setMode(mode) ;
Rhyme 0:655618676da2 35
Rhyme 0:655618676da2 36 while(1) {
Rhyme 0:655618676da2 37 printf("mode = %d\n", mode) ;
Rhyme 0:655618676da2 38 hdc1000->setMode(mode) ;
Rhyme 0:655618676da2 39 wait(1) ;
Rhyme 0:655618676da2 40 if (mode == 1) {
Rhyme 0:655618676da2 41 hdc1000->readData(&temp, &hume) ;
Rhyme 0:655618676da2 42 printf("Temperature:%.2f C Humidity:%.2f %%\n",temp, hume) ;
Rhyme 0:655618676da2 43 } else {
Rhyme 0:655618676da2 44 temp = hdc1000->readTemperature() ;
Rhyme 0:655618676da2 45 hume = hdc1000->readHumidity() ;
Rhyme 0:655618676da2 46
Rhyme 0:655618676da2 47 printf("Temperature: %.2f ", temp) ;
Rhyme 0:655618676da2 48 printf("Humidity: %.2f%%\n", hume) ;
Rhyme 0:655618676da2 49 }
Rhyme 0:655618676da2 50 wait(2) ;
Rhyme 0:655618676da2 51 mode = (mode == 0) ? 1 : 0 ;
Rhyme 0:655618676da2 52 }
Rhyme 0:655618676da2 53 }