I2C 接続の温度センサ ADT7410 用のライブラリの使用例. Demo program of the library for temperature sensor ADT7410 connected using I2C interface.

Dependencies:   mbed UIT_ADT7410

Committer:
MikamiUitOpen
Date:
Fri Sep 01 11:15:24 2017 +0000
Revision:
10:dc41d13e64cb
Parent:
9:eabefe7e52be
Child:
11:632e038543e3
11

Who changed what in which revision?

UserRevisionLine numberNew 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 10:dc41d13e64cb 4 // 2017/09/01, Copyright (c) 2017 MIKAMI, Naoki
MikamiUitOpen 0:4987fb36ca61 5 //--------------------------------------------------------------
MikamiUitOpen 0:4987fb36ca61 6
MikamiUitOpen 10:dc41d13e64cb 7 #pragma diag_suppress 870 // マルチバイト文字使用の警告を抑制
MikamiUitOpen 0:4987fb36ca61 8 #include "ADT7410.hpp"
MikamiUitOpen 8:8851e1dcb109 9 using namespace Mikami;
MikamiUitOpen 0:4987fb36ca61 10
MikamiUitOpen 0:4987fb36ca61 11 // If you want to display the temperature on AQM1602,
MikamiUitOpen 0:4987fb36ca61 12 // enable following #define statement
MikamiUitOpen 3:176a92f43b5b 13 #define USING_AQM1602
MikamiUitOpen 0:4987fb36ca61 14
MikamiUitOpen 0:4987fb36ca61 15 #ifdef USING_AQM1602
MikamiUitOpen 0:4987fb36ca61 16 #include "AQM1602.hpp"
MikamiUitOpen 8:8851e1dcb109 17 Aqm1602 lcd_; // using default I2C port
MikamiUitOpen 10:dc41d13e64cb 18 #endif // #ifdef USING_AQM1602
MikamiUitOpen 0:4987fb36ca61 19
MikamiUitOpen 8:8851e1dcb109 20 ADT7410 tempr_; // using default I2C port
MikamiUitOpen 0:4987fb36ca61 21
MikamiUitOpen 0:4987fb36ca61 22 int main()
MikamiUitOpen 0:4987fb36ca61 23 {
MikamiUitOpen 0:4987fb36ca61 24 printf("\r\nStart ADT7410\r\n");
MikamiUitOpen 0:4987fb36ca61 25 #ifdef USING_AQM1602
MikamiUitOpen 3:176a92f43b5b 26 bool on = true;
MikamiUitOpen 0:4987fb36ca61 27 lcd_.WriteStringXY("ADT7410", 0, 0);
MikamiUitOpen 10:dc41d13e64cb 28 #endif // #ifdef USING_AQM1602
MikamiUitOpen 0:4987fb36ca61 29
MikamiUitOpen 0:4987fb36ca61 30 // Confirmation of setting
MikamiUitOpen 0:4987fb36ca61 31 uint8_t cReg = tempr_.GetConfig();
MikamiUitOpen 0:4987fb36ca61 32 printf("Mode: 0x%02x\r\n", cReg);
MikamiUitOpen 0:4987fb36ca61 33
MikamiUitOpen 0:4987fb36ca61 34 while (true)
MikamiUitOpen 0:4987fb36ca61 35 {
MikamiUitOpen 10:dc41d13e64cb 36 // float value = tempr_.Read(); // Member function version
MikamiUitOpen 10:dc41d13e64cb 37 float value = tempr_; // Operator version
MikamiUitOpen 0:4987fb36ca61 38
MikamiUitOpen 0:4987fb36ca61 39 #ifdef USING_AQM1602
MikamiUitOpen 8:8851e1dcb109 40 lcd_.WriteValueXY("%5.1f \xDF""C", value, 0, 1);
MikamiUitOpen 3:176a92f43b5b 41 if (on) lcd_.WriteStringXY(".", 15, 0);
MikamiUitOpen 3:176a92f43b5b 42 else lcd_.WriteStringXY(" ", 15, 0);
MikamiUitOpen 3:176a92f43b5b 43 on = !on;
MikamiUitOpen 10:dc41d13e64cb 44 #endif // #ifdef USING_AQM1602
MikamiUitOpen 10:dc41d13e64cb 45 printf("%5.1f [℃]\r\n", value);
MikamiUitOpen 0:4987fb36ca61 46 wait(1);
MikamiUitOpen 0:4987fb36ca61 47 }
MikamiUitOpen 0:4987fb36ca61 48 }