mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LCD zum laufen bringen


Autor: steve (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie kann ich eine LCD zum laufen bringen wobei ich die LCD_Routine und
eine keine Testprogramm der in Tutorial ist damit probiert habe.
ich benutze zum simulieren AVR Studio, und zur Übertragen Ponyprog.
freue mich über ihre anweissung.

Danke

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
was für ein lcd benutzt du??
welcher µC?
and welchem port?
dein quellcode, der nicht funzt?
takt??

Autor: steve (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
es geht um AVR mega8 mikrocontroller und um LCD 2x16 HD44780

1 Vss GND
2 Vcc 5V
3 Vee GND oder Poti (siehe oben)
4 RS PD4 am AVR
5 RW GND
6 E PD5 am AVR
7 DB0 GND
8 DB1 GND
9 DB2 GND
10 DB3 GND
11 DB4 PD0 am AVR
12 DB5 PD1 am AVR
13 DB6 PD2 am AVR
14 DB7 PD3 am AVR

Autor: Jörn G. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Berni (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich bastel auch grade mit dem Tutorial rum, dafür auf
jeden Fall vielen Dank, das ist SUPER!!

Ich habe das LCD, auch 2x16 (das billige Ding von Reichelt)
an den AVR angeschlossen und
was soll ich sagen, so wie es da steht funktioniert es auch
100%.

Hast du den Rest genau so aufgebaut, wie es da steht??

Wie gesagt, müsste eigendlich genau so gehen.

Eine kleine Frage habe ich allerdings noch. Wie veranlasse ich einen
Zeilenumbruch? habe es versucht mit einer 13 und einer 10 (kenn ich
sonst so von hochsprachen bezüglich asci code).

           ldi temp1, 13     ;Zeichen anzeigen
           rcall lcd_data
           ldi temp1, 10     ;Zeichen anzeigen
           rcall lcd_data

Vielleicht kann ja wer helfen.

Vielen Dank.

Berni

Autor: Thomas Forster (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt keinen Zeilenumbruch. Um in die 2. Zeile zu schreiben,  musst du
den Cursor an die entsprechende Stelle im RAM stellen. Bei den meisten
HD44780 ist das 64 (Dezimal).

Autor: jmoney (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
zeilenumbruch macht man, indem man auf die adresse des ersten zeichens
der gewünschten zeile springt. ascii-zeichen interpretiert der
controller nicht, der zeichensatz ist nur an ascii angelehnt..

Autor: steve (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Berni,
kannst du Bitte erlauten wie du es geschaft hast?
wie kommst du zu recht mit der routine und den test programm der im
Tutorial ist?
im welche reihen folge bist du fort gegangen?

Danke noch mal.

Autor: Berni (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, kann ich machen,

Also, ich habe die Prozessorplatine genau so aufgebaut, wie im tut. Zum
Programmieren benutze ich einen Adapter, den ich irgendwo anders
gefunden habe, kann dir den link auch geben, wenn du ihn brauchst. Der
Funktioniert auch super. Dann habe ich mir mit billigen
"abbrechbaren" Steckkontakten von Reichelt eine art Steckersystem
gebastelt, so dass ich dann abwechselnd die Schalter, die LEDs oder das
Display an die Anschlüsse PD oder PB stecken kann.

So, Beim Display habe mir dann die Anschlüsse (wie du schon oben
beschrieben hast) auf einen Stecker gelegt und Vcc und Gnd
angeschlossen. Den Poti habe ich nicht eingebaut, es klappt auch so.
und dann habe ich einfach mal die Assambler dateien runtergeladen und
draufgespielt. und, was soll ich sagen, es geht.

Leider bin ich jetzt auch noch nicht groß weiter gekommen ;-(, da meine
Assambler Kenntnisse erst am Anfang stehen. Wenn mir irgendwer helfen
kann, wie ich nun den cursor anders positioniere, so dass ich in der
zweiten Zeile schreiben kann, wäre das sehr nett (gerne auch anhand des
Tutorials, das habe ich glaube ich ganz gut verstanden).

(Der Link zu der Englischen Seite im Tut hilft mir nicht wirklich
weiter).

Vielen Dank

@steve: Wo genau hängst du denn jetzt fest??

Autor: ...HanneS... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schaut euch doch mal im Datenblatt des LCD-Controllers den Befehlssatz
an. Dann das jeweilige Befehlsbyte nach temp, dann lcd_command
aufrufen.

...

Autor: Berni (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So, hat sich jetzt geklärt,
wie gesagt, ich bin auch gerade erst am Anfang.
Bin auch mit dem Datenblattlesen nich so vertraut.
Habs jetzt hinbekommen, war ja auch net wirklich schwer.

Trotzdem Vielen Dank.


Mfg. Berni

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.