Lekcja 18: Gra w szybką reakcję
        Tematem tej lekcji jest prosta gra sprawdzającą nasz czas reakcji przez włączenie przełącznika po włączeniu się diody.
Do projektu będziemy potrzebowali:
        
- wyświetlacz lcd,
 - Arduino Uno,
 - rezystory 220ohm,
 - 1 diodę led,
 - 1 potencjometr,
 - 1 przycisk,
 - biblioteki arduino.
 
Układ montujemy wg schematu poniżej:
        Piszemy kod w arduino IDE:
#include < LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
volatile int a=0;
void setup() {
   pinMode(8,OUTPUT);
   pinMode(1,INPUT); 
   digitalWrite(8,HIGH); 
   lcd.begin(16, 2);  
}
void loop() {
lcd.setCursor(0,0);
lcd.print("  Czas reakcji");
digitalWrite(8,HIGH); 
a++;
delay(1);
if(digitalRead(1)) {
  digitalWrite(8,LOW);
  lcd.setCursor (4,1);
  lcd.print(a);
  lcd.print(" ms");
  delay(5000);
  a=0;
  lcd.clear();
}} 
        Dokładne podłączenie wyświetlacza lcd możecie zobaczyc w lekcji 9.
- Linia 1 deklarujemy bibliotekę wyświetlacza lcd,
 - Linia 2 podajemy piny sterujące wyświetlaczem,
 - Linia 3 deklarujemy zmienną, która będzie przechowywać czas naszej reakcji,
 - Linia 6-7 deklarujemy pin 8 jako wyjście a pin 1 jako wejście,
 - linia 8 wysyłamy sygnał na pin 8 (dioda powinna się zaświecić),
 - linia 9 podajemy liczbę znaków i wierszy w wyświetlaczu,
 - linia 12 ustawiamy kursor na pierwszy znak i wiersz,
 - linia 13 wyświetlamy czas reakcji,
 - linia 14 wysyłamy sygnał na pin 8 (dioda powinna się zaświecić),
 - linia 15 zwiększamy wartość zmiennej,
 - linia 16 sprawdzamy czy przycisk na podłączony na pin 1 został wciśnięty,
 - linia 17 wyłączamy diodę,
 - linia 18 ustawiamy kursor na 4 znak w pierwszym wierszu,
 - linia 19-20 wyświetlamy czas w milisekundach, który oznacza czas reakcji,
 - linia 21 robimy opóźnienie 5-sekundowe,
 - linia 22 zerujemy zmienną a,
 - linia 23 czyścimy ekran.
 
         Powrót do spisu materiałów






