www.mikrocontroller.net

Forum: Compiler & IDEs LCD von Peter Fleury


Autor: Sebastian Schabbach (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe das Makefile der lib so modifiziert, dass er nur noch das .o
erzeugt und das habe ich zu meiner Anwendung gelinkt (ich habe vor, es
in eine lib zu packen aber das mache ich später weil ich noch nicht
genau weiss wie avr-ar und avr-ranlib funktionieren).

Allerdings verstehe ich die Beispielanwendung, die in dem Archiv ist
nicht. Ich habe die Methoden lcd_init vor der endlosschleife und
lcd_clrscr und lcd_puts in der endlosschleife aufgerufen, es wird aber
nix ausgegeben. Ich hänge es dem Anhang an. In der Beispielanwendung
gibt es noch eine Funktion die irgendwie prüft ob ne Taste gedrückt
wird... was ist da der zusammenhang zum Display? Gar keiner? Achja und
es gibt da 2 Variablen die er nicht kennt (DDRD und PORTD). Kann mir da
jemand helfen?


Gruß Sebastian

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

dein Auge ist zu traege dafuer. Du solltest die Funktion lcd_clrscr();
aus der Endlosschleife nehmen.

Mfg
Dirk

Autor: Sebastian Schabbach (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja auch das bringt nix.... es wird kein text angezeigt...

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
An welchem Port hängt das LCD??
Welchen AVR verwendest du??

Autor: Sebastian Schabbach (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo....


Bei dem Port bin ich mir nicht so ganz sicher ich bin da noch
Anfänger... Ich lege aber den Schaltplan bei... Ich denke aber es ist
Port C....

Ich verwende den Atmel at90s8535 und winavr.


Gruß Sebastian.

Autor: Werner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du musst in der lcd.h oder in der lcd.c (weiss nicht genau welche) den
Port, das Display usw. definieren. Vielleicht hängst Du die Datei auch
einfach mal an.

Werner

Autor: Sebastian Schabbach (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
hmmm ich denke du meinst dielcd.h.... Ich glaube der versucht mein
Display über PortA anzusprechen. Aber da muss ich noch viel mehr ändern
oder?

Naja muss ich heute abend von zu hause mal ausprobieren. Hast du die
Lib auch mal genutzt?

Autor: Werner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, hab ich, mehrfach. Nach den notwendigen Anpassarbeiten hab ich
eigentlich nie Probleme gehabt. Das lief dann meist auf Anhieb.

Autor: Sebastian Schabbach (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hmmm,


also ich habe nochmal eine Frage dazu.... Die Anpassungen kriege ich
wahrscheinlich hin aber hast du dir mal das Beispielprogramm dazu
angeschaut? Der hat da irgendeine Funktion implementiert, die verstehe
ich nicht ganz. Ich nehme mal an, er wartet auf einen Tastendruck an
den Schaltern ist das richtig?

auf  jedenfall definiert er bevor er irgendwas macht 3
Variablen/defines.. Kannst du mir sagen, wo er die definiert? Wenn ich
sein Sourcefile (das lcdtest.c) kompiliere, findet er die bezeichner
nicht. Ich weiss auch nicht wo das herkommt...

Gruß Sebastian.

Autor: Sebastian Schabbach (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmmm ich habe nochmal ein paar Fragen zu den Einstellungen:

#define LCD_LINES           4     /**< number of visible lines of the
display */
#define LCD_DISP_LENGTH    20     /**< visibles characters per line of
the display */
#define LCD_LINE_LENGTH  0x40     /**< internal line length of the
display    */
#define LCD_START_LINE1  0x00     /**< DDRAM address of first char of
line 1 */
#define LCD_START_LINE2  0x40     /**< DDRAM address of first char of
line 2 */
#define LCD_START_LINE3  0x14     /**< DDRAM address of first char of
line 3 */
#define LCD_START_LINE4  0x54     /**< DDRAM address of first char of
line 4 */


Soweit, sogut, ich habe nun eingestellt das mein Display 4 Zeilen a 20
Character hat. Wofür sind denn diese DDRAM addressen gut? Und was muss
ich da angeben? Ich habe dadrunter nun noch angegeben, dass mein
Display über PORTC läuft aber mit dem Rest kann ich nix anfangen. Wo
bekomme ich denn die Informationen her?

Autor: Mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aus dem Datenblatt.

Dort bekommst du auch die allgemeine Funktionsweise des Displays
beschrieben, dieses Hintergrundwissen kann nie schaden.

Autor: Sebastian Schabbach (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmmmm,


ich finde im Internet kein geeignetes Datenblatt wo sowas drinsteht...
Habt ihr vielleicht mal einen Link? Oder hat jemand ein 4x 20 char
display, dann kann er mir doch einfach mal seinen header überlassen?

Ich habe zwar ein Datenblatt gefunden, aber da steig ich nicht durch...
Das ist auch eher ein Handbuch... Wo muss ich denn da genau gucken?


Gruß Sebastian

Autor: Sascha (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier mal meine. Ist auch ein 4 * 20.

Mfg sascha

Autor: Sebastian Schabbach (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,


danke für den Header ! Die Einstellungen sind optimal, das Display
läuft ohne Probleme! Hatte zwar kurzzeitig nen kleines LED Flackern,
weil mein Display an Port C und nicht an Port B angeschlossen ist aber
nun geht es! Echt vielen Dank!



Gruß Sebastian

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na siehste....

Mfg Sascha

Autor: pebisoft (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo, ich kriege das lcd-display am portc nicht zum laufen. wer kann
ein beispiel herstellen. ich hänge schon mehrere tage bei.
mfg pebisoft

Autor: Hubert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Welcher Kontroller? Wie angeschaltet?

Autor: mthomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PortC. Verschleierte Glaskugel: ATmega16/32? JTAG-Interface aktiv?

Autor: pebisoft (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
habe die lösung gefunden. in der neuerstellten make von mir wird unter
src:... nicht die lcd.c eingelesen, die wird gebraucht für die
hauptdatei. peter fleury hatte die in seiner datei reingeschrieben und
das programm mfile liest diese ja nicht selber ein.
die einstellungen sind sehr einfach. nur die ports ändern, den
display-type und die xtal-frequenz.jetzt kann ich daten vom adc-port
einlesen und sichtbar machen.
mfg pebisoft

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.