LCD에 거리 표시하기
Coddy Arduino 여정의 디스플레이와 센서 섹션에 포함된 레슨. 24개 중 23번째.
센서와 화면을 사용하면 컴퓨터 없이 작동하는 장치를 만들 수 있습니다. 여기서는 HC-SR04가 거리를 측정하고 LCD가 그 거리를 표시합니다.
각 단계는 이전 수업에서 배운 내용입니다. 에코 시간을 측정하고, 센티미터로 변환한 다음, 단위를 뒤에 붙여 맨 아래 행에 출력합니다.
int cm = duration * 0.034 / 2;
lcd.setCursor(0, 1);
lcd.print(cm);
lcd.print(" cm ");cm 뒤의 공백이 중요합니다. 150 cm에서 20 cm로 바뀌면 새 텍스트가 더 짧아지므로, 공백이 없으면 화면에 20 cmm이 표시됩니다. 여기서는 거리를 int로 저장합니다. 정수 센티미터는 작은 화면에서 더 읽기 쉽습니다.
챌린지
중급LCD의 맨 윗줄에는 Distance:가 표시되고 스케치는 에코 시간을 측정합니다. 그 아래에 거리를 표시하세요:
- 시간을 정수 센티미터로 변환하세요
- 맨 아랫줄의 시작 부분에 숫자를 출력한 다음
cm를 출력하세요. 예:25 cm - 남은 문자를 공백으로 덮어쓰세요
실행을 누르고 물체를 움직인 다음 확인을 누르세요.
직접 해보기
#include <LiquidCrystal.h>
// RS, E, D4, D5, D6, D7
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
const int trigPin = 9;
const int echoPin = 10;
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
lcd.begin(16, 2);
lcd.print("Distance:");
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
long duration = pulseIn(echoPin, HIGH);
// 거리를 센티미터 단위로 계산하고 25 cm처럼 아래쪽 줄에 표시합니다
delay(200);
}
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
디스플레이와 센서의 모든 레슨
직접 연습해 보세요: Arduino 플레이그라운드