아두 이노 온도 lcd - adu ino ondo lcd

아두 이노 온도 lcd - adu ino ondo lcd

03 Sep

LM35온도센서는 외부온도에 따라 비례하는 전압값을 출력하는 센서로 아두이노 보드로 손쉽게 온도값을 얻을 수 있습니다.  0°C에서는 0V이며 1°C 당 10mV씩 전압이 증가합니다.

이 번 실험에서는 앞서 기본실습7에서 사용한 1602 텍스트 LCD로 LM35온도센서로부터 얻은 온도값을 표시하는 실험을 합니다. 1602 텍스트 LCD에 대한 내용은 기본실습7을 참조하시기 바랍니다.

아래는 LM35온도센서입니다.

아두 이노 온도 lcd - adu ino ondo lcd

아두 이노 온도 lcd - adu ino ondo lcd

결선방법

LCD결선방법은 기본실습7을 참조하시기 바랍니다. LM35온도센서의 1번핀은 5V에 3번핀은 GND에 연결합니다. 2번핀(온도 전압값 출력핀)은 아두이노 우노보드의 아날로그입력 A4에 연결합니다.

아두 이노 온도 lcd - adu ino ondo lcd

소스코드

아래는 소스코드입니다. 아두이노 IDE에 붙여넣기 하여 컴파일하고 업로드해봅니다.

// 아두이노 LM35 온도센서 실험
#include <LiquidCrystal.h> //LCD라이브러리

LiquidCrystal lcd(7,8,9,10,11,12);//RS,E,DB4,DB5,DB6,DB7

int potPin = 4; //LM35센서로부터 입력을 받을 포트를 아날로그 A4핀으로 설정
float temperature = 0; //온도를 저장할 변수 선언
long val=0; //val 변수 선언

void setup()
{
  lcd.begin(16, 2);  //LCD 초기화
  lcd.print("LM35 Thermometer");  //LM35 Thermometer 를 LCD에 표시
  delay(1000); //1000ms 지연
}

void loop ()                     
{

  val = analogRead(potPin); //LM35센서로부터 불러온 값을 val변수에 저장
  temperature = (val*4.8828125); //val값을 실제온도*10으로 변환
  lcd.clear(); //LCD 화면 클리어
  lcd.print("LM35 Thermometer"); //LCD화면 첫줄에 LM35 Thermometer 표시
  lcd.setCursor(0, 1) ; //LCD에 표시할 위치를 2번째 줄 맨앞으로 이동
  lcd.print((long)temperature / 10); //온도의 정수값표시
  lcd.print(".");    //소수점표시
  lcd.print( (long)temperature % 10); //소수점이하 온도 표시
  lcd.print((char)223); //ㅇ표시
  lcd.print("C"); //C표시

  delay(2000); //2초간 지연함. 새로운 온도값을 2초마다 불러오게 됨

}

아두 이노 온도 lcd - adu ino ondo lcd

Author

아두 이노 온도 lcd - adu ino ondo lcd

scipia

싸이피아