- LiFePO4 Speicher Test         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Problem mit EA DOG 16x2

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    23.05.2004
    Beiträge
    209

    Problem mit EA DOG 16x2

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Hallo,

    Habe jetzt eine Platine, aber das Display bleibt tot. Nichts zu sehen.

    Kann mir freundlicherweise jemand sagen, wie es angeschlossen wird?
    Ich bin zwar wie im Datenblatt vorgegangen, aber nichts zu sehen
    Ich denke, daß mein Kontrast zu niedrig ist und ich deswegen nichts sehe.
    Was wird mit Pin 21(CAP1N) und Pin22(CAP1P) gemacht?
    Benutze einen M16 und das Display ist ein 16x2 mit 5V und 4Bit.

    Wäre sehr nett, wenn mir da jemand helfen könnte.

    Gruß

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    19.08.2006
    Beiträge
    12
    Wie im Thread http://www.mikrocontroller.net/forum/read-1-149112.html beschrieben hab ich ein EA DOG 16x2 im SPI Mode an einen ATTiny26 folgendermaßen angeschlossen. (Bild im Anhang)
    Ich benutze PA.4 bis PA.7 zur Ansteuerung.
    Weiter unten in dem Thread is nen Bascom Beispiel Source den ich größtenteils übernommen hab. Hier meine angepasste Version:
    Code:
    '--------------------------------------------------------------------
    
    '  Autor: Robert Mayr
    
    '--------------------------------------------------------------------
    
    $prog , &HF1 , ,                                            'Hardware-Einstellungen fuer internen 1 MHz Taktgeber
    $crystal = 1000000                                          '1 MHz, Damit auch die Software davon weiss
    $regfile = "at26def.dat"                                    'Wir benutzen einen Tiny26
    
    'LCD Command Codes
    Const Cleardisplay = &H01
    Const Returnhome = &H02
    
    
    '--------------------------------------------------------------------
    
    '******* Konfiguration PortA 4-7 zur LC-Ausgabe mit DOGM162 *******
    
    '--------------------------------------------------------------------
    
    Ddra = &B11110000                                           'Pin PA4-7 ist Ausgang
    'PA4 = SI
    'PA5 = CLK
    'PA6 = RS
    'PA7 = CSB
    
    Porta = &B111100000                                         'PullUp von PA4-7 aktivieren
    
    
    
    Dim J As Byte
    
    Dim Text As String * 16
    
    Dim Ausgabe(16) As Byte At Text Overlay
    
    Dim I As Byte
    
    '--------------------------------------------------------------------
    
    '********* vor allem anderen, gebe was auf das Display
    Gosub Lcinit
    
    Gosub Intro
    'Startbildschirm
    
    End                                                         'end program
    
    '********* Daten Seriell ausgeben **********
    Schiebe:
    Waitus 30
    
    Reset Porta.7                                               'CSB auf 0
    
    Shiftout Porta.4 , Porta.5 , J , 1 , 8 , 10                 'schiebe 8 bits mit der steigenden Flanke und 10us Delay raus
    
    Set Porta.7                                                 'CSB auf 1
    
    Return
    
    '--------------------------------------------------------------------
    
    '******* Hier wird die erste Meldung aufs Display gezaubert *********
    
    '--------------------------------------------------------------------
    
    Intro:
    
    'Cls                                                         'clear the LCD display
    
    'Cursor Off
    J = &H80 : Gosub Schiebe                                    'select the upper line
    Text = "1234567890123456"                                   'display this at the top line
    
    Gosub Textaus
    
    
    J = &HC0 : Gosub Schiebe                                    'select the lower line
    Text = "abcdefghijklmnop"                                   'display this at the lower line
    
    Gosub Textaus
    
    Return
    
    '--------------------------------------------------------------------
    
    '********************** Textausgabe auf Display *********************
    
    '--------------------------------------------------------------------
    
    Textaus:
    
    Set Porta.6                                                 'RS auf 1
    
    For I = 1 To 16
    
       J = Ausgabe(i)
    
       Gosub Schiebe
       Waitms 200
    
    Next I
    
    Reset Porta.6                                               'RS auf 0
    
    Return
    
    '--------------------------------------------------------------------
    
    '********************** Initialisiere LC-Display ********************
    
    '--------------------------------------------------------------------
    
    Lcinit:
    Waitms 50
    
    Set Porta.5                                                 'CLK=1
    Set Porta.7                                                 'CSB auf 1
    Reset Porta.6                                               'RS auf 0
    Reset Porta.7                                               'CSB auf 0
    
    'Initialisiere LCD
    
    J = &H38 : Gosub Schiebe                                    '0011 1000 8Bit 2Lines IS[0,1]
    J = &H39 : Gosub Schiebe                                    '0011 1001 8Bit 2Lines IS[0,1]
    
    J = &H1D : Gosub Schiebe                                    '0001 1101 Cursorshift: Screen Right IS[0,1]
    
    J = &H7C : Gosub Schiebe                                    '0111 1100 Contrast = 0C -> 12/64
    
    J = &H50 : Gosub Schiebe                                    '0101 0000 Icons off, Booster off, Contrast 00
    
    J = &H6C : Gosub Schiebe                                    '0110 1100 Fon = On, Rab = 4
    
    Waitms 200
    
    J = &H0F : Gosub Schiebe                                    '0000 1111 Display = On, Cursor = On, CursorBlink = On
    
    J = &H01 : Gosub Schiebe                                    '0000 0001 Clear Display
    
    J = &H06 : Gosub Schiebe                                    '0000 0110 DDRam Increments, no DisplayShift
    
    Set Porta.7                                                 'CSB auf 1
    
    Return
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken lcd_254.jpg  

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    18.05.2004
    Ort
    Nürnberg
    Alter
    40
    Beiträge
    26
    Es tut mir leid dass ich Leichenschänder spiele und einen so alten Thread wieder ausgrabe.
    Allerdings glaub ich, mein Problem passt hier recht gut rein.

    Ich habe versucht das Dog-M162 mit der hier angegebenen Verdrahtung (5V SPI, Ohne Hintergrundbeleuchtung) und dem hier angegebenen SourceCode zum laufen zu bekommen.

    Ich habe den SourceCode auf einen ATMega8 portiert, und die Pins PC0-PC3 genommen.

    Allerdings tut sich nichts. gar nichts. Das display verändert sich in keinster weise.
    Da ich mit diesem Display sonst keine weiteren Erfahrungen habe würde ich gerne wissen:

    Woran erkenne ich dass das Display nicht defekt ist? (wird bei Spannung-anlegen z.b. die erste zeile Schwarz? Von einem HD4478 Display, welches ich vor ewigkeiten am LPT-Port meines PCs betrieben habe, kenne ich es, dass es beim Booten zuerst einen schwarzen Balken in jeder ungeraden Zeile darstellt. Erst wenn es initialisiert wurde, verschwindet dieser.

    Sollte das beim DOG-M auch passieren, wenn ich die 5V Versorgungsspannung anlege?

    Liebe Grüße aus Nürnberg, Skulk

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    19.08.2006
    Beiträge
    12
    Hab eben getestet, das Display ist blanko wenn Versorgungsspannung anliegt.
    Überprüf mal ob Deine Verkabelung stimmt und ob Du wirklich alles auf PC0-3 geändert hast.
    Mit wieviel MHz läuft Dein ATMega? Mein Tiny läuft mit 1 MHz, kann sein das Du am Anfang, bevor das Display das erste mal Angesprochen wird, ne Pause einbauen musst (1 sek reicht locker, bei mir Initialisiere ich noch andere Hardware bevor ich ans Display was schicke). Kann sein das der Mega das Display mitten beim Booten aus dem Tritt bringt. Generell kannste die Delays größer gestalten, auch beim Shiftout, vielleicht isses nen Timing prob.
    Poste mal Deinen adaptierten Source.

    Oder das Display is aus irgendnem Grund übern Jordan.

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    18.05.2004
    Ort
    Nürnberg
    Alter
    40
    Beiträge
    26
    Leider hats immernoch net geklappt.

    ich hab meine platine durchgemessen und dabei zwar festgestellt das ich vergessen habe "reset" auf high zu ziehen und das der die buchsenleiste in der das Display sitzt leichten wackelkontakt aufweisten, aber daran lag es trotzdem net.
    ein "Wait 1" hab ich eingefügt, half auch nix

    ich probier jetzt nochmal mit 4bit modus und den bascom-lcd-befehlen herum und wenn das nix hilft hol ich mir nen tiny26 um programmierfehler auszuschliessen (hab leider nur mega32, mega8 und tiny13 rumliegen) und wenn das immernoch net hilft, dann hol ich mir halt ein neues DOG...


    vielen dank jedenfalls für deine prompte hilfe

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    18.05.2004
    Ort
    Nürnberg
    Alter
    40
    Beiträge
    26
    Also mein Dog-M ist NICHT defekt. Im 4Bit-Modus über die Bascom Library funktioniert alles einwandfrei.

    Ich probier es morgen nochmal über SPI, nachdem ich so noch ein bischen rumprobiert habe ^^

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    19.08.2006
    Beiträge
    12
    Dann is wohl irgendwo nen Fehler im Code (meinerseits oder Deinerseits) oder in der Verdrahtung (die von mir gepostete Schaltung hab ich geprüft, is auch identisch mit der im Datasheet).
    Magst mal Deinen adaptierten Code posten?

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    18.05.2004
    Ort
    Nürnberg
    Alter
    40
    Beiträge
    26
    Mach ich, aber um peinlichkeiten zu vermeiden, werd ichs vorher nochmal probiern
    jetzt wo ich weiss wie das display reagieren muss und wie es aussieht wenns passt, kann ich nochmal die verdrahtung prüfen. ich werfe mal keinen blick auf die skizze sondern machs direkt vom datenblatt...und dann versuch ichs einfach nochmal

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    18.05.2004
    Ort
    Nürnberg
    Alter
    40
    Beiträge
    26
    Sorry für den Stress den ich hier verursacht habe ^^

    Nachdem ich die Schaltung nochmal auf dem Steckbrett aufgebaut habe funktioniert es einwandfrei. Lag wohl immernoch an einem Kontaktproblem meiner Adapterplatine...naja egal. Ich weiss jetzt dass mein Display geht, und dass es mit diesem Stück Code genauso perfekt geht

    Und das ich wiedermal zu schlampig gearbeitet hab ^^

    Vielen dank jedoch für deine Anteilnahme!
    Schönen Abend und einen Lieben Gruß aus Nürnberg!

    Skulk

  10. #10
    Neuer Benutzer Öfters hier
    Registriert seit
    25.07.2007
    Beiträge
    18
    Hallo !

    Ich bin neu auf dem Gebiet der Controller Programmierung und habe ein Problem.

    Benutze einen mega8 und ein DOGM162 im 4bit 5v Modus und Bascom.

    Nach 3 Tagen probieren, schaffe ich es nun nicht, das Display zum leben zu erwecken.

    Kann mir von euch bitte jemand einen Sourcecode für Bascom geben, der sicher funktioniert und das Display initialisiert und danach einen kleinen Text ausgibt. Befürchte nämlich langsam, dass das Display kaputt sein könnte.

    Vielen Dank für eure Hilfe.

    Gruß Tommy

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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

12V Akku bauen