work.

Dependencies:   Blynk mbed

main.cpp

Committer:
lixianyu
Date:
2016-06-13
Revision:
1:0e75de2a5d21
Parent:
0:d8f4c441e032
Child:
2:6cd3b0947188

File content as of revision 1:0e75de2a5d21:

#include "mbed.h"

#include "userDef.h"
#include "sensor.h"
#include "oled.h"
//#include "WiFiBlynk.h"
//#include "Adafruit_SSD1306.h"

//Serial           pc(D1, D0); // tx, rx
DigitalOut myled(P0_13);
Timer g_Timer;
//I2C g_i2c(P0_11, P0_10);//SDA, SCL
//Adafruit_SSD1306_I2c adaf(g_i2c, P0_13, 0x78, 64, 128);
int main()
{
    //pc.baud(115200);
    //myled = 0;
    int ms = 0;
    g_Timer.start();
    //U8GLIB_SSD1306_MICRODUINO_128X64 u8glibhehe(U8G_I2C_OPT_NONE);     //设置OLED型号
    //Serial.begin(9600); // See the connection status in Serial Monitor
    // Set ESP8266 baud rate
    //EspSerial.begin(115200);

    //Blynk.begin(auth, wifi, SSID, PASS);

    // Setup a function to be called every second
    //temHumtimer.setInterval(2000L, senTempHumi);
    wait_ms(1000);
    //Adafruit_SSD1306_I2c adaf(g_i2c, P0_13, 0x78, 64, 128);
    //Adafruit_SSD1306_I2c adaf(g_i2c, P0_13);
    wait_ms(2000);
    //u8glibhehe.init_u8g();
    oled_init();
    while(1) {
        //printf("Enter while(1)\r\n");
        myled = !myled;
        //Blynk.run(); // All the Blynk Magic happens here...
        //temHumtimer.run(); // Initiates SimpleTimer

        //updateTempHumi();
        //updateLight();
        //updateCH4();

        ms = g_Timer.read_ms();
        #if 1
        if (pm25_time > ms) pm25_time = ms;
        if (ms - pm25_time > INTERVAL_pm25) {
            //sensorPM25 = PM25();
            pm25_time = ms;    //更新计时器
        }
        #endif
        #if 0
        adaf.clearDisplay();
        adaf.drawRect(1, 1, 30,30, WHITE);
        adaf.display();
        #endif
        //drawRect(int16_t x, int16_t y, int16_t w, int16_t h, uint16_t color);
        //oled(u8glibhehe, sensor_tem, sensor_hum, sensor_light, sensorPM25, Sensor_etoh);
        oled(sensor_tem, sensor_hum, sensor_light, sensorPM25, Sensor_etoh);
        wait(0.1);
        
    }
}

/** Write to an I2C slave
     *
     * Performs a complete write transaction. The bottom bit of
     * the address is forced to 0 to indicate a write.
     *
     *  @param address 8-bit I2C slave address [ addr | 0 ]
     *  @param data Pointer to the byte-array data to send
     *  @param length Number of bytes to send
     *  @param repeated Repeated start, true - do not send stop at end
     *
     *  @returns
     *       0 on success (ack),
     *   non-0 on failure (nack)
     */
int i2c_write1(int address, const char *data, int length)
{
    //return g_i2c.write(address, data, length);
}

void log(char *s)
{
    printf("%s\r\n", s);
}

void open_led(void)
{
    //myled = 1;
}

void close_led(void)
{
    //myled = 0;
}