INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
SainSmart 1602 LCD Keypad Shield Modul Display Tasten
06.08.2015, 20:08
Beitrag #9
RE: SainSmart 1602 LCD Keypad Shield Modul Display Tasten
Danke schönen Urlaub
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
06.08.2015, 20:22 (Dieser Beitrag wurde zuletzt bearbeitet: 06.08.2015 20:54 von hotsystems.)
Beitrag #10
RE: SainSmart 1602 LCD Keypad Shield Modul Display Tasten
https://www.dfrobot.com/wiki/index.php?t...:_DFR0009)Tja so sind sie....
Hier ein besagter Link.

Und hier direkt vom Hersteller:

http://www.sainsmart.com/sainsmart-1602-...a1280.html

Da ist alles dabei, Demo und Lib.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
06.08.2015, 20:31
Beitrag #11
RE: SainSmart 1602 LCD Keypad Shield Modul Display Tasten
Hi,
ähm ich darf da mal so nebenbei auf meinen Bericht zu diesen Keypads mit LCD verweisen...
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
06.08.2015, 21:03
Beitrag #12
RE: SainSmart 1602 LCD Keypad Shield Modul Display Tasten
Also das Display funktioniert soweit zu meiner Zufriedenheit. Ich verwende es um Artikelnummern anzuzeigen und dann den jeweiligen Artikel zu Fotografieren.
Bis jetzt ändere ich immer die Artikelnummer in der 1. Zeile und die Beschreibung in der zweiten Zeile und lade den Sketch auf den Arduino hoch.

Nun zu meiner Idee.
Wenn ich die Taste 1 drücke erscheint eine Zahl die ich vorher programmiert habe mit Beschreibung.
Wenn ich Taste 2 drücke erscheint die nächste programmierte Zahl mit Beschreibung.
usw. bis ich alle 5 tasten gebraucht habe. Und ich den Sketch wieder mit 5 neuen Artikeln updaten würde.

Wie ich es bis jetzt mache muss ich den Sketch nach jedem Foto updaten.
Wie ich es mir vorstelle nach 5 Fotos den Sketch updaten.

Ich hoffe jetzt ist es klarer was ich versuchen möchte.

So sieht es bis jetzt aus

*
The circuit:
* LCD RS pin to digital pin 8
* LCD Enable pin to digital pin 9
* LCD D4 pin to digital pin 4
* LCD D5 pin to digital pin 5
* LCD D6 pin to digital pin 6
* LCD D7 pin to digital pin 7
* LCD BL pin to digital pin 10
* KEY pin to analogl pin 0
*/

#include <LiquidCrystal.h>

LiquidCrystal lcd(8, 13, 9, 4, 5, 6, 7);

char msgs[5][16] = {"Right Key OK ",
"Up Key OK ",
"Down Key OK ",
"Left Key OK ",
"Select Key OK" };

int adc_key_val[5] ={50, 200, 400, 600, 800 };
int NUM_KEYS = 5;
int adc_key_in;
int key=-1;
int oldkey=-1;

void setup()
{
lcd.clear();
lcd.begin(16, 2);
lcd.setCursor(0,0);
lcd.print("Artikelnummer");
lcd.setCursor(0,1);
lcd.print("Beschreibung");
}

void loop()
{
adc_key_in = analogRead(0); // read the value from the sensor
key = get_key(adc_key_in); // convert into key press

if (key != oldkey) // if keypress is detected
{
delay(50); // wait for debounce time
adc_key_in = analogRead(0); // read the value from the sensor
key = get_key(adc_key_in); // convert into key press
if (key != oldkey)
{
lcd.setCursor(0, 1);
oldkey = key;
if (key >=0){
lcd.print(msgs[key]);
}
}
}
delay(100);
}

// Convert ADC value to key number
int get_key(unsigned int input)
{
int k;

for (k = 0; k < NUM_KEYS; k++)
{
if (input < adc_key_val[k])
{
return k;
}
}

if (k >= NUM_KEYS)k = -1; // No valid key pressed
return k;
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
06.08.2015, 21:38 (Dieser Beitrag wurde zuletzt bearbeitet: 06.08.2015 21:49 von hotsystems.)
Beitrag #13
RE: SainSmart 1602 LCD Keypad Shield Modul Display Tasten
Der Code ist recht unübersichtlich.
Aber ich denke, du weist wie er funktioniert.

Warum verwendest du nicht den von mir als Link eingefügten Code. Da ist jede Taste individuell gekennzeichnet. Das erscheint mir übersichtlicher.

Hast du dir die Beispiele schon mal angesehen?
Speziell der von dfrobot ist sehr übersichtlich und du kannst in der Auswertung am Ende pro Taste deine Texte übergeben.

So kannst du es dann im code mit den einzelnen Tasten auswerten:
Code:
lcd.setCursor(0,1);            // move to the begining of the second line
lcd_key = read_LCD_buttons();  // read the buttons
switch (lcd_key)               // depending on which button was pushed, we perform an action
{
   case btnRIGHT:
     {
       lcd.setCursor(0,1);
       lcd.print("Nummer 1");
       lcd.setCursor(0,2);
       lcd.print("Text 1");
     break;
     }
   case btnLEFT:
     {
       lcd.setCursor(0,1);
       lcd.print("Nummer 2");
       lcd.setCursor(0,2);
       lcd.print("Text 2");
     break;
     }
   case btnUP:
     {
       lcd.setCursor(0,1);
       lcd.print("Nummer 3");
       lcd.setCursor(0,2);
       lcd.print("Text 3");
     break;
     }
   case btnDOWN:
     {
       lcd.setCursor(0,1);
       lcd.print("Nummer 4");
       lcd.setCursor(0,2);
       lcd.print("Text 4");
     break;
     }
   case btnSELECT:
     {
       lcd.setCursor(0,1);
       lcd.print("Nummer 5");
       lcd.setCursor(0,2);
       lcd.print("Text 5");
     break;
     }
     case btnNONE:
     {
     lcd.print("NONE  ");
     break;
     }
}

Noch eleganter geht es mit einer Taste und du holst die Information aus einem Array, aber ich vermute, das wird jetzt zu aufwendig. Da kannst du später mit einsteigen.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
06.08.2015, 22:55
Beitrag #14
RE: SainSmart 1602 LCD Keypad Shield Modul Display Tasten
{
lcd.setCursor(0,1);
lcd.print("Nummer 1");
lcd.setCursor(0,2);
lcd.print("Text 1");
break;
}

Kann man dies nicht als Funktion ausführen und nur die die Ziffer (1-5)
übergeben.
Sollte Schnelligkeit gefordert sein könnte doch "Text" und "Ziffer" stehen bleiben und nur die Ziffer mit Cursorposition gesendet werden.
..nur so als Gedankenstütze!

Nicht jeder Neuling in einem Forum hat keine Ahnung über die Materie!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.08.2015, 05:58
Beitrag #15
RE: SainSmart 1602 LCD Keypad Shield Modul Display Tasten
Moin,
...ähm sehe ich das richtig, hier wird ein LCD Display dazu benutzt um in einem Foto die Artikelnummer und eine Beschreibung zu zeigen ?
Warum dann nicht die Eingabe des Textes auf die Terminalfunktion der IDE verlagern so das man ohne Neuprogrammierung den text ändern kann...Idea
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.08.2015, 08:23
Beitrag #16
RE: SainSmart 1602 LCD Keypad Shield Modul Display Tasten
@fraju
Das mit der Funktion ist sicher die bessere Lösung. Ich wollte es zu Anfang allerdings nicht so kompliziert machen.
Und Nummer + Text sind nur Platzhalter, werden jeweils individuell eingesetzt.

@Bitklopfer
Ja, sicher wäre das so besser, allerdings auch hier, nicht so kompliziert für den Anfang. Es kommt sicher auch darauf an, wie oft die Eingaben erneuert werden müssen.

Hier sollte Rossy nochmal seine Gedanken einbringen.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Aptotec V1.2 Can Bus Shield / Auto Marc2014 18 521 16.10.2017 07:53
Letzter Beitrag: Bitklopfer
  Daten übergabe ans Nextion Display Franz54 53 1.716 09.10.2017 09:16
Letzter Beitrag: Franz54
  Nextion Display komma Zahlen darstellen becki133 8 420 18.09.2017 18:26
Letzter Beitrag: becki133
  Kommunikation über das WiFi-Shield Flap 13 1.410 12.09.2017 22:12
Letzter Beitrag: Flap
  433 MHz - Empfaenger + OLED display Matthias_Arduino 4 266 03.09.2017 17:25
Letzter Beitrag: hotsystems
  Schrittmotor Geschwindigkeit mit Wägezelle + HX711 Modul steuern Schrittmotor 10 1.140 30.08.2017 23:45
Letzter Beitrag: hotsystems
Wink Arduino TFT Display MEGA 2560 Samsuino 47 3.232 24.07.2017 12:45
Letzter Beitrag: Harry Hirsch
  Nextion Display führt keine gesendeten Befehle aus re.eule 12 1.793 13.07.2017 21:46
Letzter Beitrag: SkobyMobil
  Waveform auf Nextion Display GuaAck 6 791 12.04.2017 19:08
Letzter Beitrag: SkobyMobil
  Programmierung von PCa9685 Shield im Bezug auf Arduinos Crazydiver 5 411 10.04.2017 12:20
Letzter Beitrag: hotsystems

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste