Gast
#2122749
Hallo, ich habe für Atmel Mega8 einen DCC Decoder programmiert, der die Signale liest (Interrupt bei Flanke an PD2), decodiert und dann per RS232 an den PC schickt (zur Kontrolle). Mein Problem ist, dass ein und das selbe Programm (selbe hex-Datei) auf dem einen Mega8 fehlerfrei funktioniert, auf manchen anderen nicht (im Programmierboard). Bei den problematischen bekomme ich dann nur sporadisch ein decodiertes Paket (per RS232 geschickt) auf dem PC zu sehen. Mit den "funktionierenden" MCs wird jeder DCC Befehl innerhalb einer Sekunde angezeigt (F-Tasten etc). Ich habe schon die Einstellungen (Taktfrequenz, Startbedingungen etc.) verglichen und habe keinen Unterschied feststellen könen. Das Programmierboard ist ein STK 600, das Schreiben des Programms in die MCs funktioniert fehlerfrei. Da ich nicht glaube dass mehrere der Mega8 defekt sind, denke ich, dass ich noch irgendwas übersehen habe, nur was? Es kann Zufall sein, aber die funktionierenden haben die Aufschrift "Atmel 0953G ATMEGA8-16PU", die (bei mir zumindest bei diesem Programm) problematischen "Atmel 0903G ATMEGA8-16PU". Gibt es da Unterschiede? Im Web habe ich dazu nichts gefunden. Ich habe an vielen Stellen gesehen dass das DCC Signal über eine Schaltung mit Optokoppler an den MC geleitet wird. Kann es dran liegen dass ich da nur einen 10K Widerstand zwischen einem DCC Draht und PD2 bzw Masse nutze und manche MCs das nicht "mögen"? (Bin kein Elekroniker). Auch wenn sich manche an den Kopf greifen :-), wäre ich für jeden Hinweis dankbar. Viele Grüße Armin