Forum: Mikrocontroller und Digitale Elektronik Attiny84v high-voltage programming


von Mi N. (namnam)


Lesenswert?

Hallo,
ich habe eine verfuse-ten Attiny84v welchen ich mit high-voltage 
programming zurücksetzen möchte.

Zur Verfügung steht ein STK500.

Leider scheitere ich daran den Atmel anzuschließen. Ein 
Erweiterungsboard habe ich nicht.

Ich versuche gerade die PINbelegung des STK mit dem Atmel abzugleichen 
aber irgendwie scheitere ich daran.

Welche Anschlüsse müssen an welche PINs und welche JUMPER müssen gesetzt 
werden?

STK500
https://www.microchip.com/webdoc/stk500/stk500.SHVProgramming.html

Datenblatt Attiny84v
https://www.reichelt.de/index.html?ACTION=7&LA=3&OPEN=0&INDEX=0&FILENAME=A300%252Fattiny84.pdf

Ich hoffe ihr könnt mir da helfen

von S. Landolt (Gast)


Lesenswert?

Mangels entsprechender Umgebung kann ich bei HV-Programmierung nicht 
zuverlässig helfen; vielleicht aber lässt sich der ATtiny84 ja noch 
seriell zurückholen, ist denn bekannt, wie er verfust wurde?

von Einer K. (Gast)


Lesenswert?


von Mi N. (namnam)


Lesenswert?

Hallo,
danke für die Antwort.
Ich habe den Atmel (vor langer Zeit) auf externen Uhrenquarz gestellt.

Meine Versuche:
ich hatte nur einen 10mhz quarz ohne passende kondensatoren zu hause. 
Damit läuft er nicht an.

Dann habe ich mittels Transistortester 1mhz auf die pins gegeben, damit 
konnte ich ihn nach rumspielen mit der Geschwindigekeit erreichen. Ein 
setzen der Fuse war möglich aber aus irgend welchen gründen läuft er 
nicht standalone an und ich erreiche ihn nur mit externen Takt.

von S. Landolt (Gast)


Lesenswert?

> externen Uhrenquarz

Dann sollte, wie ja schon gesehen, ein externer Takt an XTAL2 (sic!) zum 
Ziel führen, allerdings ist 1 MHz wohl zu hoch, ich würde unter 300 kHz 
bleiben (kann ich aber gleich mal ausprobieren).

von Thomas W. (diddl)


Lesenswert?

Mit dem STK500 wirst du Probleme haben …

Wobei das anschließen noch das geringste Problem wäre.

Das STK500 ist physikalisch in der Lage das zu tun.
Aber praktisch wird es an der Software scheitern.
Wenn man STK500 auswählt, dann fehlen die neueren AVR Typen.



Je nachdem welche Fuse das Problem macht, kann ein ganz langsamer ISP 
Takt dein Problem lösen.

von S. Landolt (Gast)


Lesenswert?

Ich habe nur einen ATtiny84A-PU hier, und der läuft, bei Fuse-Low-Byte = 
0x66, tatsächlich mit 1 MHz an XTAL2 (symmetrisches Rechteck, also 
Tastgrad 50 %).
  Falls Sie mit bezüglich der HV-Programmierung nicht weiterkommen, 
sollten Sie es nochmals seriell versuchen.

von BlaBla (Gast)


Lesenswert?

Mit dem STK500 und AtmelStudio 7 lässt sich der ATtiny84 per HVSP 
zurücksetzen.

von BlaBla (Gast)


Lesenswert?

Hier noch ein Auszug aus der Hilfedatei. Benötigt leider das 
STK505-Modul. Vielleicht kann man sich auch was zusammenbasteln. Die 
Anschlüsse sind ja auf dem STK500 vorhanden.

ATtiny24
ATtiny44
ATtiny84
ATtiny26
ATtiny461
ATtiny861

ATtinyX4, use the green section of the STK505 Top Module. ATtinyX6, use 
the blue section of the STK505 Top Module. See the STK505 user guide. 
ATtinyX6 also fits directly on the STK500, but requires special 
strapping.

von Mi N. (namnam)


Lesenswert?

vielen Dank für die vielen Antworten...

Ich bin gerade unterwegs und werde den Atmel heute abend noch einmal mit 
einem ext Takt versorgen und hoffe, dass er sich dann zurücksetzen 
lässt.

Ich habe das Atmelstudio 7 und der Controller ist dort aufgeführt.
Leider bin ich leider bei der Verdrahtung ausgestiegen.

von BlaBla (Gast)


Lesenswert?


von Einer K. (Gast)


Lesenswert?

BlaBla schrieb:
> Hier noch eine Bastelanweisung:
>
> http://www.robotroom.com/Atmel-STK500-DIY-Adapter-...

Der Artikel bespricht ISP Programming nicht HVSP

von BlaBla (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Der Artikel bespricht ISP Programming nicht HVSP

Na und? Wir wollen doch basteln. Die restlichen Drähte basteln wir noch 
dran.
Schaltplan STK500 und STK505 sind im Netz zu finden.

von Volker H. (volkerh) Benutzerseite


Lesenswert?

Hiermit geht es prima und für viele AtTinys und AtMegas,

hier ein Beitrag von Autor manakinen auf instructables, der originale 
Beitrag ist derzeit nicht auffindbar.
https://www.instructables.com/id/AVR-Attiny-fusebit-doctor-HVSP/

Die Steckmodule habe ich seinerzeit mal als ein 
Platinenbesteller-Erstlingswerk zusammengefaßt, es gab einige 
Nachbauten.
Beitrag "[V] PCB für "fusebit doctor" zum Resetten verfuster AVR-Controller"

Es ist nicht unwahrscheinlich, daß ich noch Platinen einer 
Nachbestellung da habe.

Gruß

von BlaBla (Gast)


Lesenswert?


von S. Landolt (Gast)


Lesenswert?

Eine weitere Möglichkeit, falls ein zweiter Controller zur Verfügung 
steht: diesen als seriellen 'Resetter' verwenden, denn der "verfuse-te" 
ATTiny84 läuft ja, nur offenbar zu langsam für die vorhandene serielle 
Programmierumgebung.

von S. Landolt (Gast)


Lesenswert?

PS:

> ich hatte nur einen 10mhz quarz

Das hatte ich überlesen, d.h., dass kein 32 KiHz-Quarz vorhanden ist?

von HildeK (Gast)


Lesenswert?

Thomas W. schrieb:
> Das STK500 ist physikalisch in der Lage das zu tun.
> Aber praktisch wird es an der Software scheitern.
> Wenn man STK500 auswählt, dann fehlen die neueren AVR Typen.

Zumindest beim Studio 4 sind diese Typen anwählbar. Wenn man den normal 
programmieren kann, dann geht es auch über HV. Kann in Studio 7 anders 
sein.

Sind halt nur die extra Leitungen notwendig, die hier beschrieben sind:

Mi N. schrieb:
> STK500
> https://www.microchip.com/webdoc/stk500/stk500.SHVProgramming.html
Da ist doch alles ganz genau beschrieben!
- Reset und Takt verbinden vom Stecker E zum Port B
- SPROG mit dem PROG DATA nach der Beschreibung verbinden.
- Den Takt mit OSCSEL auf den SW-Takt stellen (Jumper Richtung Stecker 
PROG CTRL).

Dann natürlich die ISP-Leitungen an den Prozessor legen. Das mag etwas 
basteln (6 Leitungen mit Versorgung) notwendig machen, aber das braucht 
man auch für die normale Programmierung.

Ist praktisch identisch zum Tinyx5 und die habe ich mit STK500 und 
Studio 4 so schon erfolgreich HV-programmiert.

von Mi N. (namnam)


Lesenswert?

vielen Dank für die zahlreichen Antworten...

Der Controller ist komisch.

Mit externen Takt konnte ich ihn programmieren

Setze ich ihnen auf
EXTENDED = 0xFF (valid)
HIGH = 0xDF (valid)
LOW = 0x62 (valid)

SELFPRGEN = [ ]
RSTDISBL = [ ]
DWEN = [ ]
SPIEN = [X]
WDTON = [ ]
EESAVE = [ ]
BODLEVEL = DISABLED
CKDIV8 = [X]
CKOUT = [ ]
SUT_CKSEL = INTRCOSC_8MHZ_6CK_14CK_64MS_DEFAULT

dann erreiche ich ihnen auch ohne externen Takt

Entferne ich CKDIV8 dann erreiche ich ihn nicht mehr. Die Signatur hat 
sich von 0x1E930C auf 0x020100 geändert

EXTENDED = 0xFF (valid)
HIGH = 0xDF (valid)
LOW = 0xE2 (valid)

SELFPRGEN = [ ]
RSTDISBL = [ ]
DWEN = [ ]
SPIEN = [X]
WDTON = [ ]
EESAVE = [ ]
BODLEVEL = DISABLED
CKDIV8 = [ ]
CKOUT = [ ]
SUT_CKSEL = INTRCOSC_8MHZ_6CK_14CK_64MS_DEFAULT

So ein verhalten hatte ich noch nie. Ich habe einen zweiten ATtiny84A, 
der das Ändern von CKDIV8 problemlos mit macht

Kennt das jemand und hat einen Tipp.

von S. Landolt (Gast)


Lesenswert?

Eine "zerschossene" Signatur hatte ich bei AVR8 zwei- oder dreimal, 
Ursache war immer eine mangelhafte Masseverbindung zu Stromversorgung 
und/oder Programmiergerät.

von S. Landolt (Gast)


Lesenswert?

PS:
Eines der Exemplare ist ein ATmega16A-PU von (1339), zeigt als Signatur 
FFFFFF, versieht aber ansonsten seit Jahren seinen vorgesehenen Dienst 
anstandslos.

von Peter D. (peda)


Lesenswert?

Mi N. schrieb:
> Entferne ich CKDIV8 dann erreiche ich ihn nicht mehr.

Dann setze mal den ISP-Takt runter. Es kann sein, daß Du das 
Kalibrationsbyte überschrieben hast. Lies es mal von einem anderen AVR 
aus der gleichen Charge aus und schreib es rein. Dann sollte er wieder 
mit ~8MHz laufen.

von Mi N. (namnam)


Lesenswert?

S. Landolt schrieb:
> Eine "zerschossene" Signatur hatte ich bei AVR8 zwei- oder dreimal,
> Ursache war immer eine mangelhafte Masseverbindung zu Stromversorgung
> und/oder Programmiergerät.



Der Atmel läuft wieder. Und das ohne HV-Programming
Ich hatte eine kalte Lötstelle (Übergangswiderstand 30k) an der 
Spannungsversorgung vom ISP

Die Umwelt und ich sind überglücklich, dass ich den Controller nicht 
wegwerfen muss :)


Ich danke euch allen für euren Beistand...

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.