BASIC4MCU | 질문게시판 | 아두이노 질문입니다!
페이지 정보
작성자 M4E2A8 작성일2019-08-19 15:28 조회11,820회 댓글2건본문
온도변화에 따른 전압의 변화를 확인하고 싶어서 다이오드의 (전압)아날로그 값을 읽은다음 시리얼 모니터에 출력할 수 있게 만들어 보았습니다.(LCD는 온도 확인차 달아놨습니다!)
그런데 확인된 전압값이 계속 0~5000사이로 변동하는데 혹시 이유를 알 수 있을까요..??
(+5V 에 연결하였습니다.)
#include "DHT.h" //DHT11를 사용하기 위한 라이브러리 호출
#include
LiquidCrystal lcd(4,5,8,9,10,11);
#define DHTPIN 7 //DHT11의 포트 결정
#define DHTTYPE DHT11 //DHT의 타입이 DHT11임을 정의
DHT dht(DHTPIN,DHTTYPE); //정의한 값을 함수에 적용
float V;
void setup(){
lcd.begin(16,2); //LCD 2열 16칸 사용
lcd.clear(); //LCD 초기화 상태
Serial.begin(9600);
dht.begin(); //DHT 작동
}
void loop(){
float humidity= dht.readHumidity(); //습도 측정
float temperture = dht.readTemperature(); //온도 측정
float Voltage, Vol;
V = analogRead(A1);
Voltage = V/1023;
Vol = Voltage *5000;
String temp = "temp";
temp += (int)temperture;
temp += "+-2C";
lcd.setCursor(0,0);
lcd.print(temp);
Serial.println(Vol);
delay(500);
}
댓글 2
조회수 11,820M4E2A8님의 댓글
M4E2A8 작성일
해결하였습니다!!
풀업저항의 중요성을 다시금 깨닫게 되네요 ㅎㅎ
master님의 댓글
master
DHT11의 온도는 시리얼 통신으로 출력하므로
전압을 읽어서는 온도를 알 수가 없습니다.