read TI TMP102 temperature and display on SSD1306 OLED

Dependencies:   Adafruit_GFX TMP102 mbed

Fork of DisplayOled by Frank Girald

Revision:
1:c636842ce79c
Parent:
0:3b87797f65fc
Child:
3:6fd4514ca28c
--- a/main.cpp	Tue May 16 15:18:54 2017 +0000
+++ b/main.cpp	Tue Jun 12 03:23:03 2018 +0000
@@ -1,3 +1,4 @@
+/*
 #include "mbed.h"
 #include "Adafruit_SSD1306.h"
 
@@ -9,13 +10,13 @@
 public:
     I2CPreInit(PinName sda, PinName scl) : I2C(sda, scl)
     {
-      //frequency(400000); 
-        frequency(100000);
-        start();
+        frequency(1000000); 
+        //frequency(100000);
+        //start();
     };
 };
 
-I2CPreInit myI2C(PTE0,PTE1);
+I2CPreInit myI2C(PB_9,PB_8);
 Adafruit_SSD1306_I2c myOled(myI2C,NC,0x78,64,128);
 
 int main()
@@ -36,68 +37,79 @@
     }
 }
 
+*/
 
 
 
 
 
-/*
 #include "mbed.h"
 #include "Adafruit_SSD1306.h"
+#include "test_TMP102.h"
 
 class I2CPreInit : public I2C
 {
 public:
  I2CPreInit(PinName sda, PinName scl) : I2C(sda, scl)
  {
- frequency(100000);
- start();
+    frequency(1000000);
+    //start();
  };
 };
  
-I2CPreInit myI2C(PTE0,PTE1);
+I2CPreInit myI2C(PB_9,PB_8);
 Adafruit_SSD1306_I2c myOled(myI2C,NC,0x78,64,128);
+
+test_TMP102 temp1(myI2C);
  
 int main()
 { 
-
- uint16_t x=0;
-  
- myOled.begin();
- myOled.clearDisplay();
- myOled.display();
- wait(0.1);
-  
- myOled.fillCircle(64, 42, 10, 1); 
- myOled.display();
- wait(1);
- myOled.fillCircle(64, 42, 5, 0); 
- myOled.display();
- wait(1);
-  
- myOled.clearDisplay();
- myOled.display();
- wait(0.1);
+    uint16_t x=0;
   
- myOled.printf("\r\n OLED %ux%u \r\n\r\n Hello World\r\n\n", myOled.width(), myOled.height());
-  
- myOled.drawRect(0, 0, 128, 64,1);
- myOled.display();
- wait(0.5);
- while(1)
- {
-  
- myOled.printf("%u\r ",x);
+    // ------------ tmp102 --------------
+    temp1.setExtendedMode(1);
+    temp1.setConversionRate(2);
+    temp1.sleep();
+    
+    // ------------  oled  --------------
+    myOled.begin();
+    myOled.clearDisplay();
+    myOled.display();
+    wait(0.1);
+      
+    myOled.fillCircle(64, 42, 10, 1); 
+    myOled.display();
+    wait(1);
+    myOled.fillCircle(64, 42, 5, 0); 
+    myOled.display();
+    wait(1);
+      
+    myOled.clearDisplay();
+    myOled.display();
+    wait(0.1);
+      
+    myOled.printf("\r\n OLED %ux%u \r\n\r\n Hello World\r\n\n", myOled.width(), myOled.height());
+      
+    myOled.drawRect(0, 0, 128, 64,1);
+    myOled.display();
+    wait(0.5);
+    while(1)
+    {
+        temp1.oneShot();
+        float t1 = temp1;
+        
+        //myOled.printf("%u\r ",x);
+        myOled.printf(" Temp: %.3f ~c\r", t1);
 
- myOled.drawRect(0, 0, 128, 64,1); 
-  
- myOled.display();
- x = x + 1; 
- wait(0.01);
- }
+        myOled.drawRect(0, 0, 128, 64,1); 
+      
+        myOled.display();
+        x = x + 1; 
+        wait(0.5);
+    }
 }
-*/
 
 
 
 
+