Squashed 'tmk_core/' changes from 7967731..b9e0ea0
b9e0ea0 Merge commit '7fa9d8bdea3773d1195b04d98fcf27cf48ddd81d' as 'tool/mbed/mbed-sdk' 7fa9d8b Squashed 'tool/mbed/mbed-sdk/' content from commit 7c21ce5 git-subtree-dir: tmk_core git-subtree-split: b9e0ea08cb940de20b3610ecdda18e9d8cd7c552
This commit is contained in:
parent
a20ef7052c
commit
1fe4406f37
4198 changed files with 2016457 additions and 0 deletions
|
@ -0,0 +1,23 @@
|
|||
#include "TMP102.h"
|
||||
|
||||
#define TEMP_REG_ADDR 0x00
|
||||
|
||||
TMP102::TMP102(PinName sda, PinName scl, int addr) : m_i2c(sda, scl), m_addr(addr) {
|
||||
m_i2c.frequency(400000);
|
||||
}
|
||||
TMP102::~TMP102() { }
|
||||
|
||||
float TMP102::read() {
|
||||
const char tempRegAddr = TEMP_REG_ADDR;
|
||||
|
||||
m_i2c.write(m_addr, &tempRegAddr, 1);
|
||||
|
||||
char reg[2] = {0,0};
|
||||
m_i2c.read(m_addr, reg, 2);
|
||||
|
||||
unsigned short res = (reg[0] << 4) | (reg[1] >> 4);
|
||||
|
||||
float temp = (float) ((float)res * 0.0625);
|
||||
|
||||
return temp;
|
||||
}
|
|
@ -0,0 +1,39 @@
|
|||
#ifndef TMP102_H
|
||||
#define TMP102_H
|
||||
|
||||
#include "mbed.h"
|
||||
|
||||
//!Library for the TI TMP102 temperature sensor.
|
||||
/*!
|
||||
The TMP102 is an I2C digital temperature sensor in a small SOT563 package, with a 0.0625C resolution and 0.5C accuracy.
|
||||
*/
|
||||
class TMP102
|
||||
{
|
||||
public:
|
||||
//!Creates an instance of the class.
|
||||
/*!
|
||||
Connect module at I2C address addr using I2C port pins sda and scl.
|
||||
TMP102
|
||||
\param addr <table><tr><th>A0 pin connection</th><th>Address</th></tr><tr><td>GND</td><td>0x90</td></tr><tr><td>V+</td><td>0x92</td></tr><tr><td>SDA</td><td>0x94</td></tr><tr><td>SCL</td><td>0x96</td></tr></table>
|
||||
*/
|
||||
TMP102(PinName sda, PinName scl, int addr);
|
||||
|
||||
/*!
|
||||
Destroys instance.
|
||||
*/
|
||||
~TMP102();
|
||||
|
||||
//!Reads the current temperature.
|
||||
/*!
|
||||
Reads the temperature register of the TMP102 and converts it to a useable value.
|
||||
*/
|
||||
float read();
|
||||
|
||||
I2C m_i2c;
|
||||
|
||||
private:
|
||||
int m_addr;
|
||||
|
||||
};
|
||||
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue