Ich hab mir ein DogXL160 zugelegt. Leider tut's nicht was es soll. Ich hab inzwischen so ziemlich jede Resource die das Netz hergibt durch, aber aus irgendeinem Grund kommt nix. Zusammengestoppelt hab ich es ähnlich dem in Beitrag "Re: Nochmal Hilfe zum DOGXL" beschriebenen Layout, nur dass ich statt des ATmega8 einen ATmega644p verwende. Den Code habe ich entsprechend verändert dass die beim ATmega644p belegten pins verwendet werden (ich verwende also ebenso SS, MOSI und SCK und hab im Code entsprechend PB2 auf PB4 verändert und setze die veränderten Pins auf Ausgang (also DDRB = 0b10110000 statt DDRB = 0b00101100). Zusätzlich sende ich am Ende der Initialisation ein 0xA5 um alle Pixel einzuschalten). Nur bleibt's Display finster. Inzwischen gehen mir die Ideen aus woran's liegen kann. Ich hab den SPI-Clock auf 94KHz runtergesetzt, ich hab die Verkabelung inzwischen 3x geprüft, ich hab verschiedenste Kondensatoren ausprobiert (nachdem hier öfter mal gesagt wurde dass Kerkos verwendet werden sollen, hab aber inzwischen alles von Kerko über Elko bis Tantal und von 0.1 bis 2.2mF durch). Auf Pin 17 bleibt's übrigens nach Messung auch finster, ich geh also davon aus, dass das Display aus irgendwelchen Gründen meine Signale nicht "versteht". Nur ... warum? Gibt's hier jemanden der das DogXL zum Laufen gebracht hat und noch 'ne Idee hat woran's bei mir scheitert?
Hardware Debugging hat nichts mit Voodoo oder Hellsehen zu tun, sondern mit logischem und strukturiertem Vorgehen. Also: Her mit Schaltplan/Code und co.
Hallo Heinz, für mein Projekt habe ich eine Mega644A und die u8g-Bibliethek verwendet. Da ich den Prozessor von der "eigentlichen" Anwendung per SPI anspreche, habe ich den UART im SPI-Master-Mode zur Steuerung des DOG-XL160 verwendet. Mit dem beiliegenden Code klappt das sehr gut. Die u8g-Bibliothek ist zwar nicht sehr schnell, aber der Mechanismus zum Speichersparen ist schon gut. Wenn Du auch den Code für den Touchscreen brauchst, lass es mich wissen. Ebenso habe ich einen Treiber für die LED-Beleuchtung ergänzt. Grüße, Kurt
Hi >hab aber >inzwischen alles von Kerko über Elko bis Tantal und von 0.1 bis 2.2mF >durch). Was ist denn denn an der Datenblattangabe 2 x 2µF/16V nicht zu verstehen? Hoffentlich hast du damit nicht die Ladungspumpe gekillt. MfG Spess
Hallo Heinz, wenn Du lieb bittest :-) schicke ich Dir auch ein passendes Eagle-Layout :-). Herzliche Grüße, Kurt
@spess53: No weil's das erste fehlerhafte Datenblatt wär... Und ja, sind µF. Für den Tippfehler möchte ich mich entschuldigen (auch schon alles in Datenblättern gesehen, von umgekehrten Pinbelegungen mal ganz abgesehen). Und Kurt, herzlichen Dank für den Code! Das Eagle layout wäre zwar fast zu schön, aber gäbe es ggf. die Möglichkeit einen Blick auf Deinen Schaltplan zu werfen? ganzliebguck
Hallo, schau dir das mal an: http://www.basteln-mit-avr.de/ Beitrag "Library für EA-DOGM Grafikdisplays inkl. Font-Generator" Gruß G.G.
Danke für die Links, die hab ich aber schon durch. Ich glaub was man hier oder auch per Google über den dogxl finden kann hab ich bereits gesehen und mit recht hoher Wahrscheinlichkeit auch schon ausprobiert. Ich hatte mehr die Hoffnung dass mir jemand beantworten kann wie ich bei der Fehlersuche vorgehen soll, ich bin schließlich nicht der erste (denk ich mal) bei dem das Ding so GAR NIX anzeigt. Gibt's irgendeinen Pin den ich messen kann um der Ursache auf die Spur zu kommen? Sollte denn überhaupt "irgendwas" auf dem Display erscheinen bei der Initialisierung (wobei, den Befehl "alle pixel setzen" hab ich auch schon geschickt, so gesehen...)? Gibt es eine Möglichkeit zu prüfen ob der dogxl überhaupt meine Befehle erhält? Was ich suche ist im Endeffekt ein "how to" für die Fehlersuche. Weil langsam beschleicht mich zunehmend das Gefühl dass einfach das Display hin ist. Nur wie find ich's raus?
Hallo Heinz, mir ging es sehr ähnlich, auch ich trauerte um den Display. Dann habe ich die u8g-Bibliothek genommen und es ging trotzdem nicht :-). Da ich den UART als SPI-Master verwende gab es ein paar Besonderheiten. Eine davon war, dass das Slave-Select zu früh weggenommen wurde. Als das behoben war lief alles fast auf Anhieb. Leider sieht man ja beim Einschalten nur den alten Inhalt oder Nix. Also auf jeden Fall die SPI-Signale kontrollieren oder von mir abkupfern :-). Ich habe den LCD-Treiber auch einmal beigelegt, damit Du die Benutzung sehen kannst. Da ist zwar einiges an Bastelei drin, aber irgendwie muss man ja openSource zurückzahlen :-). Grüße, Kurt
Herzlichen Dank für all den Code, nur irgendwie hab ich das Gefühl dass das Ganze damit komplizierter statt einfacher wird. Geh ich mal recht in der Annahme dass das Ganze für ein wenig mehr gedacht ist als lediglich die Ansteuerung eines DOG160? Kann ich LED_init, Button_init, Touch_init usw rauswerfen ohne dass dabei Nebeneffekte auftreten? Bzw, welche Teile davon haben überhaupt mit dem Display zu tun? Bitte versteh mich nicht falsch, ich bin sehr dankbar für jede Hilfe, aber wär's irgendwie möglich den Code zu isolieren der mit dem Display zu tun hat? So hab ich eher das Gefühl mir einiges an möglichen Fehlerquellen einzutreten.
So, herzlichen Dank an alle, besonders an Dich, Kurt! Das Display funktioniert. Zuerst hab ich's fast nicht bemerkt, weil's auf'm Kopf stand. Aber egal, es läuft! Die Hardwareseite ist damit als funktionierend abgeschlossen, der Rest ist trivial. :) Ich werd trotzdem jetzt hergehen und die u8glib wieder aufgeben, auch weil das Ding UNHEIMLICH aufbläht. Der 644 soll schließlich noch ein bischen mehr tun als Grafik auf's Display zu zaubern und so toll die lib auch ist, sie kann weit, weit mehr als ich benötige. Die Bestätigung dass mein Display funktioniert und ich jetzt "nur" mehr Software dafür schreiben muss reicht mir vorläufig. Vielleicht sollt ich ein kleines Demodingens zusammenkleistern für den nächsten dem's wie mir geht, wie ich der Suchfunktion entnehmen konnte war ich ja nicht der erste der mit dem Ding kämpft (und bevor jemand fragt, nein, leider konnte mir die Suchfunktion auch nur bedingt Erhellung bringen). Danke nochmals an Dich Kurt und bei Deinem Projekt noch viel Erfolg!
Hallo Heinz, offenbar hast Du die "Isolation" ja schon erledigt :-). Die Treiber für LED (RGB-Backlight) und Touch sind weitgehend unabhängig vom LCD-Teil. Ich verwende dabei 4x3 Touch-Felder welche ich vom Hauptsystem per SPI und printf fülle. Das ganze Display mit ATMega ist Teil meines Hörverstärkers mit DSP-Entzerrung und stellt die höheren GUI-Funktionen bereit. Derzeit kämpfe ich mit dem C-Compiler für Sharc :-( Grüße, Kurt
Naja, ich hab einfach aus der u8g, Deinem Schaltplan und einigem try and error was zusammengepfrimelt. Mein Ziel war im Endeffekt nur zu prüfen ob die Hardware so funktioniert wie ich sie zusammengestellt hab, der Rest fällt mir relativ leicht. Mit SHARC hab ich bisher noch nix zu tun gehabt, da werd ich dir wenig helfen können.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.