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

Dependencies:   mbed UIT_ADT7410

Committer:
MikamiUitOpen
Date:
Sun Jul 26 03:23:13 2015 +0000
Revision:
4:6e320628cbc9
Parent:
3:176a92f43b5b
Child:
7:84a9a9455662
5

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 4:6e320628cbc9 3 // 2015/07/25, Copyright (c) 2015 MIKAMI, Naoki
MikamiUitOpen 0:4987fb36ca61 4 //--------------------------------------------------------------
MikamiUitOpen 0:4987fb36ca61 5
MikamiUitOpen 0:4987fb36ca61 6 #include "ADT7410.hpp"
MikamiUitOpen 0:4987fb36ca61 7
MikamiUitOpen 0:4987fb36ca61 8 // If you want to display the temperature on AQM1602,
MikamiUitOpen 0:4987fb36ca61 9 // enable following #define statement
MikamiUitOpen 3:176a92f43b5b 10 #define USING_AQM1602
MikamiUitOpen 0:4987fb36ca61 11
MikamiUitOpen 0:4987fb36ca61 12 #ifdef USING_AQM1602
MikamiUitOpen 0:4987fb36ca61 13 #include "AQM1602.hpp"
MikamiUitOpen 0:4987fb36ca61 14 #endif
MikamiUitOpen 0:4987fb36ca61 15
MikamiUitOpen 0:4987fb36ca61 16 using namespace Mikami;
MikamiUitOpen 0:4987fb36ca61 17
MikamiUitOpen 0:4987fb36ca61 18 #ifdef USING_AQM1602
MikamiUitOpen 0:4987fb36ca61 19 Aqm1602 lcd_; // using default port
MikamiUitOpen 0:4987fb36ca61 20 #endif
MikamiUitOpen 0:4987fb36ca61 21 ADT7410 tempr_; // using default
MikamiUitOpen 0:4987fb36ca61 22
MikamiUitOpen 0:4987fb36ca61 23 int main()
MikamiUitOpen 0:4987fb36ca61 24 {
MikamiUitOpen 0:4987fb36ca61 25 printf("\r\nStart ADT7410\r\n");
MikamiUitOpen 0:4987fb36ca61 26 #ifdef USING_AQM1602
MikamiUitOpen 3:176a92f43b5b 27 bool on = true;
MikamiUitOpen 0:4987fb36ca61 28 lcd_.WriteStringXY("ADT7410", 0, 0);
MikamiUitOpen 0:4987fb36ca61 29 #endif
MikamiUitOpen 0:4987fb36ca61 30
MikamiUitOpen 0:4987fb36ca61 31 // Confirmation of setting
MikamiUitOpen 0:4987fb36ca61 32 uint8_t cReg = tempr_.GetConfig();
MikamiUitOpen 0:4987fb36ca61 33 printf("Mode: 0x%02x\r\n", cReg);
MikamiUitOpen 0:4987fb36ca61 34
MikamiUitOpen 0:4987fb36ca61 35 while (true)
MikamiUitOpen 0:4987fb36ca61 36 {
MikamiUitOpen 2:ed374946c673 37 // Member function version
MikamiUitOpen 1:639e2ad4ab5e 38 // float tempr = tempr_.Read();
MikamiUitOpen 1:639e2ad4ab5e 39 // Operator version
MikamiUitOpen 2:ed374946c673 40 float value = tempr_;
MikamiUitOpen 0:4987fb36ca61 41
MikamiUitOpen 0:4987fb36ca61 42 #ifdef USING_AQM1602
MikamiUitOpen 0:4987fb36ca61 43 char str[8];
MikamiUitOpen 2:ed374946c673 44 sprintf(str, "%5.1f ", value);
MikamiUitOpen 0:4987fb36ca61 45 string s1 = (string)str + (char)0xDF + "C";
MikamiUitOpen 0:4987fb36ca61 46 lcd_.WriteStringXY(s1, 0, 1);
MikamiUitOpen 3:176a92f43b5b 47 if (on) lcd_.WriteStringXY(".", 15, 0);
MikamiUitOpen 3:176a92f43b5b 48 else lcd_.WriteStringXY(" ", 15, 0);
MikamiUitOpen 3:176a92f43b5b 49 on = !on;
MikamiUitOpen 0:4987fb36ca61 50 #endif
MikamiUitOpen 2:ed374946c673 51 printf("%5.1f deg. Celsius\r\n", value);
MikamiUitOpen 0:4987fb36ca61 52 wait(1);
MikamiUitOpen 0:4987fb36ca61 53 }
MikamiUitOpen 0:4987fb36ca61 54 }