Stap 1: De ultrasone Module
De ultrasone ter uw breadboard en haak
* Ultrasone GND tot A0
* Ultransonic Echo A1
* Ultrasone Trigger tot A3
* Ultrasone VCC tot A4
Nu deze code uploaden naar de Raad van bestuur en lcd.print vervangen door serial.print
/*
LiquidCrystal bibliotheek - Hallo wereld
Toont de toepassing een 16 x 2 LCD-scherm. De LiquidCrystal
bibliotheek werkt met alle LCD-beeldschermen die compatibel met zijn de
Hitachi HD44780 stuurprogramma. Er zijn veel van hen die er zijn, en u
kan gewoonlijk vertellen hen door de 16-pins-interface.
Deze schets worden afgedrukt "Hello World!" op het LCD-
en de tijd wordt weergegeven.
Het circuit:
* LCD RS pin naar digitale pin 12
* LCD inschakelen pin naar digitale pin 11
* LCD D4 pin naar digitale pin 5
* LCD D5 pin naar digitale pin 4
* LCD D6 pin naar digitale pin 3
* LCD D7 pin naar digitale pin 2
* LCD R/W pen op grond
* 10K Ohm weerstand:
* eindigt aan + 5V en ground
* wisser naar LCD VO pin (pin 3)
* Ultrasone GND tot A0
* Ultransonic Echo A1
* Ultrasone Trigger tot A3
* Ultrasone VCC tot A4
#include < LiquidCrystal.h >
*/
VOID Setup {}
de LCD's aantal kolommen en rijen instellen:
LCD.begin (16, 4);
pinMode (A4, OUTPUT); //attach pin 2 naar vcc
pinMode (A0, OUTPUT); //attach pin 5 met GND
seriële communicatiepoorten te initialiseren:
Serial.begin(9600);
lcd.setCursor (0, 0);
LCD.Print ("ultrasone heerser met LCD");
lcd.setCursor (0, 1);
LCD.Print ("door Alex Willis");
}
void loop {}
digitalWrite (A4, hoge);
stellen variabelen voor de duur van de ping,
en het resultaat van de afstand in inches en centimeters:
lange duur, inch, cm;
De PING))) wordt geactiveerd door een hoge pols van 2 of meer microseconden.
Geef een korte lage puls vooraf om een schoon hoog puls:
pinMode (A3, OUTPUT); / / pin 3 hechten aan Trig
digitalWrite (A3, laag);
delayMicroseconds(2);
digitalWrite (A3, hoge);
delayMicroseconds(5);
digitalWrite (A3, laag);
Dezelfde pincode wordt gebruikt voor het lezen van het signaal van de PING))): een hoog
Pulse waarvan de duur de tijd (in microseconden) van de verzending is
voor de ping naar de receptie van de echo off van een object.
pinMode (A1, INPUT); //attach pin 4 echo
duur = pulseIn (A1, hoge);
de tijd omzetten in een afstand
duim = microsecondsToInches(duration);
cm = microsecondsToCentimeters(duration);
lcd.setCursor (0, 2);
LCD.Print(inches);
LCD.Print ("in");
LCD.Print(cm);
LCD.Print("cm");
delay(1000);
LCD.Clear();
}
lange microsecondsToInches(long microseconds)
{
Volgens de Parallax gegevensblad voor de PING))), er zijn
73.746 microseconden per inch (dwz geluid reist aan 1130 voeten per
seconde). Dit geeft de afstand die is afgelegd door de ping, uitgaande
en terug te keren, zodat wij door 2 delen te krijgen van de afstand van het obstakel.
Zie: http://www.parallax.com/dl/docs/prod/acc/28015-PING-v1.3.pdf
retourneren van microseconden / 74 / 2;
}
lange microsecondsToCentimeters(long microseconds)
{
De snelheid van het geluid is 340 m/s of 29 microseconden per vierkante centimeter.
De ping reist uit en terug, zo vind je de afstand van de
we de helft van de afgelegde afstand nemen-object.
retourneren van microseconden / 29 / 2;
}
De lcd.print vervangen door serial.print zal ervoor zorgen dat uw ultrasone werkt en dan kunnen we overgaan op het LCD-scherm.