Forum: Mikrocontroller und Digitale Elektronik Probleme mit DCF77-Decodierprogramm


von j. m. (dere)


Angehängte Dateien:

Lesenswert?

Hi,
kaum angemeldet habe ich auch schon meine ersten Probleme.

Ich bin momentan dabei ein Programm in Assembler zu schreiben, dass das 
Zeitsignal DCF77 auswerten soll
Dazu verwende ich einen ATmega8
Das ganze soll auf einem LCD ausgegeben werden, den ich inclusive der 
Include Dateien LCD_4BIT und plcd, zur verfügung gestellt bekommen habe.

Mein Problem ist Folgendes:
Der LCD gibt, wenn man das Programm überspielt, bzw Strom an den mc 
anlegt für ca. 1 sekunde oder so komische Zeichen aus und dann nichts 
mehr.

Sorry, dass ich jetzt einfach das ganze Programm angehängt habe, aber 
ich suche schon ewig nach Fehlern und finde jetzt einfach nichts mehr. 
Dazu kommt, dass ich noch shehr neu bn, im Umgang mit Assembler und 
Microcontrollern.
Wahrscheinlich hab ich sogar irgendeinen total dämlichen Fehler, den ich 
ich als Anfänger einfach übersehe :-(

Vielen Dank für die Hilfe,
würde mich sehr freuen, wenn Ihr mir ein paar Ratschläge geben könntet

von Jürgen K. (Gast)


Lesenswert?

hmmm,

was hat das nun mit DCF77 zu tun?

Im ersten Schritt würde ich mal nur ein LCD ansteuern.

Dein fehler kann überall liegen. In der Hardware wie auch in der 
Software.

Oft gemachte Fehler beim LCD sind:

A)falsche oder keine Kontrastspannung
B)nichteinhaltung der Init Sequenzen (auch Zeiten)
C)im 4 Bit Mode: restliche Pins des LCD nicht auf Masse
D)Brücken und Dreher in den Zuleitungen des LCD wegen schlechter 
Lötungen etc...

Wenn du dann Hilfe beim LCD brauchst, dann mit Datenblatt und 
Verschaltung und dem minimalistischem Programm. Das ist so das mindeste. 
Ansonsten kann keiner was kontrollieren, denn du gibst ja keine Infos 
preis. Wenn du nicht schreibst wie du es angeschlossen hat, kann da auch 
niemand Fehler finden.

JK

von j. m. (dere)


Angehängte Dateien:

Lesenswert?

Danke für die schnelle Antwort,

Also, mit dem LCD ist es so, dass andere, kleine, einfache Programme, 
die mit den Includedateien arbeiten, durchaus funktionieren. Deshalb 
glaube ich nicht, dass es an der Hardware oder den Include Dateien 
liegt, sondern eben an einem Fehler in meiner Programmierung

Ich hab jetz mal den Schaltplan und das Datenblatt des LCD dranngehängt.

ich habe übrigens auch noch festgestelt, dass durch das einschalten von 
Interrupts der Betrieb des LCD auch gestört wird. Er zeigt dann nur noch 
schwarze Kästchen an.

Vielen Dank für die Mühe

von Jürgen K. (Gast)


Lesenswert?

Hi,

j.m. Ich habe nicht in deine Sourcen gesehen, aber eine Frage zu deinem 
Vorgehen beim DCF dekodieren. Wenn das LCD sonst geht, dann liegt es 
nicht an der Hardware, nur konnte man dies vorher nicht "ersehen" da du 
nicht darauf eingegangen warst.

Wie machst du das mit der DCF Auswertung. Einen Interrupt braucht man 
dafür jedenfalls nicht direkt und sollte man auch nicht nutzen...
Ich hoffe du machst das nicht mit einem Pin Toggle Interrupt o.ä.

JK

von Paul B. (paul_baumann)


Lesenswert?

Jürgen K. schrob:
>Oft gemachte Fehler beim LCD sind:
>C)im 4 Bit Mode: restliche Pins des LCD nicht auf Masse

Das ist schon mal kein Fehler.

MfG Paul

von Jürgen K. (Gast)


Lesenswert?

kommt aufs LCD an, oder? Naja, muss man ja hier auch nicht 
ausdiskutieren, denn das LCD scheint ja grundsätzlich zu "rennen"...

JK

von j. m. (dere)


Lesenswert?

Guten Abend,
Nein Interrupts nutze ich nichtmehr, da sie auch schonmal Probleme mit 
dem LCD verursacht haben.
Ich habe einen Teil im Program der bei einem LOW-Pegel aufgerufen wird 
und einen der dann eben beim HIGH-Pegel aufgerufen, damit hab ich mit 
die Interrupts gespart.

Danke, für die Hilfe, hätt ich echt nicht erwartet, dass da so schnell 
was kommt :)

von Michael S. (mes)


Lesenswert?

> ... Ich hoffe du machst das nicht mit einem Pin Toggle Interrupt o.ä.
Warum? Was ist in diesem Kontext daran verkehrt?


Gruß,

Micha

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
Noch kein Account? Hier anmelden.