![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
I2C 接続の温度センサ ADT7410 用のライブラリの使用例. Demo program of the library for temperature sensor ADT7410 connected using I2C interface.
Dependencies: mbed UIT_ADT7410
main.cpp@14:4e849df7b8a4, 2020-04-16 (annotated)
- Committer:
- MikamiUitOpen
- Date:
- Thu Apr 16 10:14:16 2020 +0000
- Revision:
- 14:4e849df7b8a4
- Parent:
- 13:7f89953302c5
15
Who changed what in which revision?
User | Revision | Line number | New 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 | } |