Dissolved oxygen code

Dependencies:   mbed

Files at this revision

API Documentation at this revision

Comitter:
e58136782000
Date:
Fri Nov 03 09:16:32 2017 +0000
Commit message:
Dissolved oxygen code;

Changed in this revision

BME280/BME280.hpp Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/BME280/BME280.hpp	Fri Nov 03 09:16:32 2017 +0000
@@ -0,0 +1,79 @@
+#include "mbed.h"
+
+#ifndef BME280_HPP
+#define BME280_HPP
+
+#define BME280_size 5
+
+Serial sensor(PA_11,PA_12);// Tx,Rx
+Serial pc(USBTX,USBRX);
+class BME280{
+public:
+    void judgement_data(char buf[]);
+    int data_read();
+
+    int datareadfuiction(int data);
+    void receive();   
+private:
+    int buf[BME280_size];
+    void send_AT();
+
+    int data;
+
+};
+int BME280::datareadfuiction(int data)
+{
+   return  buf[data];
+}
+void BME280::judgement_data(char buf[])
+{
+//    int i=0;
+    
+/*    if(buf[i++]== 0x5A){
+        //pc.printf("first_step\n");
+        if(buf[i++]== 0x5A){
+            //pc.printf("second_step\n");
+           //i++;//go to data type
+            if(buf[i] == 0x15){
+                //pc.printf("Lux type\n");
+                i++;//04
+                Lux = ((buf[i+1]<<24) | (buf[i+2]<<16) | (buf[i+3]<<8) | buf[i+4])/100;
+                //Lux = (0x00<<24) | (0x00<<16) | (0xFE<<8) | 0x40;//test
+                //pc.printf("Lux = %d\n", Lux);
+            }else if(buf[i] == 0x45){
+                //pc.printf("temp type\n");
+                i++;//0A
+                Temp = ((buf[i+1]<<8)|(buf[i+2]))/100;
+                Preesure = ((buf[i+3]<<24)|(buf[i+4]<<16)|(buf[i+5]<<8)|(buf[i+6]))/100;
+                Hum = ((buf[i+7]<<8)|(buf[i+8]))/100;
+                Height = ((buf[i+9]<<8)|(buf[i+10]));
+                //pc.printf("Temp = %d\n", Temp);
+                //pc.printf("Preesure = %d\n", Preesure);
+                //pc.printf("Hum = %d\n", Hum);
+                //pc.printf("Height = %d\n", Height);
+            }
+        }
+    }*/
+}
+void BME280::receive()
+{
+    pc.printf("start receive\n");
+    pc.printf("buf 0 %d\n",buf[0]);
+    for(int i=0;i<BME280_size;i++){
+        buf[i] = sensor.getc(); 
+        pc.printf("data %d\n",i); 
+        //pc.putc(buf[i]);
+    }
+    
+}
+
+int BME280::data_read()
+{\
+    receive();
+    //wait(0.2);
+//    judgement_data(this->buf);
+    
+    return data;
+}
+
+#endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Fri Nov 03 09:16:32 2017 +0000
@@ -0,0 +1,23 @@
+#include "mbed.h"
+#include "BME280.hpp"
+//------------------------------------
+// Hyperterminal configuration
+// 9600 bauds, 8-bit data, no parity
+//------------------------------------
+
+Serial serial(USBTX, USBRX);
+BME280 BME280;
+
+
+int main()
+{
+    int data;
+    while(1)
+    {
+        serial.printf("test 1\n");
+        BME280.receive();
+        serial.printf("test 2\n");
+        data= BME280.datareadfuiction(0);
+        serial.printf("first data : %d\n",data);
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Fri Nov 03 09:16:32 2017 +0000
@@ -0,0 +1,1 @@
+https://os.mbed.com/users/mbed_official/code/mbed/builds/fb8e0ae1cceb
\ No newline at end of file