LCD de rakam azaltma artıma gibi yazıyı değiştirme Hak.

alio1984

Üye
9 Ağu 2019
51
1
0
istanbul
Cinsiyet
Erkek
Merhaba,

Başlığa ne yazacağımı kestiremedim enterasan bir açıklama oldu. Aşağıda örnek bir rakam artırma fonksiyonu yazdım. Rakam yerine nesne adı kullanmak istiyorum. Örneğin ali, veli, deli gibi.. Seçime göre işlem yaptıracağım, rakamdan farksız olacak.

String deger[....] şeklinde yapmak çok uzun işlem, daha kısa bir yolu var mı? Bunlar AnaMenu veya alt menu olmayacak, doğrudan sonuç olacağı için, hangi isim seçilmiş ise, ona karşılık gelen değerler aktif olacak ve program devam edecek.

int button;
readKey = analogRead(0);
if (readKey < 555) {
delay(100);
readKey = analogRead(0);
}
button = evaluateButton(readKey);
switch (button) {
case 2:
button = 0;
save= constrain(save,0,8);
save= save + 1;

lcd.setCursor(4,0);
lcd.print(" ");
lcd.setCursor(4,0);
lcd.print(save);
lcd.print(" s ");
break;

En basiti şu şekilde olabiliyor, ama rakam yerine doğrudan nesne adı yazdırmak daha güzel olacak gibi.

1=ali
2=veli
3=deli
...

Teşekkürler,
Ali
 

amenofis

Yeni Üye
18 Tem 2019
41
9
0
Bursa
Cinsiyet
Erkek
C++:
const char *isim[] = {"ali", "veli", "deli"};
...

for(byte i = 0; i < 3; ++i) {
    lcd.setCursor(4,0);
    lcd.print(isim[i]);
    delay(1000);
}
 
  • Beğen
Tepkiler: alio1984

alio1984

Üye
9 Ağu 2019
51
1
0
istanbul
Cinsiyet
Erkek
C++:
const char *isim[] = {"ali", "veli", "deli"};
...

for(byte i = 0; i < 3; ++i) {
    lcd.setCursor(4,0);
    lcd.print(isim[i]);
    delay(1000);
}

Amenofis yine imdadıma yetiştin üstad. Aşağıda ki şekilde uyarladım. En basit haliyle işim çözüldü. Ben doğrudan i gösteriyordum. Save ... dizinin içine koyduk işlem tamamlandı. Beynim durdu neden bunu düşünemedim :)

const char *save[] = {"ali", "veli", "deli"};
int button;
readKey = analogRead(0);
if (readKey < 555) {
delay(100);
readKey = analogRead(0);
}
button = evaluateButton(readKey);
switch (button) {
case 2:
button = 0;
i= constrain(i,0,2);
i= i+ 1;

lcd.setCursor(5,0);
lcd.print(" ");
lcd.setCursor(5,0);
lcd.print(save);
break;
 

Robotikforum.net Nedir?

  • Robotikforum.net 2020 yılında kurulup yayın hayatına başlayan ve Türkiye’de robotik kodlama alanının gelişimine katkıda bulunmak için bu alan ile ilgilenen bireylerin bir birleri ile yardımlaşmaları ve fikir danışmalarını sağlayarak daha iyi öğrenmek için her bir bireyin bilgisini ve tecrübesini alarak kendini geliştirebileceği ve sorularına cevap bulabileceği bir platform olarak kurulmuştur.

Bilgilendirme!!!

İçerik sağlayıcı paylaşım sitelerinden biri olan www.robotikforum.net Adresimizde T.C.K 20.ci Madde ve 5651 Sayılı Kanun'un 4.cü maddesinin (2).ci fıkrasına göre TÜM ÜYELERİMİZ yaptıkları paylaşımlardan sorumludur.

Sayfamızı beğendin mi?