ATMega8 Auslieferungszustand zurücksetzen

OP #763415
Lesenswert?

Hi,

in letzter Zeit hatte ich immer mal Probleme beim Schreiben von 
Fuse-Bits mit PonyProg2.07c. Damit war dann ein ATMega8 auf dem SPI- Ohr 
taub.

Leider besitze ich aber kein STK500, um den Mega8 über den parallelen 
Programmiermodus zurückzusetzen. Deshalb habe ich mir die Schaltung von 
Gunter Baabe "ParProg2" nachgebaut. Funktioniert super !

Da ich aber auch noch eine sinnvolle Verwendung für einen AT90S4433 
suche, habe ich mal versucht, das Programm entsprechend umzuschreiben.
Leider erfolglos. Der Target- Mega8 wurde nicht zurückgesetzt.

Hat jemand ein paar Hinweise?

Einen Verdrahtungsfehler schließe ich aus, da ich die gleiche 
Versuchsschaltung wie beim vorherigen Ausbau mit einem Mega8 als Source 
verwendet habe. Nur die beiden Ausgänge für die Spannungsversorgung des 
Targets und dem 12V- Reset habe ich auf PortC verschoben -> werden nun 
für die XTAL- Eingänge benötigt. Den 12V- Reset- Impuls konnte ich nach 
der Tastenbetätigung mit den Oszi sehen.

Raik
Angehängte Dateien:
Gast #763432
Lesenswert?

Hallo Raik,

schön, dass mein Programm auch bei Dir funktioniert.
Lade einfach von www.e-lab.de die Demo runter.
Den Source-File hast Du ja.
Du musst nur die Zeile
"Device = mega8" zu
"Device = 90S4433" ändern,
bei den "Var Declarations" die neuen Ports angeben und kompilieren.

Falls es noch Probleme gibt:
melde Dich im E-LAB Forum an. Da schaue ich täglich rein.

Gruß
Gunter
OP #763739
Lesenswert?

Hallo Gunter,

erst einmal danke für Deine Hinweise.

So einfach war es dann doch nicht. Zusätzlich mußten noch die Werte für 
StackSize / FrameSize verringert werden. Andernfalls brachte der 
Compiler Fehlermeldungen. Die genaue Bedeutung der beiden Werte und der 
Wert für SysTick ist mir noch nicht klar. Auch das Handbuch vom Compiler 
brachte mich nicht weiter.

Jedenfalls funzt aber das Programm "ParProg2_AT90S4433" jetzt.

Warum mein zuvor geschriebenes Programm nicht läuft, ist mir aber auch 
noch nicht klar.

Grüße
Raik
Angehängte Dateien:
Gast #763838
Lesenswert?

Hallo Raik,

die Erklärung Stack/Frame und Systick findest Du in DocuCompiler.pdf
im Kapitel 17.
Der Systick ist i.A. unkritisch und kann auf 10ms stehen bleiben.
Stack/Frame liegen im internen Ram. Da der Mega8 1k hat, konnte ich da
relativ grosszügig sein. Ist bei dieser Mini-Applikation auch recht
unkritisch, führt bei Überlauf aber zu extrem schwer zu findenden 
Fehlern.
Also nur soweit notwendig reduzieren und dann ggf. im Simulator testen!

Gruß
Gunter

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren