Motoo Tanaka
/
test_HDC1000
test program for HDC1000
main.cpp@0:655618676da2, 2017-04-17 (annotated)
- 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?
User | Revision | Line number | New 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 | } |