www.mikrocontroller.net

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


Autor: Hans P. (hansiii)
Datum:

Bewertung
0 lesenswert
nicht 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ß

Autor: Kurt Harders (Firma: KHTronik) (kurtharders)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

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

Autor: Hans P. (hansiii)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab ich jetzt nicht gemaht, zumindest nicht absichtlich. ^^

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

Autor: Vielbrenner (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Kurt Harders (Firma: KHTronik) (kurtharders)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Hans P. (hansiii)
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Hans P. (hansiii)
Datum:

Bewertung
0 lesenswert
nicht 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ß

Autor: Hans P. (hansiii)
Datum:

Bewertung
0 lesenswert
nicht 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ß

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Supi!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.