mikrocontroller.net

Forum: PC-Programmierung HD44780-LCD-Display an LPT mit Java ansteuern


Autor: Jörg Fischer (jones79)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Bei der Suche wie ich ein HD44780-LCD-Display mit Java ansteuern
kann bin ich auf dieses Forum gestoßen.

Suchfunktion und Google habe ich benutzt :)
Habe aber leider nichts wirklich hilfreiches gefunden.

Ich würde gerne ein an den Parallel-Port angeschlossenes
Display mittels Java ansprechen. Dazu will ich die ich die
Klassenbibliothek RXTX (rxtx.qbang.org) verwenden, welche die
ursprüngliche Schnittstelle JavaComm von Sun ersetzt.
C++

Hat jemand von Euch das schon mal gemacht?
Gibt es irgendwelche Klassen zur Ansteuerung, Datenübertragung
eventuell sogar eine GUI?

Wie ich die Daten über die Leitungen D0 bis D7 übertrage hab ich
mittlerweile verstanden, aber ich weiß nicht wie ich mit
Java die Pins E,  R/W und RS einzeln ansprechen und somit auf "1"
setzen kann.

Gefunden habe ich das Projekt jlcd-hd44780,
(german.osstrans.net/software/jlcd-hd44780.html)
dieses ist aber nicht mehr verfügbar.

Hier (http://www.daniweb.com/forums/thread85016.html) habe ich gelesen,
dass eventuell einige der Pins erden muss, um einen Drucker
vorzutäuschen, weil die Kommunikation sonst nicht funktioniert.
Kann das jemand von Euch bestätigen?

Ich hoffe ihr habt ein paar gute Tips für mich.

Viele Grüße,
Jörg

Autor: Läubi .. (laeubi) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm... also ich würde dir empfehlen einen uC+RS232 zu verwenden.
1) Kannst du das sogar über USB betreiben mit einem entsprechendem 
Wandler falls mal gewünscht.
2) Der direkte Zugriff auf die Schittstelle ist ab Win2000 nur mit extra 
Treiber möglich und das LCD als Drucker anzusprechen könnte etwas 
umständlich werden...

Die Kommunikation kannst du dann einfach über die RXTX Libary machen.

Autor: Jörg Fischer (jones79)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für die schnelle Antwort.

Was genau ist ein uC+RS232? Ist das ein Adapter?

Zusammen mit dem Display habe ich mir einen Parallel-Port-Adapter
für USB gekauft, da die Rechner teilweise keinen OnBoard-LPT mehr
haben...

Das ganze soll vorerst nicht unter Windows, sondern Linux laufen,
soll aber relativ leicht zu portieren sein.

Also so wie ich das verstanden habe, ist der "normale" Weg
ein LCD anzusteuern, über den Parallelport? Stimmt das soweit?
Da habe ich auch haufenweise Schaltpläne und ähnliches gefunden.

Autor: Patrick B. (p51d)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jörg Fischer schrieb:
> Was genau ist ein uC+RS232? Ist das ein Adapter?
uC => Microcontroller (z.B. Atmega8, Pic16F688)
RS232 => Serielle Schnittstelle

jetzt köntest du die Schaltung vereinfacht so aufbauen:

LCD <= (SPI, Parallel, I2c...) => uC <= Rx Tx => FT232(USB-Rs232 
Wandler) <=>PC
Den FTDI simuliert einen virtuellen ComPort, wodurch du mit sehr viel 
einfacher auf die Serielle Schnitstelle am PC zugreiffen kannst.
Der MCU wandelt einfach dann die empfangenen Daten und steuert das 
Display an.


> Zusammen mit dem Display habe ich mir einen Parallel-Port-Adapter
> für USB gekauft, da die Rechner teilweise keinen OnBoard-LPT mehr
> haben...
Wilst du das über USB ansteuern??? und Nicht irgend wie ein VCP?
Hab auch schon über die Schnittstelle nachgedacht, und musste 
feststellen, dass die Einfachheit der Hardware exponentiell komplexere 
Software verursacht hat... also in meinen Augen nichts für 
Hobby-Bastler.
Werde aber später mal wieder ein Anlauf wagen.


> Also so wie ich das verstanden habe, ist der "normale" Weg
> ein LCD anzusteuern, über den Parallelport? Stimmt das soweit?
> Da habe ich auch haufenweise Schaltpläne und ähnliches gefunden.
Beim MCU-System hast du einfach sehr viel mehr Freiheiten:
z.B. kannst du noch ein paar Taster ranhängen und so vom PC aus auf die 
Input-states des MCU's zugreifen, reagieren, und ev. Display neu 
setzen...
Also ich würde dir auch die Variante mit einem MCU und einem 
RS232-USB-Wandler empfehlen (sehr viel einfacher...)

MFG
Patrick

Autor: Läubi .. (laeubi) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Patrik hat es ja schon geschrieben. Auch wirst du mit einem USB 
Parallelport nicht glücklich werden beim Ansteuern eines LCD, da diese 
nur für den Betrieb eines Druckers ausgelegt sind (bis auf eine Ausnahme 
die mir bekannt ist).

Das einzige "Problem" ist wie das Programm auf den uController kommt. 
Vieleicht kennst du jemanden mit einem Programmiergerät der dir einen 
seriellen Bootloader draufspielt.

Autor: Jörg Fischer (jones79)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wow, Danke für die vielen Informationen!
Da musste ich ja erstmal die ganzen Begriffe nachschlagen :)

Eigentlich wollte ich ganze mit möglichst wenig zusätzlicher
Hardware auf die Beine stellen. Deswegen war mein Plan,
das Display einfach an den Parallelport anzulöten.

Jetzt werde ich erstmal schauen, ob ich das problemlos so betreiben 
kann, und wenn nicht, dann muss ich das Teil doch so ansteuern, wie ihr
vorgeschlagen habt.

Vielen Dank für Eure Hilfe!

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.