A feature complete driver for the LM75B temperature sensor from NXP.

Fork of LM75B by Neil Thiessen

Revision:
9:74b44a27fa40
Parent:
8:2b797c309258
Child:
13:27c19044ace6
--- a/LM75B.cpp	Wed Aug 14 04:33:25 2013 +0000
+++ b/LM75B.cpp	Wed Aug 28 17:17:24 2013 +0000
@@ -15,7 +15,6 @@
  */
 
 #include "LM75B.h"
-#include "mbed.h"
 
 LM75B::LM75B(PinName sda, PinName scl, Address addr) : m_I2C(sda, scl)
 {
@@ -23,6 +22,23 @@
     m_Addr = (int)addr;
 }
 
+bool LM75B::open(void)
+{
+    //Probe for the LM75B using a Zero Length Transfer
+    if (!m_I2C.write(m_Addr, NULL, 0)) {
+        //Reset the device to default configuration
+        write8(REG_CONF, 0x00);
+        write16(REG_THYST, 0x4B00);
+        write16(REG_TOS, 0x5000);
+
+        //Return success
+        return true;
+    } else {
+        //Return failure
+        return false;
+    }
+}
+
 LM75B::PowerMode LM75B::powerMode(void)
 {
     //Read the 8-bit register value