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

Dependencies:   mbed UIT_ADT7410

Committer:
MikamiUitOpen
Date:
Thu Apr 16 10:14:16 2020 +0000
Revision:
14:4e849df7b8a4
Parent:
13:7f89953302c5
15

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MikamiUitOpen 0:4987fb36ca61 1 //--------------------------------------------------------------
MikamiUitOpen 13:7f89953302c5 2 // ADT7410 クラスの使用例
MikamiUitOpen 13:7f89953302c5 3 // 割込みを使わない場合は "#define USING_INTERRUPT" を
MikamiUitOpen 13:7f89953302c5 4 // コメントアウトする
MikamiUitOpen 13:7f89953302c5 5 //
MikamiUitOpen 13:7f89953302c5 6 // 使用した mbed ライブラリ: Rev.172
MikamiUitOpen 13:7f89953302c5 7 // 使用した Aqm1602 用ライブラリ: Rev.7
MikamiUitOpen 13:7f89953302c5 8 //
MikamiUitOpen 13:7f89953302c5 9 // 2020/04/16, Copyright (c) 2020 MIKAMI, Naoki
MikamiUitOpen 0:4987fb36ca61 10 //--------------------------------------------------------------
MikamiUitOpen 0:4987fb36ca61 11
MikamiUitOpen 10:dc41d13e64cb 12 #pragma diag_suppress 870 // マルチバイト文字使用の警告を抑制
MikamiUitOpen 13:7f89953302c5 13 #define USING_INTERRUPT // 割込みを使わない場合はコメントアウト
MikamiUitOpen 0:4987fb36ca61 14 #include "ADT7410.hpp"
MikamiUitOpen 8:8851e1dcb109 15 using namespace Mikami;
MikamiUitOpen 0:4987fb36ca61 16
MikamiUitOpen 13:7f89953302c5 17 ADT7410 tempr_; // Nucleo-F446RE のデフォルトの I2C ポート使用
MikamiUitOpen 0:4987fb36ca61 18
MikamiUitOpen 13:7f89953302c5 19 // 温度の読み込みと表示
MikamiUitOpen 13:7f89953302c5 20 // この関数は割込みサービス・ルーチンとしても使える
MikamiUitOpen 13:7f89953302c5 21 void ReadAndPrintF()
MikamiUitOpen 13:7f89953302c5 22 {
MikamiUitOpen 13:7f89953302c5 23 float value = tempr_.Read(); // 温度の読み込み
MikamiUitOpen 13:7f89953302c5 24 printf("%5.1f [℃]\r\n", value);
MikamiUitOpen 13:7f89953302c5 25 }
MikamiUitOpen 0:4987fb36ca61 26
MikamiUitOpen 0:4987fb36ca61 27 int main()
MikamiUitOpen 0:4987fb36ca61 28 {
MikamiUitOpen 13:7f89953302c5 29 printf("\r\nADT7410 クラスのデモプログラムの開始\r\n");
MikamiUitOpen 0:4987fb36ca61 30
MikamiUitOpen 13:7f89953302c5 31 #ifdef USING_INTERRUPT
MikamiUitOpen 13:7f89953302c5 32 printf("割込みサービス・ルーチンで温度を読み込みます\r\n");
MikamiUitOpen 13:7f89953302c5 33 Ticker timer; // タイマ割込み
MikamiUitOpen 13:7f89953302c5 34 timer.attach(&ReadAndPrintF, 1); // タイマ割込み間隔: 1 秒
MikamiUitOpen 13:7f89953302c5 35 #else
MikamiUitOpen 13:7f89953302c5 36 printf("割込みを使いません\r\n");
MikamiUitOpen 13:7f89953302c5 37 #endif
MikamiUitOpen 13:7f89953302c5 38
MikamiUitOpen 0:4987fb36ca61 39 while (true)
MikamiUitOpen 0:4987fb36ca61 40 {
MikamiUitOpen 13:7f89953302c5 41 #ifndef USING_INTERRUPT // 割込みを使わない場合
MikamiUitOpen 13:7f89953302c5 42 ReadAndPrint();
MikamiUitOpen 0:4987fb36ca61 43 wait(1);
MikamiUitOpen 13:7f89953302c5 44 #endif
MikamiUitOpen 0:4987fb36ca61 45 }
MikamiUitOpen 12:9a71c11c8e92 46 }