Tedd OKANO / PCT2075

Dependents:   PCT2075_Hello Brushless_STM3_ESC_2019_10 Alternator2020_06

Revision:
0:ae0333775d7e
diff -r 000000000000 -r ae0333775d7e base_class/I2CTempSensor.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/base_class/I2CTempSensor.cpp	Thu Mar 05 06:11:06 2015 +0000
@@ -0,0 +1,41 @@
+#include "I2CTempSensor.h"
+
+I2CTempSensor::I2CTempSensor( PinName i2c_sda, PinName i2c_scl, char address ) 
+    : i2c_p( new I2C( i2c_sda, i2c_scl ) ), i2c( *i2c_p ), adr( address )
+{
+    init();
+}
+
+I2CTempSensor::I2CTempSensor( I2C &i2c_obj, char address )
+    : i2c_p( NULL ), i2c( i2c_obj ), adr( address )
+{
+    init();
+}
+
+I2CTempSensor::~I2CTempSensor()
+{
+    if ( NULL != i2c_p )
+        delete  i2c_p;
+}
+
+void I2CTempSensor::init( void )
+{
+    char    command[ 2 ];
+
+    command[ 0 ]    = LM75B_Conf;
+    command[ 1 ]    = 0x00;
+
+    i2c.write( adr, command, 2 );
+}
+
+short I2CTempSensor::read16( void )
+{
+    char    command[ 2 ];
+
+    command[ 0 ]    = LM75B_Temp;
+
+    i2c.write( adr, command, 1 );  // Send command string
+    i2c.read(  adr, command, 2 );  // read two bytes data
+
+    return ( (command[ 0 ] << 8)| command[1] );
+}