BASIC4MCU | 질문게시판 | 답변 : 아두이노 속도측정, 속도를 LCD에 표시, 가까워지면 부저
페이지 정보
작성자 master 작성일2022-05-27 18:49 조회8,691회 댓글0건본문
#include <LiquidCrystal.h>
LiquidCrystal LCD(4,6,10,11,12,13);
//
const int activeB=7;
//
void setup()
LCD.begin(16,2);
pinMode(activeB,OUTPUT);
pinMode(2,INPUT); pinMode(3,OUTPUT);
Serial.begin(9600);
}
//
void loop()
digitalWrite(3,HIGH); delayMicroseconds(10); digitalWrite(3,LOW);
unsigned long duration1=pulseIn(2,HIGH);
float distance1=((float)(340*duration1)/10000)/2;
delay(100);
digitalWrite(3,HIGH); delayMicroseconds(10); digitalWrite(3,LOW);
unsigned long duration2=pulseIn(2,HIGH);
float distance2=((float)(340*duration2)/10000)/2;
//
float velocity=((float)(distance2-distance1)*10);
String disStr=String(distance2);
String velStr=String(velocity)
LCD.setCursor(0,0); LCD.print("dis: " + velStr + "cm");
LCD.setCursor(0,1); LCD.print("vel: " + velStr + "cm/s");
//
if((distance1<10)||(distance2<10)){
digitalWrite(activeB,1); delay(500); digitalWrite(activeB,0); delay(500);
}
else{
delay(1000);
}
//
LCD.clear();
}
부저는 7번에 연결합니다.
댓글 0
조회수 8,691등록된 댓글이 없습니다.