I2C 接続の温度センサ ADT7410 用のライブラリ. Library for temperature sensor ADT7410 connected using I2C interface.
Dependents: Mbed2_ConnectTestAll Demo_ADT7410
ADT7410.hpp
- Committer:
- MikamiUitOpen
- Date:
- 2017-09-01
- Revision:
- 4:3769397d3803
- Parent:
- 3:e0717c58a396
- Child:
- 5:bbcd91ba7c6b
File content as of revision 4:3769397d3803:
//-------------------------------------------------------------- // Class for using ADT7410 (Header) // Default: 13-bit resolution // 2017/09/01, Copyright (c) 2017 MIKAMI, Naoki //-------------------------------------------------------------- #ifndef ADT7410_HPP #define ADT7410_HPP #include "mbed.h" namespace Mikami { class ADT7410 { public: // Constructor #if defined(STM32F4) || defined(STM32L0) || defined(__STM32F3xx_H) ADT7410(PinName sda = D14, // SDA PinName scl = D15, // SCL uint8_t addr = 0x90); // I2C bus address // Default constructor is defined for only Nucleo #else ADT7410(PinName sda, // SDA PinName scl, // SCL uint8_t addr = 0x90); // I2C bus address #endif // Set configuration register void SetConfig(char val); // Get value in configuration register uint8_t GetConfig(); // Read temperature float Read(); // Operator shorthand for Read() operator float() { return Read(); } // Reset void Reset(); protected: // Write single byte // "STOP" を送らずにふたたび "START" を送る,つまりリスタート・コンディションに // する場合は,"repeated" を "true" にする void WriteSingleByte(char reg, bool repeated = false) { i2c_.write(ADDR_, ®, 1, repeated); } private: // Register addresses static const uint8_t TEMPER_ = 0x00; // Temperature value MSByte static const uint8_t CONFIG_ = 0x03; // Configuration static const uint8_t RESET_ = 0x2F; // Software reset const uint8_t ADDR_; // left-justified 7-bit slave address of ADT7410 I2C i2c_; // Object of I2C }; } #endif // ADT7410_HPP