top of page

Responsive lights by Joystic

#include <Wire.h>                

#include <LiquidCrystal_I2C.h>    

 

LiquidCrystal_I2C lcd(0x27,16,2);

                                 

#define joyX A0         #הגדרת צירים לג'ויסטיק

#define joyY A1

 

int button=2;

int buttonState = 0;                #הגדרת לחצנים

int buttonState1 = 0;

 

void setup() {

  pinMode(7,OUTPUT);

  pinMode(button,INPUT);

  digitalWrite(button, HIGH);    

  lcd.init();                               #הגדרת קלטים ופלטים

  lcd.backlight();

  pinMode(8,OUTPUT);

  pinMode(9,OUTPUT);

  pinMode(10,OUTPUT);

  pinMode(11,OUTPUT);

}

 

void loop() {

 

 int xValue = analogRead(joyX);                     #משתנה שקורא את הציר של הג'ויסטיק

 int yValue = analogRead(joyY);

 

  buttonState = digitalRead(button);

  if (xValue>=0 && yValue<=10)

  {

  digitalWrite(10, HIGH);

  lcd.setCursor(0,0);                            #  אם הג'ויסטיק נמצא בערכים האלה תכתוב "ימינה" ותדליק נורה בפין 10

  lcd.print("left ");

  }

  else{digitalWrite(10, LOW);}

 

  if (xValue<=10 && yValue>=500)

  {

    digitalWrite(11, HIGH);

     lcd.setCursor(0,0);                          #  אם הג'ויסטיק נמצא בערכים האלה תכתוב "ימינה" ותדליק נורה בפין

     11                                                                              אחרת אל תדליק

     lcd.print("down ");

  }

  else{digitalWrite(11, LOW);}

 

  if (xValue>=1020 && yValue>=500)

  {

    digitalWrite(9, HIGH);

    lcd.setCursor(0,0);                           #  אם הג'ויסטיק נמצא בערכים האלה תכתוב "ימינה" ותדליק נורה בפין 9

   lcd.print("up   ");                                                             אחרת אל תדליק

  else{digitalWrite(9, LOW);}

 

  if (xValue>=500 && yValue>=1020)

  {

    digitalWrite(8, HIGH);

    lcd.setCursor(0,0);                           #  אם הג'ויסטיק נמצא בערכים האלה תכתוב "ימינה" ותדליק נורה בפין 8

    lcd.print("right");                                                                   אחרת אל תדליק

  }

  else{digitalWrite(8, LOW);}

 

  if (xValue>=1020 && yValue>=1020)

  {

    digitalWrite(9, LOW);                          # אם הג'ויסטיק נמצא בערכים האלה אל תדליק נורות במיקום 8 ו-9

    digitalWrite(8, LOW);

  }

}

bottom of page