Forum: Mikrocontroller und Digitale Elektronik Atmega16 lässt sich auf einmal nicht mehr flashen


von Hans P. (hansiii)


Lesenswert?

Hallo
ich habe eine platine mit einen Atmega16 µC. Diese ist über einen 
paralleladapter an den pc angeschlossen. Zum Flashen verwende ich Ponny 
prog 2000.
Nun mein problem:
Das flashen hat erst ohne probleme funktioniert, aber dann von einen 
aufs andere mal kam immer "device missing or unknown device -24".
Der gleiche fehler kommt auch mit einen anderen Controller.
Das kabel hab ich überprüft und es ist ohne fehler.
Jetzt hab ich mal mit nen Oszi mir die Signale angeschaut, und an Mosi 
hab ich 3.2V und wenn ich was sende, kommen auch signale.
Bei Miso sind immer 4.5V
An SCK sind 0V, wenn ich was sende kommen signale mit 3.2V.
Und reset geht beim programmieren bis auf 0.2V runter.

Da sehe ich keinen fehler. An wass kann es denn noch liegen?
Gruß

von Kurt H. (Firma: KHTronik) (kurtharders)


Lesenswert?

Da Du ja ISP machst, die Frage, ob Du eventuell die Fuses auf externen 
Takt umprogrammiert hast. Wenn ja, musst Du den externen Takt auch zum 
Programmieren zuführen.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Wenn Dein Controller wieder läuft, kaufe Dir im eigenen Interesse einen 
AVR-ISP mkII oder einen AVR-Dragon. Ist nur eine Empfehlung.

von Hans P. (hansiii)


Lesenswert?

Hab ich jetzt nicht gemaht, zumindest nicht absichtlich. ^^

Dann versuch ich des mal.
Wie mach ich des mit dem externen Takt dann?

von Vielbrenner (Gast)


Lesenswert?

Hallo!

Das kommt immer mal wieder vor bei den Billigst-Brennern!
Hab das auch schon 2,3-mal erlebt.

Ist zwar eigentlich schwer nachzuvollziehnen, wie das
funktioniert, aber anscheinend setzen sich durch
ungewollte Bitstörungen die Fuses um.

Konnte das sogar schon mal mit einem HV-Brenner nachvollziehen.
Fuse auf DEFAULT zurückgesetzt und der Chip war wieder vollständig ok.

Man muss auch nur im Netz schauen: Dieser Fehler tritt sehr häufig auf!

Eventuell ist eine Befehlssequenz im normalen Programmablauf
dem Befehl für das Ändern einer kritischen Fuse sehr ähnlich?


Gruss,

Vielbrenner

von Kurt H. (Firma: KHTronik) (kurtharders)


Lesenswert?

Da kann man keine generelle Antwort geben, da Du ja die Änderung der 
Fuses nicht absichtlich gemacht hast, und also auch nicht wissen kannst, 
welche Konfiguration eingestellt ist.
Am einfachsten wäre es, den Atmel mit HV-Programmierung zurückzusetzen.

von Hans P. (hansiii)


Lesenswert?

Seh ich das richtig, das die Fuses Default auf CKSEL= 0001 und SUT = 10 
gesetzt sind?
Kann ich auch (aus zeitgrüdnen) einfach einen neuen atmega16 besorgen 
und dann müsste es mit diesen wieder funktionieren oder?

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Kurt Harders schrieb:
> Da kann man keine generelle Antwort geben, da Du ja die Änderung der
> Fuses nicht absichtlich gemacht hast, und also auch nicht wissen kannst,
> welche Konfiguration eingestellt ist.

Das Problem ist in 99% der Fälle eine zu hohe ISP-Programmierfrequenz 
oder ein ausgelasteter Rechner, auf dem Pony gerade läuft.

Probiere es einfach mal, einen Büchsenoszillator mit 1...10Mhz an XTAL1 
des Mega16 anzuschliessen. Oder nimm einen CD4093 und baue Dir einen 
R/C-Multivibrator damit (R=1k, C= 1nF) oder halt einen NE555.

von Hans P. (hansiii)


Lesenswert?

Hallo
erst mal danke.
Ich hab jetzt an XTAL1 mein funktionsgenerator mit 2MHZ eingesteckt, und 
nun lässt er sich programmieren.
Nun hab ich CKSEL= 0001 und SUT = 10 eingestellt, aber er  lässt sich 
auch jetzt nur mit dem externen clock programmieren.
Was muss ich denn nun umstellen, damit es wider ohne den 
funktionsgenerator funktioniert?
Gruß

von Hans P. (hansiii)


Lesenswert?

Hallo
habs selbst herausgefunden.
CKSEL ist ja invertiert. Hab da im Ponyprog etz CKSEL3-1 angekreutz und 
CKSEL nicht. Dann die Fusebits geschrieben.
Nun funkioniert wieder alles .
Gruß

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Supi!

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.