Guten Abend ,
Ich versuche seit ca. 2 Wochen mein Displaytech 162A LCD am Arduino Uno
zum laufen zu bekommen. Ich bekomme es einfach nicht hin... Ich habe
alle
Tutorials und Anleitungen durchgemacht und nichts hat geklappt.
Es wurden entweder immer nur Schwarze Blöcke oder ergenein Mist
angezeigt.
Hat jemand villeicht noch eine Idee ?
Würde mich echt richtig freuen.
Also hier der Code und der Aufbau :
http://arduino.cc/en/Tutorial/LiquidCrystal
Habe es zu 100% Korrekt verdrahtet - nur habe ich kein Poti genommen ,
habe
den Contrast direkt auf GND gelegt .
Datenblatt finde ich selber nicht ...
Hallo Fly,
damit wir dir helfen können, musst du uns noch mehr Informationen
liefern. Bitte poste doch mal ...
* Schaltplan
* Fotos vom Aufbau
* Quellcode
Liebe Grüße,
Lui
Hallo Fly,
> habe den Contrast direkt auf GND gelegt .
Nimm einmal ein Poti so wie es in der Anleitung steht. Das ist notwendig
um etwas sehen zu können.
Liebe Grüße,
Lui
Fly schrieb:> Habe es zu 100% Korrekt verdrahtet - nur habe ich kein Poti genommen ,> habe den Contrast direkt auf GND gelegt .
Kannst du machen, aber bei den meisten Displays ist dann nichts von den
anzuzeigenden Inhalten zu sehen.
Und leider unterscheidet sich das selbst noch bei "baugleichen"
Displays. Hab hier zwei eigentlich gleiche Displays, die brauchen
trotzdem unterschiedliche Kontrasspannungen. Und wenn im oben genannten
Tutorial schon ein Poti benutzt wird, dann mach dir denn geringen
Mehraufwand und steck dir auch einen auf dein Steckbrett.
Jap tatsache - es lag wirklich an den Poti...
Vielen Dank !
Noch eine frage, wenn ich die obere Zeile ansteuern will muss ich ja
lcd.begin(16 ,2); machen, und wenn ich die untere ansteuern will ?
Fly schrieb:> Jap tatsache - es lag wirklich an den Poti...>> Vielen Dank !>> Noch eine frage, wenn ich die obere Zeile ansteuern will muss ich ja>> lcd.begin(16 ,2); machen, und wenn ich die untere ansteuern will ?
Was hat lcd.begin damit zu tun?
mittels "begin" teilst du den LCD Funktionen mit, welche 'Dimensionen'
dein LCD hat. Das es also 2 Zeilen und 16 Spalten pro Zeile hat.
Schön. Das ist sicherlich eine hilfreiche Information für die LCD
Routinen die unter anderem sicherlich auch in den entsprechenden
Positionier-Funktionen benutzt wird. Aber die Funktion, die den Cursor
an eine bestimmte Stelle setzt, heißt ganz sicher nicht begin. Wie wärs
mal in der Doku nachzusehen, welche Methoden eigentlich die LCD Klasse
unterstützt und sich die Funktion (Methode) rauszusuchen, die am ehesten
danach klingt, das man mit ihr die Funktionalität 'Positioniere den
Cursor in die 1. Zeile und dort in die 8. Spalte' abrufen könnte?
http://arduino.cc/de/Reference/LiquidCrystal
Gewöhn dich daran: Zu wissen, wo man Informationen findet, ist das halbe
Leben in der Programmierung. In deinem Fall ist das die recht
umfangreiche Arduino Doku. Und was man da drinnen nicht direkt findet,
das kann man auch in den Header Files, bzw. direkt im Source Code der
jeweiligen Klasse finden.
Willkommen in der Programmierung, in der die Zeit in der die Tante mit
dir Lulu gegangen ist, endgültig vorbei ist.
Vielen Dank!
Ich habe jetzt doch das richtige gefunden und mal ein bischen versucht;
1
intSchalterZustand;
2
intInputPin=8;
3
intLEDPin=13;
4
5
#include<LiquidCrystal.h>
6
7
LiquidCrystallcd(12,11,5,4,3,2);
8
9
voidsetup()
10
{
11
lcd.begin(16,2);
12
Serial.begin(9600);
13
pinMode(InputPin,INPUT);
14
pinMode(LEDPin,OUTPUT);
15
}
16
17
voidloop(){
18
19
SchalterZustand=digitalRead(8);
20
Serial.println(SchalterZustand,DEC);
21
22
if(SchalterZustand==0)
23
{
24
lcd.clear();
25
lcd.setCursor(0,0);
26
lcd.print("Warten auf");
27
lcd.setCursor(0,1);
28
lcd.print("Eingabe");
29
}
30
31
if(SchalterZustand==1)
32
{
33
lcd.clear();
34
lcd.setCursor(0,1);
35
lcd.print("Bitte Warten");
36
delay(250);
37
}
38
}
Mehr vorerst nicht...
Aber wenn der Schalter den Zustand 0 hat "schwimmen" die Buchstaben auf
den LCD so rum, man sieht sie schlecht, bewegen sich immer.
An was liegt das ?
Hi Fly,
> Aber wenn der Schalter den Zustand 0 hat "schwimmen" die Buchstaben auf> den LCD so rum, man sieht sie schlecht, bewegen sich immer.
Das liegt daran, dass du keine Pause einlegst. Solange der Schalter 0
ist wird das Display gelöscht, dann beschrieben, dann wieder gelöscht
und wieder beschrieben und wieder gelöscht und ...
Und zwar so schnell es dein µC kann. Dadurch "flimmert" dein Display.
Besser ist es wenn du das Display nur einmal ansteuerst wenn sich der
Schalterzustand ändert.
Liebe Grüße,
Lui
Danke!
Es hat funktioniert - aber kann man ergenwie machen das der Zustand in
Sek
geändert wird ? Also so:
Knopf wird 1sek gedrückt = SchalterZustand == 1
Knopf wird 2sek gedrückt = SchalterZustand == 2
Knopf wird 3sek gedrückt = SchalterZustand == 3
Knopf wird 4sek gedrückt = SchalterZustand == 4
Knopf wird 5sek gedrückt = SchalterZustand == 5
...
So dass man mehrere If Schleifen machen kann.
Hallo!
Warum soll das nicht gehen? Es gibt massenhaft Software, wo das
unterschiedlich lange Drücken eines Knopfes ausgewertet wird.
Gewöhne Dir schleunigst das hier ab:
Fly schrieb:> If Schleifen
Fly schrieb:> aber kann man ergenwie machen das der Zustand in> Sek geändert wird ?
Ich formuliere deine Frage anders:
Kann man die Länge eines Tastendrucks auswerten?
Ja. Man kann einfach die Zeitdauer messen die eine Taste gedrückt wurde
und dann entsprechend darauf reagieren.
http://fff2.at/drupal/content/zeitmessung-mit-dem-arduino
Liebe Grüße,
Lui