본문 바로가기

Arduino4

[아두이노] OLED에 온습도 센서값 출력하기 oled에 온습도 값과 토양습도값을 출력하고자 한다. 소스코드는 다음과 같다. #include #include #include #include #include "Timer.h" //pin setting int soil = A0; DHT11 dht11(A2); Timer t; //value initialize float humi=0, temp=0,soilmoisture=0; #define SCREEN_WIDTH 128 // OLED display width, in pixels #define SCREEN_HEIGHT 64 // OLED display height, in pixels Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1); void .. 2021. 11. 15.
[아두이노] OLED 아두이노 우노(Arduino UNO R3)를 기준으로 작성했다. 아두이노 메가를 기준으로 하고싶다면 이 글을 따라하고 아래 게시글의 문제해결 2번을 참고하면 된다. https://waytocse.tistory.com/77 아두이노 메가와 OLED, BLE(HM-10) 연동 오류 해결 전에 아두이노 우노에서 oled와 블루투스 모듈을 한번에 사용하려고 했다가 메모리 문제로 인해 동시 사용을 못하게 된 후 (바로 그 문제를 직면했던 날 게시글) https://waytocse.tistory.com/76 [아두이 waytocse.tistory.com OLED을 통해 원하는 문구나 그림을 표시할 수 있다. 내가 사용한 OLED는 전에 ESP로 OLED동작시켰을 때와 같은 [ELECROW] 128x64 OLED 디.. 2021. 11. 15.
[아두이노] 토양습도센서 SoilMoisture 회로는 딱히 말할 거 없이 5V VCC, GND연결하고 DO이나 AO을 출력핀에 연결한다. 나는 A0를 출력핀으로 설정했다. 코드는 다음과 같다. int soil = A0; void setup() { Serial.begin(9600); } void loop() { int value = analogRead(soil); Serial.print("read sensor value: "); Serial.println(value); //수분이 없으면 1023, 수분이 높을수록 0 delay(1000); } 다음과 같은 환경에서 실행을 해본다. 수분이랑 닿아있지 않음으로 1023이 나타날 것이다. 시니얼모니터로 본 결과는 다음과 같다. 굿. 2021. 11. 15.
[아두이노] DHT11 온습도 센서 + 타이머 기능 활용 아래와 같이 코드를 작성한다. Timer를 사용하고 싶지 않다면 그냥 바로 loop에다가 온습도값 출력을 하면 된다. #include #include "Timer.h" int pin=A2; //출력핀 아날로그2로 설정 DHT11 dht11(pin); Timer t; void setup(){ Serial.begin(9600); t.every(2000, getValue); //2초마다 getValue()함수 호출 } float humi=0, temp=0; void loop(){ t.update(); } void getValue(){ //온습도값 출력 dht11.read(humi, temp); Serial.print("temperature: "); Serial.println(temp); Serial.print.. 2021. 11. 15.