- 3D-Druck Einstieg und Tipps         
Seite 3 von 5 ErsteErste 12345 LetzteLetzte
Ergebnis 21 bis 30 von 43

Thema: Problem mit LCD-Display

  1. #21
    Benutzer Stammmitglied
    Registriert seit
    08.01.2007
    Ort
    Bonn
    Alter
    32
    Beiträge
    48
    Anzeige

    Powerstation Test
    Hallo Sheff,
    bis auf den Spannungswandler LM7805 wird nichts warm.
    Ich gehe auch davon das dass ich das Kabel richtig Konfektioniert habe da ich die Leitungen schon von Display bis zum RnMega2560 mit dem Durchgangsprüfer getestet habe.

    Gruß Sebasti

  2. #22
    RN-Premium User Roboter Genie Avatar von 5Volt-Junkie
    Registriert seit
    06.03.2008
    Alter
    37
    Beiträge
    947
    Hmmm... ist echt verrückt...
    Überprüf mal dein Kontrastpoti und Kondensator kurz auslöten (bald gehen mir die Vorschläge aus )

  3. #23
    Benutzer Stammmitglied
    Registriert seit
    08.01.2007
    Ort
    Bonn
    Alter
    32
    Beiträge
    48
    Das bringt leider auch nichts.

    Macht es Sinn wenn ich die Signalverläufe der einzellnen Ausgänge aufzeichne und hier poste?

    Gruß Sebasti

  4. #24
    RN-Premium User Roboter Genie Avatar von 5Volt-Junkie
    Registriert seit
    06.03.2008
    Alter
    37
    Beiträge
    947
    Macht es Sinn wenn ich die Signalverläufe der einzellnen Ausgänge aufzeichne und hier poste?
    könntest gucken, ob die Signale beim LCD auch so ankommen, wie µC sie ausgibt...

  5. #25
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.05.2007
    Ort
    Berlin
    Alter
    53
    Beiträge
    765
    Läuft es denn an einem anderen Port? Passen die Fuses? Nicht dass der Watchdog immer an ist. Mal einen langsameren Takt probiert? Kannst Du an diesem Port LEDs einzeln ansteuern? (z.B. Lauflicht)
    Wenn das Herz involviert ist, steht die Logik außen vor! \/

  6. #26
    Erfahrener Benutzer Roboter Genie Avatar von Michael
    Registriert seit
    17.01.2004
    Ort
    Karlstadt
    Alter
    55
    Beiträge
    1.258
    Hallo Sebasti,

    auf der Pollin-Seite (dein Link im ersten Beitrag) steht es recht deutlich, daß das Display 2 Controller hat.
    Das wird auch nochmal in deinem verlinkten Datenblatt deutlich, E1 und E2 sind auf Pin6 und 7 des Displays.
    Bei der Initialisierung müssen natürlich beide Displayhälften gestartet werden.

    Code:
    $regfile = "m32def.dat"                                     'Atmega32 CPU
    $crystal = 16000000                                         'Quarz 16Mhz
    $hwstack = 64
    $swstack = 64
    $framesize = 40
    
    Ddrb = &B11111111
    
    Config Lcd = 40 * 4
    Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.6 , E2 = Portc.5 , Rs = Portc.7
    
    Dim ___lcdno As Byte
    Dim Y As Byte
    ___lcdno = 0
    Initlcd
    Cls
    ___lcdno = 1
    Initlcd
    Cls
    
    Do
    ___lcdno = 0
    Locate 1 , 1
    Lcd "1.Zeile " ; Y
    Waitms 1000
    Y = Y + 1
    Locate 2 , 1
    Lcd "2.Zeile " ; Y
    Waitms 1000
    
    ___lcdno = 1
    Locate 1 , 5
    Lcd "3.Zeile " ; Y
    Waitms 1000
    Y = Y - 1
    Locate 2 , 5
    Lcd "4.Zeile " ; Y
    Waitms 1000
    Y = Y + 1
    
    Locate 2 , 25
    If Y < 100 Then
    Lcd " ";
    End If
    If Y < 10 Then
    Lcd " ";
    End If
    
    Lcd Y
    
    Loop
    
    
    End
    Gruß, Michael
    Geändert von Michael (12.03.2011 um 15:46 Uhr)

  7. #27
    Benutzer Stammmitglied
    Registriert seit
    08.01.2007
    Ort
    Bonn
    Alter
    32
    Beiträge
    48
    Hallo zusammen,

    Entschuldigung für die Wartezeit, aber jetzt geht es weiter.

    @Michael: Ich weiss. Nach meinen Kenntnisstand sollte die obere Displayhälfte auch was anzeigen wenn man nur das obere Initalisiert. Außerdem laufen meine Versuche im Moment mit dem 16 * 4 Display da dies vor 2 Jahren definitiv mal funktioniert hat. Ich hatte für das große Display auch das Testprogramm wie in der Wiki beschrieben verwendet.
    Mal so eine kleine Zwischenfrage: die Funktion Ddrb = &B11111111 verstehe ich nicht ganz. Ich weis das man mit dieser Funktion Ports als Eingang und Ausgang definieren kann, ich weiss nur nicht wie sich die Funktion aufbaut! Kannst du mir das bitte erklären?

    @peterfido: Nein es läuft nicht an einem anderem Port.
    Ich habe einfach mal das Display abgeklemmt und ein paar LEDs angeschlossen. Das Ergebnis ist das der Controller definitiv arbeitet da die LEDs Leuchten, blinken.... auf jedenfall mehrfach den Zustand wechseln. Außerdem kann ich die Bordeigene LED (Portd.1) blinken lassen.
    Der Watchdog war mir bis jetzt unbekannt. Leider bringt der Einbau des Befehls stop watchdog auch nichts...
    Ich denke schon das die Fuses stimmen, kann das aber nicht genau beurteilen.
    Deswegen findest du im Anhang einen Screenshot von den Fusbites.
    Bei der Überprüfung ist mir aufgefallen das die Frequenz im Programm auf 16 MHz eingestellt war obwohl der Atmega im Moment nur mit einem MHz intern arbeitet.
    Leider bringt die Korrektur auch nichts.


    Zwichendurch ist mir noch aufgefallen das der Reset auf dem Atmega32-Board nicht funktioniert. Weiss jemand ob das was mit dem Fusebites oder dem Layout zu tun hat? (im Anhang ist das Layout)

    Gruß Sebasti
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken Zwischenablage01.jpg  
    Angehängte Dateien Angehängte Dateien

  8. #28
    RN-Premium User Roboter Genie Avatar von 5Volt-Junkie
    Registriert seit
    06.03.2008
    Alter
    37
    Beiträge
    947
    Hatte einmal ein Problem mit einem AT90PWM. Der Reset-Pin hing auch einfch so in der Luft wie in deiner Schaltung und so hat das nicht funktioniert. Der Pin braucht entweder 0 oder 1, aber laut Schaltplan hängt er einfach in der Luft. Ich würde Reset über ein Widerstand (z.B. 10k) auf Vcc ziehen.

  9. #29
    Erfahrener Benutzer Roboter Genie Avatar von Michael
    Registriert seit
    17.01.2004
    Ort
    Karlstadt
    Alter
    55
    Beiträge
    1.258
    Hallo Sebasti,

    die Funktion Ddrb = &B11111111 verstehe ich nicht ganz.
    das ist keine Funktion, das ist einfach die Anweisung, das Datenrichtungsregister mit dem angegebenen Binärwert zu laden.
    Gehört zugegebenermaßen nicht zum Thema. Das Programm, das ich gepostet habe, war nur ein Auszug.

    Deine Programme zielten bisher auf den Atmega2560, jetzt bist du auf Atmega32 umgeschwenkt?
    Dein PDF zeigt auch einen Mega32, aber kein Display?

    Auf deiner angehängten Grafik sieht man schön, wie JTAG eingeschaltet ist, solltest du Pins von PortC nutzen wollen, mußt du das abschalten.

    @Sheff:
    Das Problem mit dem Reset ist keins. Im AVR ist bereits ein interner Pullup eingebaut. Den Rest erledigt die SUT.
    Ich benutze nie einen Pullup an Reset, was sollte das auch bringen?

    Gruß, Michael

  10. #30
    RN-Premium User Roboter Genie Avatar von 5Volt-Junkie
    Registriert seit
    06.03.2008
    Alter
    37
    Beiträge
    947
    Ich benutze nie einen Pullup an Reset, was sollte das auch bringen?
    Wie gesagt, bei dem AT90PWM hatte ich Probleme, weil der Reset-Pin in der Luft war.

    Bei den logischen Gattern hatte ich am Anfang auch Probleme, da ich dachte "0 = keine Spannung" . Sollte aber entweder 1 = 5V oder 0 = 0V = GND sein.

Seite 3 von 5 ErsteErste 12345 LetzteLetzte

Stichworte

Berechtigungen

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

12V Akku bauen