LEDマトリックス2枚 BME280付き

Dependencies:   mbed

Committer:
takeuchi
Date:
Fri Jun 03 01:43:36 2016 +0000
Revision:
0:cfba9bf82ab5
LED??????2??BME?????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
takeuchi 0:cfba9bf82ab5 1 /**
takeuchi 0:cfba9bf82ab5 2 * BME280 Combined humidity and pressure sensor library
takeuchi 0:cfba9bf82ab5 3 *
takeuchi 0:cfba9bf82ab5 4 * @author Toyomasa Watarai
takeuchi 0:cfba9bf82ab5 5 * @version 1.0
takeuchi 0:cfba9bf82ab5 6 * @date 06-April-2015
takeuchi 0:cfba9bf82ab5 7 *
takeuchi 0:cfba9bf82ab5 8 * Library for "BME280 temperature, humidity and pressure sensor module" from Switch Science
takeuchi 0:cfba9bf82ab5 9 * https://www.switch-science.com/catalog/2236/
takeuchi 0:cfba9bf82ab5 10 *
takeuchi 0:cfba9bf82ab5 11 * For more information about the BME280:
takeuchi 0:cfba9bf82ab5 12 * http://ae-bst.resource.bosch.com/media/products/dokumente/bme280/BST-BME280_DS001-10.pdf
takeuchi 0:cfba9bf82ab5 13 */
takeuchi 0:cfba9bf82ab5 14
takeuchi 0:cfba9bf82ab5 15 #ifndef MBED_BME280_H
takeuchi 0:cfba9bf82ab5 16 #define MBED_BME280_H
takeuchi 0:cfba9bf82ab5 17
takeuchi 0:cfba9bf82ab5 18 #include "mbed.h"
takeuchi 0:cfba9bf82ab5 19
takeuchi 0:cfba9bf82ab5 20 //#define _DEBUG
takeuchi 0:cfba9bf82ab5 21 #define DEFAULT_SLAVE_ADDRESS (0x76 << 1)
takeuchi 0:cfba9bf82ab5 22
takeuchi 0:cfba9bf82ab5 23 #ifdef _DEBUG
takeuchi 0:cfba9bf82ab5 24 extern Serial pc;
takeuchi 0:cfba9bf82ab5 25 #define DEBUG_PRINT(...) pc.printf(__VA_ARGS__)
takeuchi 0:cfba9bf82ab5 26 #else
takeuchi 0:cfba9bf82ab5 27 #define DEBUG_PRINT(...)
takeuchi 0:cfba9bf82ab5 28 #endif
takeuchi 0:cfba9bf82ab5 29
takeuchi 0:cfba9bf82ab5 30
takeuchi 0:cfba9bf82ab5 31 /** BME280 class
takeuchi 0:cfba9bf82ab5 32 *
takeuchi 0:cfba9bf82ab5 33 * BME280: A library to correct environmental data using Boshe BME280 device
takeuchi 0:cfba9bf82ab5 34 *
takeuchi 0:cfba9bf82ab5 35 * BME280 is an environmental sensor
takeuchi 0:cfba9bf82ab5 36 * @endcode
takeuchi 0:cfba9bf82ab5 37 */
takeuchi 0:cfba9bf82ab5 38
takeuchi 0:cfba9bf82ab5 39 class BME280
takeuchi 0:cfba9bf82ab5 40 {
takeuchi 0:cfba9bf82ab5 41 public:
takeuchi 0:cfba9bf82ab5 42
takeuchi 0:cfba9bf82ab5 43 /** Create a BME280 instance
takeuchi 0:cfba9bf82ab5 44 * which is connected to specified I2C pins with specified address
takeuchi 0:cfba9bf82ab5 45 *
takeuchi 0:cfba9bf82ab5 46 * @param sda I2C-bus SDA pin
takeuchi 0:cfba9bf82ab5 47 * @param scl I2C-bus SCL pin
takeuchi 0:cfba9bf82ab5 48 * @param slave_adr (option) I2C-bus address (default: 0x76)
takeuchi 0:cfba9bf82ab5 49 */
takeuchi 0:cfba9bf82ab5 50 BME280(PinName sda, PinName sck, char slave_adr = DEFAULT_SLAVE_ADDRESS);
takeuchi 0:cfba9bf82ab5 51
takeuchi 0:cfba9bf82ab5 52 /** Create a BME280 instance
takeuchi 0:cfba9bf82ab5 53 * which is connected to specified I2C pins with specified address
takeuchi 0:cfba9bf82ab5 54 *
takeuchi 0:cfba9bf82ab5 55 * @param i2c_obj I2C object (instance)
takeuchi 0:cfba9bf82ab5 56 * @param slave_adr (option) I2C-bus address (default: 0x76)
takeuchi 0:cfba9bf82ab5 57 */
takeuchi 0:cfba9bf82ab5 58 BME280(I2C &i2c_obj, char slave_adr = DEFAULT_SLAVE_ADDRESS);
takeuchi 0:cfba9bf82ab5 59
takeuchi 0:cfba9bf82ab5 60 /** Destructor of BME280
takeuchi 0:cfba9bf82ab5 61 */
takeuchi 0:cfba9bf82ab5 62 virtual ~BME280();
takeuchi 0:cfba9bf82ab5 63
takeuchi 0:cfba9bf82ab5 64 /** Initializa BME280 sensor
takeuchi 0:cfba9bf82ab5 65 *
takeuchi 0:cfba9bf82ab5 66 * Configure sensor setting and read parameters for calibration
takeuchi 0:cfba9bf82ab5 67 *
takeuchi 0:cfba9bf82ab5 68 */
takeuchi 0:cfba9bf82ab5 69 void initialize(void);
takeuchi 0:cfba9bf82ab5 70
takeuchi 0:cfba9bf82ab5 71 /** Read the current temperature value (degree Celsius) from BME280 sensor
takeuchi 0:cfba9bf82ab5 72 *
takeuchi 0:cfba9bf82ab5 73 */
takeuchi 0:cfba9bf82ab5 74 float getTemperature(void);
takeuchi 0:cfba9bf82ab5 75
takeuchi 0:cfba9bf82ab5 76 /** Read the current pressure value (hectopascal)from BME280 sensor
takeuchi 0:cfba9bf82ab5 77 *
takeuchi 0:cfba9bf82ab5 78 */
takeuchi 0:cfba9bf82ab5 79 float getPressure(void);
takeuchi 0:cfba9bf82ab5 80
takeuchi 0:cfba9bf82ab5 81 /** Read the current humidity value (humidity %) from BME280 sensor
takeuchi 0:cfba9bf82ab5 82 *
takeuchi 0:cfba9bf82ab5 83 */
takeuchi 0:cfba9bf82ab5 84 float getHumidity(void);
takeuchi 0:cfba9bf82ab5 85
takeuchi 0:cfba9bf82ab5 86 private:
takeuchi 0:cfba9bf82ab5 87
takeuchi 0:cfba9bf82ab5 88 I2C *i2c_p;
takeuchi 0:cfba9bf82ab5 89 I2C &i2c;
takeuchi 0:cfba9bf82ab5 90 char address;
takeuchi 0:cfba9bf82ab5 91 uint16_t dig_T1;
takeuchi 0:cfba9bf82ab5 92 int16_t dig_T2, dig_T3;
takeuchi 0:cfba9bf82ab5 93 uint16_t dig_P1;
takeuchi 0:cfba9bf82ab5 94 int16_t dig_P2, dig_P3, dig_P4, dig_P5, dig_P6, dig_P7, dig_P8, dig_P9;
takeuchi 0:cfba9bf82ab5 95 uint16_t dig_H1, dig_H3;
takeuchi 0:cfba9bf82ab5 96 int16_t dig_H2, dig_H4, dig_H5, dig_H6;
takeuchi 0:cfba9bf82ab5 97 int32_t t_fine;
takeuchi 0:cfba9bf82ab5 98
takeuchi 0:cfba9bf82ab5 99 };
takeuchi 0:cfba9bf82ab5 100
takeuchi 0:cfba9bf82ab5 101 #endif // MBED_BME280_H