Forum: Mikrocontroller und Digitale Elektronik ausgesperrt aus Atmega1284p


von David P. (devryd)


Lesenswert?

Hallo zusammen,
ich habe gestern abend angefangen mich mit AVRs zu beschäftigen und mich 
prompt aus meinem Atmega1284p ausgesperrt. Ich scheine eine Fuse falsch 
gesetzt zu haben. Daraufhin habe ich das ganze mit einem Arduino nano 
als externen Taktgeber wieder retten können, wollte wieder die richtige 
Fuse setzen, jetzt geht aber gar nichts mehr. Kann ich den Atmega kaputt 
gemacht haben oder gibt es einen Trick, den ich nicht beachtet habe?

von Hermann Kokoschka (Gast)


Lesenswert?

David P. schrieb:
> ..gestern abend angefangen mich mit AVRs zu beschäftigen...
WIESO muss man als Anfänger als erstes an den Fuses herumfummeln?
Das ist einfach nicht zu begreifen!

> ..mit Arduino als externen Taktgeber wieder retten können..
Wenn Du ihn doch gerettet hast, was meinst Du dann mit "jetzt geht aber 
nichts mehr". Also doch nicht gerettet? Drück Dich etwas klarer aus 
bitte.

Mögliche Ursachen:
1) Der Takt steht nun auf langsamem R/C und Du programmiert zu mit zu 
hohem Takt.
2) Oder Du hast in den Fuses LOCK-Features gesetzt.
3) Oder Du hast die RESET-Leitung als Port definiert.
4) ...

von David P. (devryd)


Lesenswert?

Ich habe zuerst die Fuses falsch gesetzt, konnte dann mit externem 
Taktgeber wieder die "Grundeinstellung" einstellen und habe dann 
scheinbar nochmal einen Fehler gemacht. Klar war das blöd, ich wüsste 
nur gerne, ob ich das ganze retten kann. Konkret habe ich cksel2 auf 0 
gesetzt.

von Peter D. (peda)


Lesenswert?

Starte Atmel/Microchip-Studio, setze den Programmer auf den langsamsten 
SPI-Takt (2kHz) und lese die Signatur aus. Wenn die stimmt, kannst Du 
die Fuses wieder richtig setzen.

von Peter D. (peda)


Lesenswert?

David P. schrieb:
> Konkret habe ich cksel2 auf 0
> gesetzt.

Wenn man die Fuses im Studio setzt, kann man vorher im Klartext ablesen, 
was sie bedeuten.

von David P. (devryd)


Lesenswert?

In Microchip Studio kann ich (noch) nicht programmieren, da ich keinen 
unterstützten programmer habe. Ich Flashe derzeit mit AVR8-Burn-O-Mat.
Ich benutze diesen Programmer 
https://www.amazon.de/gp/product/B07Y3B8H91/ref=ppx_yo_dt_b_asin_title_o02_s00?ie=UTF8&psc=1 
mit jumper3 für niedrige Frequenzen gesetzt

von Hermann Kokoschka (Gast)


Lesenswert?

Peter D. schrieb:
>> Konkret habe ich cksel2 auf 0

Es kommt auf die Kombination ALLER CKSEL-Bits an,
wahrscheinlich brauchst Du jetzt einen externen Quarz am AVR.

Achte auch auf die Divide-8-Fuse.
Um zugreifen zu können solltest Du es nun erstmal mit 32Khz SPI-Clock 
versuchen.

von David P. (devryd)


Lesenswert?

An dem Programmer, den ich habe, kann ich nur zwischen slow und normal 
wählen, während ich nicht weiß, was  wofür steht... Auf dem langsamen 
Modus habe ich aber auch keinen Zugriff. Konkret hatte ich die cksel 
fuses gesetzt auf 0110 mit ckdiv auf 0

von Hermann Kokoschka (Gast)


Lesenswert?

David P. schrieb:
> Konkret hatte ich die cksel
> fuses gesetzt auf 0110 mit ckdiv auf 0

Dann steht er nun auf "FULLSWING CERAMIC-RESONATOR".
Ein Quarz so ca. 2-4Mhz sollte aber auch gehen.

Ein technischer Defekt ist unwahrscheinlich.

von Der Da (Gast)


Lesenswert?

David P. schrieb:
> Hallo zusammen,
> ich habe gestern abend angefangen mich mit AVRs zu beschäftigen und mich
> prompt aus meinem Atmega1284p ausgesperrt. Ich scheine eine Fuse falsch
> gesetzt zu haben. Daraufhin habe ich das ganze mit einem Arduino nano
> als externen Taktgeber wieder retten können, wollte wieder die richtige
> Fuse setzen, jetzt geht aber gar nichts mehr. Kann ich den Atmega kaputt
> gemacht haben oder gibt es einen Trick, den ich nicht beachtet habe?

Servus,

ich würde mal raten:
A) Clock falsch gesetzt
B) Programmierung über ISP abgeschaltet
C) BrownOut zu hoch gesetzt

Löungsideen:
A):
Externe Clock einspeisen und/oder Programmierfrequenz auf "ganz langsam" 
setzen

B):
Programmieren über HighVoltage Programming (sehr ekelhaft)

C):
Nur möglich wenn Vcc normalerweise < 4.3V. Mit 5V versorgen.

Gruß

Robert

P.S. Falsch gesetzte Fuses enden leider oftmals in bricked Bauteilen, 
weil das Retten oftmals nicht sinnvoll möglich ist.

von Peter D. (peda)


Lesenswert?

Der Da schrieb:
> B) Programmierung über ISP abgeschaltet

SPI kann sich nicht selber abschalten.
Nur AVRs mit abschaltbarem Resetpin lassen sich vom SPI aussperren, der 
ATmega1284 gehört nicht dazu.

von Cyblord -. (cyblord)


Lesenswert?

Hermann Kokoschka schrieb:
> WIESO muss man als Anfänger als erstes an den Fuses herumfummeln?
> Das ist einfach nicht zu begreifen!

Ja korrekt. Die Dinger laufen out of the box mit internem RC an. Was 
will ein Anfänger mehr?
Warum muss man hier sofort auf diese Fuses los gehen?

Da wäre als ob ein Fahrschüler erst mal den Motor tauschen will.

Irre!

von J. T. (chaoskind)


Lesenswert?

Cyblord -. schrieb:
> Da wäre als ob ein Fahrschüler erst mal den Motor tauschen will.

Ja klar, absolut deckungsgleich. Wer hat noch nicht von den tausenden 
Toten jedes Jahr gehört, die von verfuseten uC überrollt wurden.

von Cyblord -. (cyblord)


Lesenswert?

J. T. schrieb:
> Ja klar, absolut deckungsgleich. Wer hat noch nicht von den tausenden
> Toten jedes Jahr gehört, die von verfuseten uC überrollt wurden.

Ich hab auch noch selten von Leuten gehört die überrollt wurden weil die 
ihren Motor getauscht haben.
Absolut unverständliche Einlassung deinerseits.

: Bearbeitet durch User
von J. T. (chaoskind)


Lesenswert?

Cyblord -. schrieb:
> Ich hab auch noch selten von Leuten gehört die überrollt wurden weil die
> ihren Motor getauscht haben.
> Absolut unverständliche Einlassung deinerseits.

Dass DU das nicht verstehst, war mir klar. Ich wollte lediglich darauf 
hinweisen, dass das Gefahrenpotential eines verfuseten uC in den Händen 
eines (Programmier)Anfängers nicht ansatzweise an das Gefahrenpotential 
herankommt, das ein Fahranfänger mit hochfrisiertem Motor mit sich 
rumfährt.
Daher war dein Vergleich einfach nur schwachsinnig. Aber das ist man von 
dir gewohnt.

: Bearbeitet durch User
von Cyblord -. (cyblord)


Lesenswert?

J. T. schrieb:
> Ich wollte lediglich darauf
> hinweisen, dass das Gefahrenpotential eines verfuseten uC in den Händen
> eines (Programmier)Anfängers nicht ansatzweise an das Gefahrenpotential
> herankommt, das ein Fahranfänger mit hochfrisiertem Motor mit sich
> rumfährt.

Es ging auch nicht um das Gefahrenpotential. Sondern um die 
Sinnhaftigkeit der Aktion.
Sollte doch eigentlich klar sein.

Aber selbst WENN es darum ginge, das tauschen eines Motors durch einen 
Fahrschüler birgt auch kein großes Gefahrenpotential für den Verkehr.

Also ist deine Antwort gleich doppelt sinnlos.

: Bearbeitet durch User
von David P. (devryd)


Lesenswert?

Ich habs wieder zum laufen bekommen. Vielen Dank an @Der Da für die 
Ratschläge

von J. T. (chaoskind)


Lesenswert?

Cyblord -. schrieb:
> Es ging auch nicht um das Gefahrenpotential. Sondern um die
> Sinnhaftigkeit der Aktion.
> Sollte doch eigentlich klar sein.

Nein, es ging um die Behauptung, dass es genauso blöd ist, als Anfänger 
an den Fuses rumzudoktorn, wie als Fahranfänger nen anderen Motor 
einzubauen.

Und DAS ist ganz einfach falsch. Denn wenn der P-Anfänger falsch fuset, 
dann läuft im schlimmsten Fall der Chip nicht. Also nur eingeschränkt 
sinnvoll. Aber immerhin könnte er daraus lernen: "so geht's nicht". Also 
auch nicht völlig sinnlos.
Die Motorgeschichte birgt aber ein echtes Gefahrenpotential. Völlig 
unabhängig davon, wie sinnvoll oder auch sinnlos der Umbau ist.

Nicht alles was hinkt, ist ein Vergleich.

: Bearbeitet durch User
von Dyson (Gast)


Lesenswert?

J. T. schrieb:
> Nicht alles was hinkt, ist ein Vergleich.

Das ist sicherlich richtig. Aber ich behaupte einfach mal, wenn jemand 
anderes als Cyblord das geschrieben hätte, wäre es dir scheißegal 
gewesen.

von J. T. (chaoskind)


Lesenswert?

Dyson schrieb:
> Aber ich behaupte einfach mal, wenn jemand anderes als Cyblord das
> geschrieben hätte, wäre es dir scheißegal gewesen.

Zumindest egaler:D

von David P. (devryd)


Lesenswert?

Ich entschuldige mich, mit dieser (doch recht simplen) anfängerfrage 
eine solche Diskussion ausgelöst zu haben. Für die Zukunft weiß ich es 
besser...

von Cyblord -. (cyblord)


Lesenswert?

J. T. schrieb:
> Dyson schrieb:
>> Aber ich behaupte einfach mal, wenn jemand anderes als Cyblord das
>> geschrieben hätte, wäre es dir scheißegal gewesen.
>
> Zumindest egaler:D

Was deine Einlassungen noch unintelligenter macht. Ein Mann schreibt was 
er über die Sache denkt. Nicht was er über den Autor denkt. Wer nur 
Unsinn schreibt weil er den Autor nicht leiden kann, disqualifiziert 
sich von sachlichen Diskussionen.

von Peter D. (peda)


Lesenswert?

David P. schrieb:
> Ich entschuldige mich, mit dieser (doch recht simplen) anfängerfrage
> eine solche Diskussion ausgelöst zu haben.

Du mußt Dich für nichts entschuldigen, eher andere für die Störung des 
Threads. Das leider recht hohe Grundrauschen muß man ignorieren. Schade 
ist nur, daß dadurch der sinnvolle Inhalt schlecht lesbar wird.

von Cyblord -. (cyblord)


Lesenswert?

Peter D. schrieb:
> David P. schrieb:
>> Ich entschuldige mich, mit dieser (doch recht simplen) anfängerfrage
>> eine solche Diskussion ausgelöst zu haben.
>
> Du mußt Dich für nichts entschuldigen, eher andere für die Störung des
> Threads. Das leider recht hohe Grundrauschen muß man ignorieren. Schade
> ist nur, daß dadurch der sinnvolle Inhalt schlecht lesbar wird.

Aber die Frage warum ein blutiger Anfänger als erstes an den Fuses 
rumschreibt ist wichtig und wurde nicht beantwortet.

Sie ist wichtig weil es hier vielleicht auch falsche Tutorials oder 
sonstige irreführende Infos irgendwo gibt, die man korrigieren könnte.

Es würde vielen Anfängern helfen wenn sie das Thema einfach mal außer 
acht lassen könnten. Ich denke nicht wenigen haben die Fuses gleich ganz 
zu Anfang den Spaß an der Sache verhagelt. Und das völlig grundlos.

Daher nochmal die Frage an den TE: Was hat dich in diesem Fall dazu 
gebracht, gleich auf die Fuses los zu gehen?
Ich meine du hättest einfach sofort losprogrammieren können. Der 
Controller läuft ohne externen Taktgeber an und funktioniert. Im Zweifel 
die default Taktfrequenz nachschlagen (für delays). Aber das wars dann 
auch. Oder wurde dir irgendwo etwas anderes gesagt?

: Bearbeitet durch User
von J. T. (chaoskind)


Lesenswert?

Cyblord -. schrieb:
> Was deine Einlassungen noch unintelligenter macht. Ein Mann schreibt was
> er über die Sache denkt

Das siehst du schon wieder falsch. Eigentlich war es mir relativ egal. 
Aber da ich dich nicht leiden kann, war es mir Grund genug, dann doch 
meinen Senf zur Sache dazuzugeben. Aber den Unterschied zwischen Motor 
und verfusen hast du ja nicht verstanden. Hätte jemand anderes als du 
das selbe geschrieben, hät ich aber vermutlich tatsächlich nichts dazu 
gesagt.

von Cyblord -. (cyblord)


Lesenswert?

J. T. schrieb:
> Aber da ich dich nicht leiden kann, war es mir Grund genug, dann doch
> meinen Senf zur Sache dazuzugeben.

Damit hast du letztlich den Thread stark gestört. Da deine Antwort 
Unsinn war, erzeugte sie weitere Diskussion. Bis jetzt.
Völlig unnötige Störung eines sachlichen Threads aus persönlichen 
Animositäten. Das ist vor allem gegenüber dem TE nicht fair. Was kann er 
für deine persönlichen Probleme?

: Bearbeitet durch User
von Martin (Gast)


Lesenswert?

Cyblord -. schrieb:
> J. T. schrieb:
>> Aber da ich dich nicht leiden kann, war es mir Grund genug, dann doch
>> meinen Senf zur Sache dazuzugeben.
>
> Damit hast du letztlich den Thread stark gestört. Da deine Antwort
> Unsinn war, erzeugte sie weitere Diskussion. Bis jetzt.
> Völlig unnötige Störung eines sachlichen Threads aus persönlichen
> Animositäten. Das ist vor allem gegenüber dem TE nicht fair. Was kann er
> für deine persönlichen Probleme?

Seht zu, dass ihr euch woanders anpöbelt. Das ist ein technisches Forum, 
da haben Typen wie ihr so oder so nicht zu suchen. kwt

von David P. (devryd)


Lesenswert?

Cyblord -. schrieb:
> Daher nochmal die Frage an den TE: Was hat dich in diesem Fall dazu
> gebracht, gleich auf die Fuses los zu gehen?
> Ich meine du hättest einfach sofort losprogrammieren können. Der
> Controller läuft ohne externen Taktgeber an und funktioniert. Im Zweifel
> die default Taktfrequenz nachschlagen (für delays). Aber das wars dann
> auch. Oder wurde dir irgendwo etwas anderes gesagt?

Ich habe auch erst damit angefangen das typische "Blink" zu 
programmieren. Da ich den Stromverbrauch senken wollte, wollte ich vom 
internen 8MHz Oszillator auf den 128KHz Oszillator ohne CDIV8 umsteigen. 
Das ganze habe ich jetzt auch hinbekommen. Ein Tutorial dazu habe ich 
nicht genutzt, lediglich das Datenblatt falsch gelesen

von Cyblord -. (cyblord)


Lesenswert?

David P. schrieb:
> Ich habe auch erst damit angefangen das typische "Blink" zu
> programmieren. Da ich den Stromverbrauch senken wollte, wollte ich vom
> internen 8MHz Oszillator auf den 128KHz Oszillator ohne CDIV8 umsteigen.
> Das ganze habe ich jetzt auch hinbekommen. Ein Tutorial dazu habe ich
> nicht genutzt, lediglich das Datenblatt falsch gelesen

Ok da muss ich sagen dieses Szenario macht Sinn. Wenn hier eine bewusste 
Entscheidung zu Grunde liegt die Fuses zu ändern um einen bestimmten 
Effekt zu erhalten ist alles korrekt.

Letztlich hätte ein bessere Tooling (Nutzung des offiziellen Flasher 
Tools) das Problem wahrscheinlich verhindert. Da man hier die 
gewünschten Fuses viel benutzerfreundlicher Einstellen kann.
Danke für die Klarstellung-

: Bearbeitet durch User
von duck und wech (Gast)


Lesenswert?

Hermann Kokoschka schrieb:
> David P. schrieb:
>> ..gestern abend angefangen mich mit AVRs zu beschäftigen...
> WIESO muss man als Anfänger als erstes an den Fuses herumfummeln?
> Das ist einfach nicht zu begreifen!

Es ist mir sowieso unbegreiflich, wieso man sich mit so etwas 
vermurkstem wie einem AVR-µC beschäftigen kann, diese Verfuserei kommt 
hier seit 'zig Jahren in jedem 2. Thread vor und AVR hat das immer noch 
nicht abgestellt.

Nimm einen richtigen µC und freue Dich des Lebens ...

duck und wech

von David P. (devryd)


Lesenswert?

Der Atmega1284p wurde mir hier im Forum empfohlen. Ich finde das 
Einstellen über Fuses auch recht umständlich, kenne mich aber nicht gut 
genug aus um zu wissen, wie es bei anderen Systemen läuft.

von Karl B. (gustav)


Lesenswert?

Peter D. schrieb:
> Starte Atmel/Microchip-Studio, setze den Programmer auf den langsamsten
> SPI-Takt (2kHz) und lese die Signatur aus. Wenn die stimmt, kannst Du
> die Fuses wieder richtig setzen.

Hi,
auch HV-Programmierung kann als ultima ratio herhalten, wenn zu sehr 
"verfused".

"...3.7.2 High-voltage Programmierung
Bei der High-voltage Programmierung liegt eine Spannung von 12V am 
RESET-Pin des AVR an. Alle AVR’s könne auf diese Art und Weise 
programmiert werden und müssen dafür nicht aus dem Sockel gezogen 
werden..."
Mal das Manual des STK500 raussuchen.
https://www.manualslib.de/manual/53744/Atmel-Stk500.html
und: Seite 20 ff
https://www.mikrocontroller.net/attachment/42741/STK500-HW-Beschreibung.pdf

ciao
gustav

: Bearbeitet durch User
von Gerhard O. (gerhard_)


Lesenswert?

duck und wech schrieb:
> Hermann Kokoschka schrieb:
>> David P. schrieb:
>>> ..gestern abend angefangen mich mit AVRs zu beschäftigen...
>> WIESO muss man als Anfänger als erstes an den Fuses herumfummeln?
>> Das ist einfach nicht zu begreifen!
>
> Es ist mir sowieso unbegreiflich, wieso man sich mit so etwas
> vermurkstem wie einem AVR-µC beschäftigen kann, diese Verfuserei kommt
> hier seit 'zig Jahren in jedem 2. Thread vor und AVR hat das immer noch
> nicht abgestellt.
>
> Nimm einen richtigen µC und freue Dich des Lebens ...
>
> *duck und wech*

Moin,

Dann dürften die besagten Millionen von Fliegen einem peinlichem Irrtum 
zum Opfer gefallen sein:-)

Die kleinen 8-Bitter, ganz gleich von welchen Hersteller, haben schon in 
vielen Steueraufgaben der Welt ihre Daseinsberechtigung. Ob jetzt AVR 
oder irgend etwas anderes, macht doch keinen Weltbewegenden Unterschied.

Sicher, die Anfälligkeit den AVR zu verfusen, ist nicht schön und 
manchmal zahlen wir am Anfang alle unser Lehrgeld. Trotzdem ist es nicht 
das Ende der Welt. Man kann mit allen diesen uC schöne Erfolgserlebnisse 
haben. Ist halt das berühmte AVR Einstiegsritual:-)

Ich möchte manche von Euch freundlich darauf aufmerksam machen bzw. 
erinnern, daß nicht Alle, die dieses Forum besuchen, professionelle 
erfahrene Entwickler sind und auch der Hobbybereich hier stark vertreten 
ist. Jeder hat mal anfangen müssen. Auch der Herr Einstein...

Jedenfalls wünsche ich mir, daß wir uns alle zur gegebenen Zeit, wenn 
wir hin und wieder auch auf dem Schlauch stehen, mit den manchmal schier 
unlösbaren Problemen einander helfen können. Wenn wir ehrlich sind, dann 
haben alle von uns Momente, wo man momentan nicht weiterkommt und man 
erst Mal Abstand vor einer Aufgabe nehmen muß bevor man mit neuer 
Perspektive beim nächsten Mal das Problem spielend löst.

In dem Sinn,
Einen schönen Tag noch aus Kanada,
Gerhard

von EAF (Gast)


Lesenswert?

Ach, das mit Fuses geht schon....
Übung, Sorgfalt und Disziplin. Das kommt mit der Zeit.

Schön ist in den Fällen, wo man sich wirklich abgehangen hat, oder man 
bei einem Tiny mal den Resetpin mit nutzen muss, ein HV Programmer.

Der hält einem den Rücken frei.

von J. T. (chaoskind)


Lesenswert?

Cyblord -. schrieb:
> Ok da muss ich sagen dieses Szenario macht Sinn.

Na also, jetzt siehst du selbst, dass deine ursprüngliche Aussage falsch 
war.

von J. T. (chaoskind)


Lesenswert?

Gerhard O. schrieb:
> Ich möchte manche von Euch freundlich darauf aufmerksam machen bzw.
> erinnern, daß nicht Alle, die dieses Forum besuchen, professionelle
> erfahrene Entwickler sind und auch der Hobbybereich hier stark vertreten
> ist. Jeder hat mal anfangen müssen. Auch der Herr Einstein..

Das kann man nur doppelt unterstreichen und bestätigen. Schön dass es 
hier auch ab und an noch normale Leute gibt, die nicht 
vollproffesionelle Entwickler sind und sowieso alles wissen, aber sich 
nicht mehr in nen Anfänger hineinversetzen können.

von Cyblord -. (cyblord)


Lesenswert?

J. T. schrieb:
> Cyblord -. schrieb:
>> Ok da muss ich sagen dieses Szenario macht Sinn.
>
> Na also, jetzt siehst du selbst, dass deine ursprüngliche Aussage falsch
> war.

Nö die ist und bleibt korrekt. Anfänger sollen da nicht einfach so 
rumspielen OHNE GRUND. Hat er aber auch nicht gemacht.

: Bearbeitet durch User
von erklehr behr (Gast)


Lesenswert?

David P. schrieb:
> Ich finde das
> Einstellen über Fuses auch recht umständlich, kenne mich aber nicht gut
> genug aus um zu wissen, wie es bei anderen Systemen läuft.

Hättest du mal die Fuses mit AVR Studio (4.xx) oder mit Atmel
Studio (5.xx - 7.xx) bearbeitet würdest du wohl anderer Meinung
sein.

Aber es muss ja am Anfang immer das billigste und einfachste
Material sein, und möglichst keine Original-Ware, sonst könnte
man dem (Original-)Hersteller ja einen Euro zuviel schenken.

Ich empfehle für den Anfang: AVR ISP MKII.

von Cyblord -. (cyblord)


Lesenswert?

erklehr behr schrieb:
> Ich empfehle für den Anfang: AVR ISP MKII.

Nein sorry. Das ist alt wie Steinkohle.

Atmel ICE ist modern und kann so ziemlich jede der hundert 
Schnittstellen von AVRs. Und man kann damit ordentlich debuggen.

von erklehr behr (Gast)


Lesenswert?

Cyblord -. schrieb:
> Nein sorry.

Für den Anfang reicht das vollkommen. Und man kann damit in den
Studios komfortabel die Fuses einstellen.

von Karl B. (gustav)


Lesenswert?

Cyblord -. schrieb:
> Anfänger sollen da nicht einfach so
> rumspielen OHNE GRUND.

Hi,
der Spieltrieb schlägt eben manchmal durch.
Bei meiner ersten Inbetriebnahme des STK500 Boards habe ich die Taste 
Program gedrückt. Weil ich meinte, man brauchte nur Knöpfchen drücken.
Dass man damit die Firmware des Boards rauskickt, war mir später erst 
klar.
OK. Auch für den Fall gab es aber auch einen Reparatur-Workaround.

ciao
gustav

: Bearbeitet durch User
von Cyblord -. (cyblord)


Lesenswert?

erklehr behr schrieb:
> Cyblord -. schrieb:
>> Nein sorry.
>
> Für den Anfang reicht das vollkommen. Und man kann damit in den
> Studios komfortabel die Fuses einstellen.

Ja, aber kein Debugging, kein DW, kein PDI kein JTAG. Einmal korrekt 
ausrüsten und für alles gerüstet sein.

von Gerhard O. (gerhard_)


Lesenswert?

Cyblord -. schrieb:
> erklehr behr schrieb:
>> Ich empfehle für den Anfang: AVR ISP MKII.
>
> Nein sorry. Das ist alt wie Steinkohle.
>
> Atmel ICE ist modern und kann so ziemlich jede der hundert
> Schnittstellen von AVRs. Und man kann damit ordentlich debuggen.

Ich habe auch so einen ICE. Aber mir gefallen die unnötig 
miniaturisierten Headers nicht sehr. Wer sich dann aus Kostengründen nur 
die nackte LP Version des UCE ersteht, braucht man dann wieder eine 
Adapter LP um die älteren Standard Header Formfaktoren wieder erreichen 
zu können. Abgesehen davon finden sich nicht in jeder Bastelkiste 0.025" 
Abstand Flachkabel und die dazugehörigen Verbinder und sind wegen 
Mindestmengen manchmal teuer zu erstehen.

Wäre es wirklich so schlimm wenn ein ICE etwas größer ausfällt und 
vernünftige Headers hätte? Oder noch besser, beide Formate.

Aber dafür kann es UPDI OCD, und das, ist wirklich eine feine Sache mit 
einigen der neueren AVRs wie die DA und DB Serien.

: Bearbeitet durch User
von Cyblord -. (cyblord)


Lesenswert?

Gerhard O. schrieb:

> Ich habe auch so einen ICE. Aber mir gefallen die unnötig
> miniaturisierten Headers nicht sehr.

Da hast du recht. "Normale" Header in 2.54 wären hier eine 
Erleichterung.

Ich habe mir ein paar passender Kabel günstig auf eBay geholt und nutze 
sowieso mein eigenes Stecksystem für die ISP Schnittstelle. Also einmal 
das korrekte Kabel basteln und fertig.
Somit hält sich das in Grenzen. Aber für den Anfänger zieht es wieder 
eine Hürde ein und verursacht im besten Fall einen Adapter-Verschlag.

> Aber dafür kann es UPDI OCD, und das, ist wirklich eine feine Sache mit
> einigen der neueren AVRs wie die DA und DB Serien.

Exakt.
Es ist nett das man einfach fast jede AVR Schnittstelle damit bedienen 
kann. Neu wie alt.

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Hallo David,
ich habe mal ein paar Erklärungen zum Thema hier zusammen gefasst:
http://stefanfrings.de/avr_verfused/index.html

Vielleicht hilft es dir, den Fehler künftig zu verstehen bzw. zu 
vermeiden.

von Karl B. (gustav)


Angehängte Dateien:

Lesenswert?

Hi,
noch ein Bild.

ciao
gustav

von Peter D. (peda)


Lesenswert?

David P. schrieb:
> Da ich den Stromverbrauch senken wollte, wollte ich vom
> internen 8MHz Oszillator auf den 128KHz Oszillator ohne CDIV8 umsteigen.

Man kann aber auch zur Laufzeit den Prescaler (CLKPR) umschalten und so 
die CPU mit 8MHz / 256 = 32kHz laufen lassen, ohne die Fusebits 
anzufassen.

von svensson (Gast)


Lesenswert?

Ich muß noch mal Öl ins Feuer giessen:

Mit Arduino wäre das nicht passiert! Die IDE setzt die Fuses selbst auf 
die "normalen" Werte. Noch ein Vorteil für die Anfänger.

Gut, hier wollte der TE mit den Fuses herumspielen, hat es also 
absichtlich gemacht. Und natürlich kann man dabei einen Fehler machen, 
das ist doch kein Problem.

Ich habe auch schon mit den Lock-Bits herumgespielt. Und den MC dann 
wieder mittels HVP wieder in den Normalmodus zurückgeholt.

von Stefan F. (Gast)


Lesenswert?

svensson schrieb:
> Ich muß noch mal Öl ins Feuer giessen:
> Mit Arduino wäre das nicht passiert!
> Die IDE setzt die Fuses selbst auf die "normalen" Werte.

Aber die normalen Werte wollte er ja gerade nicht verwenden.

David, wenn du den µC so extrem langsam taktest kann es sein, dass dein 
Programmieradapter damit nicht klar kommt weil er zu schnell 
kommuniziert.

von S. Landolt (Gast)


Lesenswert?

> Ich habe auch schon mit den Lock-Bits herumgespielt.
> Und den MC dann wieder mittels HVP wieder in den
> Normalmodus zurückgeholt.

HighVoltageProgramming?
'Chip Erase' hätte genügt.

von Brummertime and the Living is easy (Gast)


Lesenswert?

erklehr behr schrieb:
> Aber es muss ja am Anfang immer das billigste und einfachste
> Material sein, und möglichst keine Original-Ware, sonst könnte
> man dem (Original-)Hersteller ja einen Euro zuviel schenken.

So ist es. Wenn man nämlich mit dem Kram nicht zurecht kommt, dann ist 
wenigstens der finanzielle Verlust nicht hoch.

von David P. (devryd)


Lesenswert?

Stefan ⛄ F. schrieb:
> Vielleicht hilft es dir, den Fehler künftig zu verstehen bzw. zu
> vermeiden.
Vielen Dank, werde ich mir durchlesen.

Peter D. schrieb:
> Man kann aber auch zur Laufzeit den Prescaler (CLKPR) umschalten und so
> die CPU mit 8MHz / 256 = 32kHz laufen lassen, ohne die Fusebits
> anzufassen.
Wieder was dazu gelernt. Ich bin halt ziemlicher Anfänger und wusste 
nicht, dass das auch in Software geht und nicht nur über Fuses

Stefan ⛄ F. schrieb:
> David, wenn du den µC so extrem langsam taktest kann es sein, dass dein
> Programmieradapter damit nicht klar kommt weil er zu schnell
> kommuniziert.
Das hab ich schon gelesen. Leider kann ich zu meinem Programmierer nicht 
finden, welche Frequenzen er benutzt, ich kann lediglich zwischen 
schnell und langsam wechseln.

von S. Landolt (Gast)


Lesenswert?

> ... Wieder was dazu gelernt...
Okay - wenn der Schwerpunkt aber auf Stromsparen liegt: der 128 
kHz-Oszillator kommt mit weniger als der Hälfte des 8 MHz aus (ist dafür 
wesentlich ungenauer):
1
      8 MHz/64  128 kHz/1
2
5.0 V  .32 mA    .15 mA
3
3.0 V  .19 mA    .07 mA

von Gerhard O. (gerhard_)


Lesenswert?

Cyblord -. schrieb:
> Gerhard O. schrieb:
>
>> Ich habe auch so einen ICE. Aber mir gefallen die unnötig
>> miniaturisierten Headers nicht sehr.
>
> Da hast du recht. "Normale" Header in 2.54 wären hier eine
> Erleichterung.
>
> Ich habe mir ein paar passender Kabel günstig auf eBay geholt und nutze
> sowieso mein eigenes Stecksystem für die ISP Schnittstelle. Also einmal
> das korrekte Kabel basteln und fertig.
> Somit hält sich das in Grenzen. Aber für den Anfänger zieht es wieder
> eine Hürde ein und verursacht im besten Fall einen Adapter-Verschlag.

Kann man machen. Was mich aber schon stört, ist die relative 
Empfindlichkeit der miniaturisierten Kontakte, Kabel und der 
Gabelverbinder durch öfteres Ein- und Ausstecken. So viele Einzeldrähte 
per Gabel sind da jeweils auch nicht drin. Da empfiehlt es sich 
Wannenstecker mit Eject Tabs zu wählen so daß man nicht am Kabel ziehen 
muß. Für übermässig viele Zyklen sind diese Art Verbinder bestimmt nicht 
vorgesehen und sanftes Umgehen ist auf alle Fälle angesagt. Zum Glück 
schenkte mir ein nettes Forenmitglied einen selbstentwickelten 
Multifunktionsadapter auf Standard ISP/JTAG Formate (Nochmals Großes 
Danke)

Dann kommt noch dazu, daß der ISP-Wannenstecker um 180 Grad verkehrt 
eingebaut ist, so daß man die IDC-Kabelstecker vor dem Kabelanschluß 
auch verdrehen muß. Schwer zu sagen ob das ein Bug oder Feature ist. 
Irgendwie kann ich den Gedankengang nicht ganz nachvollziehen.

Aber genug der Nörgelei:-) Das Teil funktioniert ja sonst gut.
>
>> Aber dafür kann es UPDI OCD, und das, ist wirklich eine feine Sache mit
>> einigen der neueren AVRs wie die DA und DB Serien.
>
> Exakt.
> Es ist nett das man einfach fast jede AVR Schnittstelle damit bedienen
> kann. Neu wie alt.

von Dyson (Gast)


Lesenswert?

erklehr behr schrieb:
> Für den Anfang reicht das vollkommen. Und man kann damit in den
> Studios komfortabel die Fuses einstellen.

Konnte man. Das Teil wird nicht mehr hergestellt und ist bestenfalls 
noch als Restware bei irgendeinem Händler oder hin und wieder gebraucht 
verfügbar. Alternativ werden noch Clones, teilweise als Originale, auf 
einer bekannten Auktionsplatform angeboten. Damit zieht man aber u.U. 
erst recht die Arschkarte.

von svensson (Gast)


Lesenswert?

S. Landolt schrieb:
> HighVoltageProgramming?
> 'Chip Erase' hätte genügt.

Nicht, wenn man mit SPIEN herumspielt. ;-)

Ich glaube ich wollte damals testen, wie weit man einen MC schützen 
kann.

von Peter D. (peda)


Lesenswert?

svensson schrieb:
> Nicht, wenn man mit SPIEN herumspielt. ;-)

Wie schon gesagt, ISP kann sich nicht selber disablen.
SPIEN kann man nur über die anderen Schnittstellen ändern 
(HighVoltageProgramming oder JTAG).

von S. Landolt (Gast)


Lesenswert?

an svensson:
Zitat aus dem Datenblatt: 'Note: 1. The SPIEN Fuse is not accessible in 
serial programming mode.'

von Stefan F. (Gast)


Lesenswert?

S. Landolt schrieb:
> Zitat aus dem Datenblatt: 'Note: 1. The SPIEN Fuse is not accessible in
> serial programming mode.'

Leider kann man sich mit der RSTDISBL Fuse genau so ins Knie schießen 
wenn man keinen High Voltage Programmieradapter hat.

von S. Landolt (Gast)


Lesenswert?

an Stefan Frings:

Was hier aber
1. nicht das Thema war (lock-bits & SPIEN)
und
2. beim ATmega1284P ohnehin nicht möglich ist.

von Martin V. (oldmax)


Lesenswert?

Hi
David P. schrieb:
> Ich entschuldige mich, mit dieser (doch recht simplen) anfängerfrage
> eine solche Diskussion ausgelöst zu haben. Für die Zukunft weiß ich es
> besser...

Du brauchst dich nicht entschuldigen, da sind andere dran. Aber so ist 
es halt, wenn die eigene Intelligenz gnadenlos überbewertet wird und die 
Diskussion in Angriff und Gegenangriff abdriften. Obwohl für den Inhalt 
völlig irrelevant.
Gruß oldmax

von Karl B. (gustav)


Lesenswert?

SCNR
Möchtest du für Statistikzwecke dein Profil vervollständigen?
Berufliche Tätigkeit (Schwerpunkt):

;-))

: Bearbeitet durch User
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.