I2C 接続の温度センサ ADT7410 用のライブラリの使用例. Demo program of the library for temperature sensor ADT7410 connected using I2C interface.
Dependencies: mbed UIT_ADT7410
main.cpp@9:eabefe7e52be, 2017-08-08 (annotated)
- Committer:
- MikamiUitOpen
- Date:
- Tue Aug 08 11:55:09 2017 +0000
- Revision:
- 9:eabefe7e52be
- Parent:
- 8:8851e1dcb109
- Child:
- 10:dc41d13e64cb
10
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
MikamiUitOpen | 0:4987fb36ca61 | 1 | //-------------------------------------------------------------- |
MikamiUitOpen | 0:4987fb36ca61 | 2 | // ADT7410 and LCD display using I2C interface |
MikamiUitOpen | 9:eabefe7e52be | 3 | // mbed revision: 148 |
MikamiUitOpen | 9:eabefe7e52be | 4 | // 2017/08/08, Copyright (c) 2017 MIKAMI, Naoki |
MikamiUitOpen | 0:4987fb36ca61 | 5 | //-------------------------------------------------------------- |
MikamiUitOpen | 0:4987fb36ca61 | 6 | |
MikamiUitOpen | 0:4987fb36ca61 | 7 | #include "ADT7410.hpp" |
MikamiUitOpen | 8:8851e1dcb109 | 8 | using namespace Mikami; |
MikamiUitOpen | 0:4987fb36ca61 | 9 | |
MikamiUitOpen | 0:4987fb36ca61 | 10 | // If you want to display the temperature on AQM1602, |
MikamiUitOpen | 0:4987fb36ca61 | 11 | // enable following #define statement |
MikamiUitOpen | 3:176a92f43b5b | 12 | #define USING_AQM1602 |
MikamiUitOpen | 0:4987fb36ca61 | 13 | |
MikamiUitOpen | 0:4987fb36ca61 | 14 | #ifdef USING_AQM1602 |
MikamiUitOpen | 0:4987fb36ca61 | 15 | #include "AQM1602.hpp" |
MikamiUitOpen | 8:8851e1dcb109 | 16 | Aqm1602 lcd_; // using default I2C port |
MikamiUitOpen | 0:4987fb36ca61 | 17 | #endif |
MikamiUitOpen | 0:4987fb36ca61 | 18 | |
MikamiUitOpen | 8:8851e1dcb109 | 19 | ADT7410 tempr_; // using default I2C port |
MikamiUitOpen | 0:4987fb36ca61 | 20 | |
MikamiUitOpen | 0:4987fb36ca61 | 21 | int main() |
MikamiUitOpen | 0:4987fb36ca61 | 22 | { |
MikamiUitOpen | 0:4987fb36ca61 | 23 | printf("\r\nStart ADT7410\r\n"); |
MikamiUitOpen | 0:4987fb36ca61 | 24 | #ifdef USING_AQM1602 |
MikamiUitOpen | 3:176a92f43b5b | 25 | bool on = true; |
MikamiUitOpen | 0:4987fb36ca61 | 26 | lcd_.WriteStringXY("ADT7410", 0, 0); |
MikamiUitOpen | 0:4987fb36ca61 | 27 | #endif |
MikamiUitOpen | 0:4987fb36ca61 | 28 | |
MikamiUitOpen | 0:4987fb36ca61 | 29 | // Confirmation of setting |
MikamiUitOpen | 0:4987fb36ca61 | 30 | uint8_t cReg = tempr_.GetConfig(); |
MikamiUitOpen | 0:4987fb36ca61 | 31 | printf("Mode: 0x%02x\r\n", cReg); |
MikamiUitOpen | 0:4987fb36ca61 | 32 | |
MikamiUitOpen | 0:4987fb36ca61 | 33 | while (true) |
MikamiUitOpen | 0:4987fb36ca61 | 34 | { |
MikamiUitOpen | 2:ed374946c673 | 35 | // Member function version |
MikamiUitOpen | 8:8851e1dcb109 | 36 | // float value = tempr_.Read(); |
MikamiUitOpen | 1:639e2ad4ab5e | 37 | // Operator version |
MikamiUitOpen | 2:ed374946c673 | 38 | float value = tempr_; |
MikamiUitOpen | 0:4987fb36ca61 | 39 | |
MikamiUitOpen | 0:4987fb36ca61 | 40 | #ifdef USING_AQM1602 |
MikamiUitOpen | 8:8851e1dcb109 | 41 | lcd_.WriteValueXY("%5.1f \xDF""C", value, 0, 1); |
MikamiUitOpen | 3:176a92f43b5b | 42 | if (on) lcd_.WriteStringXY(".", 15, 0); |
MikamiUitOpen | 3:176a92f43b5b | 43 | else lcd_.WriteStringXY(" ", 15, 0); |
MikamiUitOpen | 3:176a92f43b5b | 44 | on = !on; |
MikamiUitOpen | 0:4987fb36ca61 | 45 | #endif |
MikamiUitOpen | 2:ed374946c673 | 46 | printf("%5.1f deg. Celsius\r\n", value); |
MikamiUitOpen | 0:4987fb36ca61 | 47 | wait(1); |
MikamiUitOpen | 0:4987fb36ca61 | 48 | } |
MikamiUitOpen | 0:4987fb36ca61 | 49 | } |