如何解决如何使用 tinkercard 在停车场项目中使用 lcd
我正在尝试使用 arduino 进行停车场项目,但液晶显示器并未真正输出正确的单词。例如“清除”我被输出“cdeared”
#include <LiquidCrystal.h>
#define green 13
#define yellow 12
#define red 11
#define buzzer 10
LiquidCrystal lcd(2,3,4,5,6,7);
int inches = 0;
int cm = 0;
long readUltrasonicdistance(int triggerPin,int echoPin)
{
pinMode(triggerPin,OUTPUT); // Clear the trigger
digitalWrite(triggerPin,LOW);
delayMicroseconds(2);
// Sets the trigger pin to HIGH state for 10 microseconds
digitalWrite(triggerPin,HIGH);
delayMicroseconds(10);
digitalWrite(triggerPin,LOW);
pinMode(echoPin,INPUT);
// Reads the echo pin,and returns the sound wave travel time in microseconds
return pulseIn(echoPin,HIGH);
}
void setup()
{
Serial.begin(9600);
pinMode(green,OUTPUT);
pinMode(yellow,OUTPUT);
pinMode(red,OUTPUT);
pinMode(buzzer,OUTPUT);
lcd.begin(16,2);
}
void loop()
{
// measure the ping time in cm
cm = 0.01723 * readUltrasonicdistance(7,7);
// convert to inches by dividing by 2.54
inches = (cm / 2.54);
Serial.print(inches);
Serial.print("in,");
Serial.print(cm);
Serial.println("cm");
delay(100); // Wait for 100 millisecond(s)
if(cm>=100)
{
digitalWrite(green,HIGH);
delay(500);
digitalWrite(green,LOW);
delay(500);
lcd.setCursor(0,0);
lcd.print("All cleared :) ");
lcd.clear();
}
else if(cm>=50 && cm<100)
{
digitalWrite(yellow,HIGH);
delay(500);
digitalWrite(yellow,0);
lcd.print("Traffic,be keen : ");
lcd.clear();
}
else if(cm>=25 && cm<50)
{
digitalWrite(red,HIGH);
delay(500);
digitalWrite(red,0);
lcd.print("Very Close,be keen : ");
lcd.clear();
}
else if(cm<25)
{
digitalWrite(buzzer,HIGH);
delay(500);
digitalWrite(buzzer,0);
lcd.print("Danger,you should stop :( ");
delay(10);
}
}
项目链接在这里https://www.tinkercad.com/things/7YGUx25OlB8-copy-of-car-parking-with-ultrasonic-sensor/editel?sharecode=2wBavFGycNlhRST4WIMblZCpkXLWwaaHzYAndvYEBao 请在这方面帮助我,因为我对它还是那么陌生。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。