Hi hab hab ein rießen Problem dass mich fast zur weißglut bringt. Ich
habt einen Atmel 8051 compatiblen Microcontroller und will dort über
einen 4 bit anschluss ein 16X2 Display anschließen. Wenn ich es
anschließe werden jedoch immer nur in der ersten zeile balken angezeigt
es läuft aber auch kein text durch etc.
Bitte kann mir jemand helfen ist wirklich dringend. Ich kenne mich
leider mit der AVR sprache nicht aus somit finde ich auch keine lösung
oder zumindest ein programm bei dem ich weiss dass es 100 Prozent
läuft. ich habte RS and port.0, R/W and port.1, E an port.2, D4 an
Port.3, D5 an Port.4, D6 an Port.5, D7 an Port.6
Ich muss das ding zum laufen bekommen, bitte helft mir.
MFG
Ähm, kann Dir zwar nicht helfen, aber 8051 ist nicht AVR.
8051 ist und bleibt 8051, auch wenn es einer von Atmel ist.
Zu den Ports:
Es gibt Port 0, Port 1, Port 2 und Port 3 mit jeweils 8 Pins (Bits) bei
den 8051.
So schließt Du das LCD dann z. B. an Port1.0 (D4), Port1.1 (D5),
Port1.2 (D6), Port1.3 (D7), Port1.4 (RS) und Port1.5 (E) an.
D4 bis D7 an 0 bis 3 damit man sich unnötige Bitschiebereien erspart.
R/W könnte man an Port1.6 anschließen was aber nicht unbedingt nötig
ist, also R/W einfach auf GND.
MfG
Andi
Also leider muss ich sagen dass ich mit der Materie ein wenig
überfordert bin ich würde es noch hinbekommen eine 7Seg. anzeige
anzuschließen und zu programmieren jedoch ein LCD display bekomm ich
ohne Hilfe nicht hin. Ich wäre sehr dankbar wenn mir jemand da ein
wenig nachhilfe geben könnte. Natürliche würde ich diese auch bezahlen.
Mittlerweile ist ja alles über das Internet möglich.
MFG
Hast du dir mal das Datenblatt deines LCDs angesehen und hast du auch
verstanden, wie es angesteuert werden muss (Initialisierung,
Befehlssatz, Zeichensatz usw...)?
Ein erstes Beispiel findest du im Tutorial hier auf der Seite. Das ist
zwar nicht für den '51er sondern für den AVR, aber der Algorithmus ist
der gleiche.
...
Jo also das Datenblatt hab ich verstanden. ich weiss nur nicht wie ich
das umsetzen kann in Code für meinen 8051. Und ich hab glaub ich schon
alles im Internet durchsucht testprogramm auf den MC geladen und nichts
funktioniert. Einfach zum heulen. und ich brauch das fertige LCD ende
nächster woche ich weiss mir echt nichtmehr zu helfen.
MFG
Dann hast du ja noch das ganze Wochenende Zeit...
Wenn du eine Bildungseinrichtung besuchst, dann wurde dir bestimmt vor
dem Stellen einer solchen Aufgabe der Befehlssatz des MC erläutert.
Geh am besten strukturiert an das Problem ran. Versuch erstmal, das
Display einfach nur zu initialisieren. Danach kannst du dann immer noch
Zeichen senden.
Na vor dem (korrekten) Initialisieren hat das Senden von Zeichen sowiso
keinen Zweck. Aber das ist Oleg ja bekannt, denn er hat ja das
Datenblatt verstanden.
...
Hallo Oleg!
Wenn du einen 8051 von ATMEL verwendest, dann ist es bestimmt ein
AT89C2051 oder ein AT89S8252. Beide Typen haben Opencollector-Ausgänge
und erfordern somit einen Pullup-Widerstand an jeder Steuer- und
Datenleitung. Sollten diese Widerstände nicht in der Ansteuerschaltung
des Displays integriert sein, dann musst du diese noch zusätzlich
verdrahten.
Was für ein Display hast du? Welchen µC verwendest du? Wichtig wäre
auch noch die Programmiersprache, die du für den 8051 verwendest.
Da ich noch ein 2x16-Display zu liegen habe, würde ich es mal an mein
Flash-Board (AT89S8252) anschließen und das Problem nachstellen.
Das geht aber erst am Abend, da ich jetzt auf der Arbeit bin.
Gruß
Guido
Nachtrag:
Durch Zufall habe ich das Buch "Basiskurs Mikrocontroller" von Bernd
Kainka hier.
In diesem Buch ist die Ansteuerung eines LC-Displays mit HD44780
beschrieben. Es ist ausführlich erklärt. Die Codebeispiele sind in
Basic-52, Assembler, BASCOM-8051 und Rigel-C.
Gruß
Guido
Auf der Hompage von Herrn Kainka findest Du auch eine ganze Reihe
Beispiele aus seinen Büchern zum Download (auch LCD, wenn ich mich
recht entsinne). Die Seite ist überhaupt sehr gut für Einsteiger in die
Elektronik.
Jörg
Hi also ich hab das buch auch. :>
Ähm ich hab den AT89S8252 MC wie groß müssen die widerstände sein die
ich brauche. ? und ich weiss nicht genau wäre es zu viel verlangt wenn
ich fragen würde ob mir jemand ein kleines testprogramm schreiben
könnte
"Dass ich weiss ob ich was flasch angeschlossen hab oder net"
Hat Dir doch Andi schon gesagt, Du mußt nur die Antworten auch lesen.
Solange Du nicht Port P0 benutzt, brauchst du auch keine extra
Widerstände. Port P1, was Andi vorschlägt, ist also o.k.
Peter
Wäre jemand interessiert sich ein bischen Geld zu verdienen und mir
dieses Projekt fertig zu stellen? Ich habs aufgegeben.
Bei interesse einfach mailen. tmdb@gmx.net
MFG
Also den Microcontroller mit Board habe ich fertig ein Datenkabel ist
auch schon vorhanden und das LCD Display auch es müsste nurnoch
Programmiert werden ( hoffe ich) wer interesse hat einfach mailen wäre
wirklich sehr wichtig.
MFG
Wenn der "Speicher" Deines Displays zu heiß wird, hast Du ein Problem.
Diese Displays brauchen nur sehr geringe Ströme, da wird normalerweise
nichts heiß. Zeigt das Display garnichts an, oder wenigstens ein paar
graue Rechtecke?
Bist Du Dir sicher, die Versorgungsspannung richtig angeschlossen zu
haben?