Ekranda bir menü yapın, Arduino'daki kontrol düğmeleri. - Vara Script

Arduino'da LCD ekranda menü gösterimi, kontrol düğmeleri ve bir döngü nasıl başlatılır.

Ekranda bir menü yapın, Arduino'daki kontrol düğmeleri.  - Vara Script

arduino için ekrana çıktı veren düğmeli bir menü yapmak için 2 kütüphaneye ihtiyacımız var.

  1. LiquidCrystal_I2C
  2. Tel

Video, öğelerden birini seçebileceğiniz ve bir işlem başlatmak için düğmeye tıklayabileceğiniz bir menünün nasıl oluşturulacağının bir örneğini gösterir.
örneğin:
Röleyi açın/kapatın.
Bu, birçok proje için harika bir başlangıç.
Bu kodun yazarına (Video yazarı) teşekkür etmek istedim.

Bu menüde herhangi bir sayıda öğe oluşturulabilir. Kod LiquidCrystal 1602 ekranına yansıtılır. Arduino UNO'su

Kroki aşağıdan indirilebilir.

#include 
#include 

LiquidCrystal_I2C lcd(0x27, 16, 2);

int upButton = 10;
int downButton = 11;
int selectButton = 12;
int menu = 1;

void setup() {
  lcd.begin();
  lcd.backlight();
  pinMode(upButton, INPUT_PULLUP);
  pinMode(downButton, INPUT_PULLUP);
  pinMode(selectButton, INPUT_PULLUP);
  updateMenu();
}

void loop() {
  if (!digitalRead(downButton)){
    menu++;
    updateMenu();
    delay(100);
    while (!digitalRead(downButton));
  }
  if (!digitalRead(upButton)){
    menu--;
    updateMenu();
    delay(100);
    while(!digitalRead(upButton));
  }
  if (!digitalRead(selectButton)){
    executeAction();
    updateMenu();
    delay(100);
    while (!digitalRead(selectButton));
  }
}

void updateMenu() {
  switch (menu) {
    case 0:
      menu = 1;
      break;
    case 1:
      lcd.clear();
      lcd.print(">MenuItem1");
      lcd.setCursor(0, 1);
      lcd.print(" MenuItem2");
      break;
    case 2:
      lcd.clear();
      lcd.print(" MenuItem1");
      lcd.setCursor(0, 1);
      lcd.print(">MenuItem2");
      break;
    case 3:
      lcd.clear();
      lcd.print(">MenuItem3");
      lcd.setCursor(0, 1);
      lcd.print(" MenuItem4");
      break;
    case 4:
      lcd.clear();
      lcd.print(" MenuItem3");
      lcd.setCursor(0, 1);
      lcd.print(">MenuItem4");
      break;
    case 5:
      menu = 4;
      break;
  }
}

void executeAction() {
  switch (menu) {
    case 1:
      action1();
      break;
    case 2:
      action2();
      break;
    case 3:
      action3();
      break;
    case 4:
      action4();
      break;
  }
}

void action1() {
  lcd.clear();
  lcd.print(">Executing #1");
  delay(1500);
}
void action2() {
  lcd.clear();
  lcd.print(">Executing #2");
  delay(1500);
}
void action3() {
  lcd.clear();
  lcd.print(">Executing #3");
  delay(1500);
}
void action4() {
  lcd.clear();
  lcd.print(">Executing #4");
  delay(1500);
}

 

Download File;

https://varascript.click/BnRdD

Tepkiniz nedir?

like

dislike

love

funny

angry

sad

wow