ICC AVR LCD Probleme: AT90S2313 hex File gesucht

Gast #96466
Lesenswert?
• ▲
▼
Hallo,

so langsam habe ich mich an etwas größeres gewagt und ein 16*4 LCD
(http://www.displaytech.com.hk/pdf/char/164a%20series-v10.PDF) an einen
Atmel AT90S2313 angeschlossen. Den Code findet ihr in der angehängten
Datei (mit ICC AVR erstellt). Die Initialisierung habe ich soweit
verstanden, mit einem Oszilloskop kann ich auch die Signale sehen (habe
die Timings jetzt schon teilweise im sec Bereich). Mit der
Initialisierung habe ich leider schon massivst Probleme. Seit Freitag
Abend klappt das nicht :=( Mein Display zeigt folgendes Verhalten:

Zuerst ist nur die erste und dritte Zeile "schwarz" (ok, ist der
normale Power on reset mit der 1-Zeilen konfiguration)
Durch meine Initialisierung geht das Display zuerst aus, dann aber
wieder nur mit der ersten und dritten Zeile schwarz an (das soll nicht
so sein...). Zum einen gehen nicht alle Zeilen an, zum anderen sind die
auch noch komplett schwarz, d.h. ich sehe keinen Cursor und auf weitere
Befehle reagiert das Display nicht mehr.

Könnte mir bitte jemand eine hex Datei schicken (higfenzurlo at gmx.net
(ohne Leerzeichen)), die auf einem AT90S2313 mit 4MHz Quarz und einem
16*4 Display läuft (+ compilierte Portbelegung), oder sich den Code mal
genauer ansehen (Kommentare sind drin, h Datei beinhaltet nur die
Funktionsdefinitionen)? Bin echt am verzweifeln, habe die Verkabelung
zig mal überprüft und neu angelötet (mittlerweile nur noch 5cm
Kabellänge), den Code schon ein paar mal neu geschrieben und mit dem
Oszilloskop die Signale angesehen und Zeitschleifen geprüft.

Freue mich über jede Hilfe,

Hans
Angehängte Dateien:
Gast #96467
Lesenswert?
• ▲
▼
Ich bin mir nicht ganz sicher (noch keine AVR-LCD-Erfahrung), aber kann
es sein, dass dein Timing etwas grob ist?
In der init_LCD hast du diverse Schleifen, die 2001 ms warten, aber als
Kommentar steht da was von 15ms...
Und das passiert mehrfach.
Vielleicht ist das dem Display zu langsam...

Gruß Rahul
Gast #96468
Lesenswert?
• ▲
▼
Hi Rahul,

der Kommentar war (bzw. ist es immer noch) für die ursprünglichen
Timings gedacht. Am Anfang hatte ich die Schleifenzähler mit zwei
Nullen weniger initialisiert, dann kommen auch die Kommentare hin. Da
ich aber kein Speicher-Oszi habe, habe ich die Zeiten einfach mal
verlängert, um alles in Ruhe beobachten zu können. Daher die um den
Faktor hundert vergrößerten Schleifenzähler. Die Kommentare stimmen
dazu natürlich nicht mehr :=(

AN ALLE: BEI DEN ZEITEN HABE ICH ES ZUERST AUCH JEWEILS MIT ZWEI NULLEN
WENIGER BEI DEN SCHLEIFENZÄHLERN PROBIERT (PASSEND ZU DEN KOMMENTAREN)!

Hans

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.