BASIC4MCU | 질문게시판 | 답변 : 아두이노 소스코드합치기 질문
페이지 정보
작성자 master 작성일2019-11-30 05:56 조회9,971회 댓글1건
https://www.basic4mcu.com/bbs/board.php?bo_table=gac&wr_id=10971
본문
// MCU BASIC: https://www.basic4mcu.com// DateTime : 2019-11-30 오전 5:55:31// by Ok-Hyun Park//----------------------------------------------#include "MQ131.h"MQ131 sensor(12,A13,LOW_CONCENTRATION,10000);//#include "MQ7.h"MQ7 mq7(A8,5.0);//#include <U8glib.h>#include <Adafruit_Sensor.h>#include <DHT.h>#include <DHT_U.h>#include <Wire.h>#include "RTClib.h"// 0.96인치 128x64 OLEDU8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // I2C/TWI// Setup RTCRTC_DS3231 RTC;int monthIndex[122]={0,3,6,9,12,15,18,21,24,27,30,33};String thisMonth="";String thisTime="";String thisDay="";// DHT22 온도/습도 센서#define DHTPIN 22 // Pin which is connected to the DHT sensor.#define DHTTYPE DHT11 // DHT 22(AM2302)DHT_Unified dht(DHTPIN,DHTTYPE);uint32_t dht22DelayMS=0;//온도 이미지삽입const uint8_t temp[]PROGMEM={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xFF,0x07,0xFF,0xC0,0x07,0xFF,0x87,0xFF,0xC0,0x07,0x01,0xC7,0x00,0x00,0x07,0x01,0xC7,0x00,0x00,0x07,0xFF,0xC7,0x00,0x00,0x07,0xFF,0x87,0x00,0x00,0x01,0xFF,0x07,0xFF,0xC0,0x00,0x38,0x07,0xFF,0xC0,0x0F,0xFF,0xC0,0x38,0x00,0x0F,0xFF,0xC0,0x38,0x00,0x07,0x00,0x00,0x38,0x00,0x07,0x00,0x00,0x38,0x00,0x07,0x00,0x00,0x38,0x00,0x07,0xFF,0xCF,0xFF,0xC0,0x07,0xFF,0xCF,0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,};//습도 이미지삽입const uint8_t hum[]PROGMEM={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0x07,0xFF,0xC0,0x01,0xFE,0x07,0xFF,0xC0,0x01,0xCF,0x07,0x00,0x00,0x03,0xC7,0x87,0x00,0x00,0x07,0x83,0xC7,0x00,0x00,0x00,0x00,0x07,0x00,0x00,0x0F,0xFF,0xC7,0xFF,0xC0,0x0F,0xFF,0xC7,0xFF,0xC0,0x00,0x00,0x00,0x38,0x00,0x07,0x03,0xC0,0x38,0x00,0x07,0xFF,0xC0,0x38,0x00,0x07,0xFF,0xC0,0x38,0x00,0x07,0x03,0xC0,0x38,0x00,0x07,0xFF,0xCF,0xFF,0xC0,0x07,0xFF,0xCF,0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,};//void setup(){Wire.begin();RTC.begin();dht.begin();sensor_t sensor;dht.temperature().getSensor(&sensor);dht22DelayMS=sensor.min_delay/1000;//Serial.begin(115200);//sensor.calibrate();Serial.print("R0="); Serial.print(sensor.getR0()); Serial.println(" Ohms");Serial.print("Time to heat="); Serial.print(sensor.getTimeToRead()); Serial.println(" s");}//void loop(){float temperature,humidity;getDHT11Data(&temperature,&humidity);u8g.firstPage();do{draw();u8g.setFont(u8g_font_fub14); u8g.setPrintPos(35,35); u8g.print(": "); u8g.print(temperature); u8g.print("\xb0""C"); //온도기호삽입u8g.setFont(u8g_font_fub14); u8g.setPrintPos(35,58); u8g.print(": "); u8g.print(humidity); u8g.print("%");delay(dht22DelayMS);}while(u8g.nextPage());//----------------------------------Serial.print(mq7.getPPM()); Serial.println("ppm");//----------------------------------sensor.begin();Serial.print("Sampling...");Serial.print("Concentration O3: "); Serial.print(sensor.getO3(PPM)); Serial.println(" ppm");Serial.print("Concentration O3: "); Serial.print(sensor.getO3(PPB)); Serial.println(" ppb");Serial.print("Concentration O3: "); Serial.print(sensor.getO3(MG_M3)); Serial.println(" mg/m3");Serial.print("Concentration O3: "); Serial.print(sensor.getO3(UG_M3)); Serial.println(" ug/m3");delay(60000);}//void draw(void){u8g.setFont(u8g_font_7x13r);DateTime now=RTC.now();//thisDay=String(now.day(),DEC)+"/";thisMonth=String(now.month(),DEC)+"/";thisDay=thisDay+thisMonth+String(now.year(),DEC);const char *newDay=(const char*)thisDay.c_str();u8g.drawStr(50,10,newDay);//thisTime="";if(now.hour() <10){ thisTime="0"+thisTime; } thisTime=thisTime+String(now.hour())+": ";if(now.minute()<10){ thisTime=thisTime+"0"; } thisTime=thisTime+String(now.minute()); //+": ";//const char *newTime=(const char*)thisTime.c_str();u8g.drawStr(5,10,newTime);u8g.drawBitmapP(0,14,5,24,temp);u8g.drawBitmapP(0,38,5,24,hum);}//void getDHT11Data(float *temperature,float *humidity){sensors_event_t event;dht.temperature().getEvent(&event);if(!isnan(event.temperature)){ *temperature=event.temperature; }else { *temperature=-1; }//dht.humidity().getEvent(&event);if(!isnan(event.relative_humidity)){ *humidity=event.relative_humidity; }else { *humidity=-1; }}
댓글 1
조회수 9,971구슬박은놈님의 댓글
구슬박은놈 작성일감사합니다 !