Tiny nach Fuse setzen tot, oder fuses setzen für Anfänger (wie mich)

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    Aufgrund technischer Veränderungen ist der Mailverkehr innerhalb des Forums (Private Nachrichten) nur noch eingeschränkt möglich. Die Einschränkung ist notwendig, um zusätzliche Betriebskosten für das Forum zu vermeiden. Näheres zu den Hintergründen im Thread "Aktuelles zum Forum".Wir bitten um Verständnis.

    Hinweis kann nach Kenntnisnahme deaktiviert werden!

    • Tiny nach Fuse setzen tot, oder fuses setzen für Anfänger (wie mich)

      Hallo zusammen,

      nachdem mir hier gerade sehr geholfen wurde, möchte ich meine Erfahrungen hier teilen.

      Ich habe schon ein wenig Erfahrungen mit Bascom gesammelt, hab mich aber noch nie mit den Fusebits beschäftigt.
      Ich wollte einen ATTiny85 mit den intern möglichen 8 MHz takten. Im Auslieferzustand läuft er ja durch den in den Fusebits eingestellten Teiler nur mit 1 MHz.
      Im Netz habe ich dann eine Anleitung gefunden, in der steht:
      "Beim erstmaligen Fuse setzen ist dieClock Frequencyauf <1/4, d.h. <250kHz zu reduzieren."
      Siehe hier: dl6gl.de/sites/default/files/d…m_und_usbasp_setzen_0.pdf

      Das habe ich vorher gemacht (mit einem jungfräulichen Tiny)
      Danach habe ich das Fusebit H (Divide clock by 8 ) nach dieser Anleitung geändert und dann mit "Write FS auf den Tiny übertragen.

      Letztendlich war der Tiny danach nicht mehr les- und schreibbar. Diese Fehlermeldung erscheint: ":Error: program enable: no answer. 1"

      Folgende Tipps habe ich heute hier im Forum von @'Mitch64 erhalten, die für mich sehr hilfreich waren und auch zum Erfolg geführt haben:
      1.) Clock auf "Auto" lassen
      2.) ZUERST das Programm auf die 8 MHz ändern
      3.) Noch vor die Config xxxx-Zeilen ein "Wait 1" einfügen (Das Wait verhindert dann, dass der Programmer gleich irgendwelche Pulse bekommt. Das mag der vielleicht nicht.)
      4.) Jetzt zuerst das Programm programmieren (wenn auch mit falscher Frequenz).
      5.) Danach erst die entsprechenden Fusebits proggen. Immer erst das eine Fuse proggen, dann das 2. Nie beide auf einmal ändern und dann proggen lassen.

      UND VOR ALLEM: Genau aufpassen wenn man an den Fuses was ändert!!! Vor allem, wenn verschiedene Fuses angesprochen werden.

      Mir hat das SUPER geholfen.
      Im nächsten Schritt werde ich einen externen Quarz dran hängen. Auch dazu muss man an den Fuses etwas ändern.
      Sobald ich den Quarz habe (muss ich noch bestellen), schreibe ich euch meine Erfahrungen hier rein. Da hat mir Mich64 auch schon ein paar Tipps gegeben.

      Und vielleicht hat einer von Euch ja eine Idee, wie man den einen ver"fuseten" Tiny wieder retten kann....

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Bastlbeda ()

    • Bastlbeda schrieb:

      Und vielleicht hat einer von Euch ja eine Idee, wie man den einen ver"fuseten" Tiny wieder retten kann....
      Ich habe zu diesem Zweck einen kleinen 1MHz-Quarzoszillator in der Schublade. Dieser kleine Helfer für ein paar Cent hat bisher noch alle AVRs zum Laufen gebracht, die ich aus Versehen auf "Externen Quarz" oder "Externes Clock-Signal" verfust hatte. Mit einer ausreichend niedrigen Programmer-Frequenz (< 250 kHz) ließen sich die Dinger alle wieder einwandfrei zurückfusen.
    • Bastlbeda schrieb:

      Klingt gut, das probiere ich. Da bestell ich gleich einen mit. 1,30 € bei Reichelt sind den Versuch Wert.
      Anstatt dieses Oszillators kannst du dir deinen Taktgeber aber auch selbst bauen, mit einem Tiny 25/45/85.
      Das hat den Vorteil, dass du auch einen großen Spannungsbereich (1,8V bis 5V) einen Takt hast.

      Der Tiny 25/45/85 hat ja auch einen Clock-Output-Pin, habe ich gestern im Datenblatt gesehen, den man mit Fuses aktivieren kann.
      Ich denke mal, dann kann man auch den SystemClock, die 1MHz (Clock divide by 8 enabled) oder die 8MHz (Ckock divide by 8 disabled) ausgeben, ohne einen ext. Quarz.
      Der Ausgabepin wäre dann CLKO bzw. XTAL2 Pin.
      Das Fuse-Bit dazu heißt CKOUT.
    • Bei vielen meiner "Rettungsversuchen" habe ich für mich herausgefunden, dass 800 KHz die optimale Frequenz darstellt.
      Die 800 KHz habe ich mit einem Synthesizer eingestellt und einfach an den Clock Eingang über einen 1K Widerstand angelegt.
      Die Programmer Frequenz habe ich auf ~10 KHz gestellt.

      Dies ist nur meinen Tests entsprungen...
      Code first, think later - Natural programmer :D
    • six1 schrieb:

      dass 800 KHz die optimale Frequenz
      erstaunlich, ich hielt sie für unkritisch. Wichtig jedoch das die Programmiererfrequenz mindestens viermal kleiner sein muß. z.B. max 4 khz bei einen auf 16khz "gefusten". Den externen Clock nimmt er auch nur an wenn auf exter (bzw Quarz) gefust wurde oder bei HV Programmierer. Dieser kann je nach Auslegung nicht nur Fuses sondern auch die vollständige Programmierung.
    • So, da bin ich wieder. Habe auf die Lieferung meines Quarzes gewartet und in der Wartezeit hab ich mir einen kleinen HV-Rester auf Arduino-Basis gebastelt. Kann ich wärmstens empfehlen. Kostet fast nix (OK, ich hab die Luxusversion mit 5V->12V-DC-DC-Wandler gebastelt), einfach zu bedienen und vor allem.... keine Angst mehr vor falschem Fußes-setzen.
      Man benötigt einen einfachen Arduino Uno, 2 Transistoren, 5 Widerstände, IC-Sockel nach Bedarf und in meiner Version noch einen DC-DC-Wandler für 2,80 €.
      Ich hab jetzt mal meine ver"fuse-ten" Tinys alle wieder hergestellt und jetzt kann wieder los gehen.
      Anbei mal ein Bild davon.
      Ich habe ihn für die ATTiny13, 25, 45, 24, 44 und 84 gebaut, also mit einem DIP8 und einem DIP14 Sockel.
      Gebaut nach dieser Anleitung: franksteinberg.de/RescueAVR-MiniShield.htm
      Für die 12V habe ich noch den DC-DC-Wandler spendiert, somit ist er komplett über USB versorgt.
      Dateien
      • AVR-Retter.JPG

        (382,54 kB, 16 mal heruntergeladen, zuletzt: )
    • Sehr schön. :thumbsup: Aber Vorsicht mit den Sockeln. Sie sind nur bedingt zum Chipwechsel geeignet da sie die Pins präzise in Position erwachten. Einen gefalteten Pin bekommt man nur einmal wieder hin ;(
      Das I-Tüpfelchen wäre jetzt eine Software die ihn komplett brennen kann. Dann könnte der Reset als Pin benützt werden ohne in mit zwei verschiedenen Brennern zu bearbeiten.