BASIC4MCU | 질문게시판 | 아두이노 초음파센서와 LCD키패드쉴드 사용하는 것 질문입니다
페이지 정보
작성자 명훈 작성일2018-09-18 21:33 조회13,358회 댓글0건본문
아두이노 초음파 센서와 LCD 키패드 쉴드, 부저를 이용하려고 하는데요
초음파 센서로 5센치 이내일때 한번, 30센치 이상일 때 또 한번 체크해서 두번이 모였을 떄 부저에서 소리가 나면서 키패드쉴드에 숫자가 카운팅 되는 것에 대해서 공부 하고 있는 중인데요
지금 짜 본 코드는 이정도 인데 더이상 진전이 없고 어떻게 해야 할지 모르겠습니다ㅜㅜ
#include <LiquidCrystal.h> //LCD 라이브러리 선언
#define trigPin 2
#define echoPin 3
LiquidCrystal lcd(8, 9, 4, 5, 6, 7); // LCD 제어를 위한 핀 설정int buzzer = 5; //buzzer 핀 설정 Digital
void setup()
{
Serial.begin(9600); // 시리얼 통신
lcd. begin(16,2); //1602LCD
lcd. setCursor(0, 0); // LCD에 커서를 0,0에 위치
pinMode(buzzer, OUTPUT); //buzzer 핀모드OUTPUT
pinMode(trigPin, OUTPUT); // trigPin모드 OUTPUT
pinMode(echoPin, INPUT); //echoPin 모드 INPUT
}void loop()
{
long duration, distance; //시간 거리
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10); //trigPin을 10마이크로 초동안 HIGH
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = (duration/2) / 29.1; //
lcd.setCursor(0, 1); //lcd 커서 0.1에 위치
lcd.println(distance); //커서 위치에서 데이터 출력
lcd.setCursor(11, 1); //lcd 커서 11.1에 위치
lcd.print("cm"); // 커서위치에 문자 출력if (distance >= 30 || distance <= 5 ) //30cm이상 값이 5cm이하
{
Serial.println("count");
}
else
{
Serial.println("no count");
}
delay(1000); //딜레이 1초
}
댓글 0
조회수 13,358등록된 댓글이 없습니다.