1
0
tmk_keyboard/tool/mbed/mbed-sdk/libraries/tests/peripherals/TMP102/TMP102.cpp
Jun Wako 1fe4406f37 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
2015-04-24 16:26:14 +09:00

24 lines
483 B
C++

#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;
}