-         

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 22

Thema: Störungen bei langem Kabel zum LCD

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    13.05.2007
    Alter
    26
    Beiträge
    183

    Störungen bei langem Kabel zum LCD

    Anzeige

    Hallihallo!

    Wie im Thema genannt, habe ich Probleme mit einem ATMega32 und einem ca. 80cm langem Flachbandkabel zu einem blauen 16*2 LCD von Reichelt.
    Schalte ich den Strom ein, fährt der uC hoch und versucht, das LCD zu initialisieren. Dabei hängt er in einer Warteschleife fest, wie ich nach umfangreichem Debuggen feststellte. Diese Schleife sollte die Rückmeldung des Displays abwarten. Fahre ich nun mit dem Finger über die Kontakte auf der Platine des LCD (was mir mal durch Zufall passiert ist) so scheint dies den Pegel der abgefragten Leitung gerade so zu beeinflussen, dass es dem AVR reicht. Das Display zeigt dann meine Ausgaben an. Allerdings erscheinen die Zeichen sehr langsam der Reihe nach, ähnlich dem Schreibmaschineneffekt bei PowerPoint.
    Bei einem Kabel von 10cm Länge gibt es keine Probleme.
    Das Display wird komplett über das Kabel versorgt. Alle sieben Datenleitungen für den 4Bit Modus, Power, Masse und die Kontrastspannung bezieht es über dieses Kabel. Die Spannungsversorgung des gesammten Aufbaus läuft über einen Festspannungsregler.

    Das Problem scheinen folglich Störungen zu sein, derer ich aber dank mangelndem Fachwissen nicht Herr werde. Ich habe schonmal an sämtliche Datenleitungen auf LCD-Seite einen größeren Widerstand gen Masse gehängt, in der Hoffnung, damit einem kleinen Stromfluss zu erzeugen, der dann die Störungen "schluckt".

    Das Kabel muss so lang sein, ich kann es leider nicht kürzen. Nun habe ich schon von diversen Möglichkeiten gelesen, wie man Störungen beseitigen kann, weiß aber nicht, welche ich hier anwenden sollte. Serienwiderstände? Kapazitäten? Wenn ja, auf welcher Seite und wie groß?

    Vielen Dank für Tipps,
    Bääääär

    PS: Ich hoffe, mit dem Beitrag im richtigen Forum gelandet zu sein... =c)

    [Edit] Kabellänge korrigiert

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.04.2008
    Beiträge
    113
    Das Display fängt sich warscheinlich Störungen ein.
    Versuch mal einen IC4584 oder IC4093 an den Datenpins, direkt am Display.

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    13.05.2007
    Alter
    26
    Beiträge
    183
    Hmmm, hab ich nich da. Kann ich sonst noch was versuchen?

    [Edit] Abgesehen davon liegt das Problem ja nicht bei den Datenleitungen sondern bei derjenigen, die die Bereitschaft des LCD meldet

  4. #4
    Erfahrener Benutzer Robotik Visionär Avatar von Hubert.G
    Registriert seit
    14.10.2006
    Ort
    Pasching OÖ
    Beiträge
    6.183
    Die busy-Abfrage geschieht auch über die Datenleitungen.
    Wenn du aber nicht feststellen kannst ob die Störungen vom Kontroller oder vom LCD selbst sind ist es schwer die Störungen in den Griff zu bekommen.
    Am besten mit den Grundsätzlichen Sachen beginnen.
    Genügend Abblockkondensatoren vorhanden, 100Ohm Widerstände in die Daten und Steuerleitungen einfügen wären so die ersten Maßnahmen.
    Grüsse Hubert
    ____________

    Meine Projekte findet ihr auf schorsch.at

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    20.05.2006
    Ort
    Lippe
    Alter
    48
    Beiträge
    524
    Hallo,

    hast du mal ein Datenblatt zum Display. Welcher Pin soll das sein? Wenn du das Busy Flag meinst, das kommt mit als Antwort über die Datenleitungen.

    Gruß

    Jens

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    13.05.2007
    Alter
    26
    Beiträge
    183
    Hallihallo!

    Mit Abblockkondensatoren meinst du 100nF an den Versorgungspins von uC und LCD? Am uC sind genug dran, am LCD keine, die werde ich dann mal übernehmen.
    Die Serienwiederstände: Wohin sollen die? An beiden Seiten, nur am uC, nur am LCD? Ich werde für das LCD nochmal eine neue Platine ätzen müssen, deswegen will ich erstmal so viele Informationen wie möglich suchen, damit ich alles Mögliche gleich auf die Platine übernehmen kann.

    Das Datenblatt des Displays ist dieses hier: klick

    Danke für die Antworten,
    Bääääär

    PS: Ja, ihr habt Recht, das BusyFlag geht tatsächlich über die Datenleitungen. Mich wundert eins: Ich bekomme keine falschen Zeichen übertragen, das heißt, der uC macht alles richtig. Die Störungen könnten also nur vom LCD selber kommen, oder? Schließlich gibt es immer Probleme, wenn ich von ihm lese.

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    20.05.2006
    Ort
    Lippe
    Alter
    48
    Beiträge
    524
    Hallo,


    wenn du nicht vom Display liest, hast du die Pins als Ausgang definiert. Dann liegt immer definiertes Potential auf der Leitung.

    Als erstes würde ich versuchen ob, die internen Pullups beim Lesen Besserung bringen. Wenn das nicht hinhaut, versuch es mit externen Pulldowns.

    Gruß

    Jens

  8. #8
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    13.05.2007
    Alter
    26
    Beiträge
    183
    Hallo!

    Ich habe jetzt ans Display noch einen Kondensator mit 100nF gelötet. Der hat jedoch keinerlei Verbesserung gebracht. Pulldowns hatte ich auf Seite des Displays schon angebracht. Ich glaube nicht, dass es Sinn macht, parallel noch welche auf uC-Seite anzubringen, oder? Ich kann sie natürlich auch nochmal ablöten, wenn das Aussicht auf Erfolg bringt.

    Da ich das Modul eben nochmal gestartet habe, um eben das zu testen, habe ich auch nochmal geschaut, wie es mit dem "berühren" der Kontakte am Display aussieht (wie oben schon beschrieben): Das Display stellt, wenn ich meinen Finger auf den Pin für Datenleitung 7 lege (also auch die für das BusyFlag) gleich einen Schwung Zeichen ohne Verzögerung dar. Ich vermute mal, ich bin elektrostatisch aufgeladen und solange, wie meine Ladung reicht, beeinflusse ich die Leitung zum positiven Effekt hin.

    Ich habe auch nochmal einen Versuch mit einem kürzeren Kabel durchgeführt. Dabei fiel mir auf, dass das Display auf Anhieb initialisiert (was beim langen Kabel erst nach Berührunf der Kontakte passierte), die Zeichen bis zur Hälfte der zweiten Zeile auch schnell und ohne Verzögerung überträgt, dann jedoch in den selben "Schreibmaschineneffekt" fällt, wie beim langen Kabel.

    Vielen Dank für eure Hilfe,
    Bääääär

  9. #9
    Erfahrener Benutzer Roboter Genie Avatar von Crazy Harry
    Registriert seit
    15.01.2006
    Ort
    Raum Augsburg - Ulm
    Beiträge
    1.192
    ich weiß nicht ob du das so willst, aber versuchs mal mit I²C. ich betreibe 7-segment-led/lc-, zeilen- und grafische displays über I²C mit bis zu 2.5m kabellänge - ohne probleme
    Ich programmiere mit AVRCo

  10. #10
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    28.10.2004
    Ort
    Baoding
    Alter
    37
    Beiträge
    687
    20 cm ist nach nicht sonderlich lang. Ich hatte mit Kabeln von 1 m noch keine Probleme.
    Bist Du dir sicher daß das Kabel in Ordnung ist und auch die Kontakte sauber sind?
    Signatur??? kann ich mir nicht leisten!!!

Seite 1 von 3 123 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •