avrdude findet Attiny2313a nicht mehr

Gast #6923691
Lesenswert?

Hallo,

scheinbar habe ich einen Attiny2313A über eine falsche Fuse-Setting 
zerschoßen. Aber vielleicht ist der Controller noch zu retten oder 
jemand von Euch kann mir sagen, was ich falsch gemacht habe.

Hier mein Vorgehen:
Ich will einen Attiny2313A mit einem externen Quarz mit 16MHz betreiben. 
Dafür habe ich zunächst die Fuse-Settings geändert. Auf 
https://www.engbedded.com/fusecalc/ habe ich den Attiny2313A ausgewählt 
und "Ext. Clock; Start-up time 14CK+65ms" ausgewählt und "Divide Clock 
by 8 internally" deaktiviert.

Damit habe ich folgenden Wert für die Low Fuse erhalten: 0xE0. Die 
anderen Fuses bleiben auf den Default-Werten. Anschließend habe ich die 
LFuse über avrdude und einen USBasp (so einen: 
https://www.roboter-bausatz.de/p/usbasp-avr-programmer?sPartner=8&gclid=EAIaIQobChMImLmP2oaH9QIVjeR3Ch0reABTEAYYAiABEgK90PD_BwE) 
programmiert:
1
root@x55u:/home/johannes# avrdude -c usbasp -p t2313 -U lfuse:w:0xe0:m
2

3
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
4
avrdude: AVR device initialized and ready to accept instructions
5

6
Reading | ################################################## | 100% 0.01s
7

8
avrdude: Device signature = 0x1e910a (probably t2313)
9
avrdude: reading input file "0xe0"
10
avrdude: writing lfuse (1 bytes):
11

12
Writing | ################################################## | 100% 0.01s
13

14
avrdude: 1 bytes of lfuse written
15
avrdude: verifying lfuse memory against 0xe0:
16
avrdude: load data lfuse data from input file 0xe0:
17
avrdude: input file 0xe0 contains 1 bytes
18
avrdude: reading on-chip lfuse data:
19

20
Reading | ################################################## | 100% 0.00s
21

22
avrdude: verifying ...
23
avrdude: 1 bytes of lfuse verified
24

25
avrdude: safemode: Fuses OK (E:FF, H:DF, L:E0)
26

27
avrdude done.  Thank you.

Das hat dann auch soweit funktioniert. Wenn ich jetzt aber den Chip auch 
nur mit den avrdude erkennen möchte, bekomme ich folgende Fehlermeldung:
1
root@x55u:/home/johannes# avrdude -c usbasp -p t2313 -F
2

3
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
4
avrdude: error: program enable: target doesn't answer. 1
5
avrdude: initialization failed, rc=-1
6
avrdude: AVR device initialized and ready to accept instructions
7
avrdude: Device signature = 0x50f698
8
avrdude: Expected signature for ATtiny2313 is 1E 91 0A
9

10
avrdude done.  Thank you.

Kann mir hier wer weiterhelfen? Was habe ich falsch gemacht? Passt die 
Fuse Setting nicht? Ist der Controller noch zu retten?

Viele Grüße,
Johannes
Persönliche Seite #6923719
Lesenswert?

Johannes schrieb:
> Ich will einen Attiny2313A mit einem externen Quarz mit 16MHz betreiben.
> Dafür habe ich zunächst die Fuse-Settings geändert. Auf
> https://www.engbedded.com/fusecalc/ habe ich den Attiny2313A ausgewählt
> und "Ext. Clock; Start-up time 14CK+65ms" ausgewählt

Der ATTiny ist jetzt auf externe Taktquelle (Quarzoszillator) ge*fused.
Das war sicherlich nicht das, was Du wolltest, vermutlich eher "Ext. 
Crystal/Resonator".
Da hilft, einen Takt (z.B. 1MHz) von einer externen Quelle an den 
Takteingang zu legen. Dann hat man wieder Zugriff.
Gast #6923720
Lesenswert?

Johannes schrieb:

> Hier mein Vorgehen:
> Ich will einen Attiny2313A mit einem externen Quarz mit 16MHz betreiben.
> Dafür habe ich zunächst die Fuse-Settings geändert. Auf
> https://www.engbedded.com/fusecalc/ habe ich den Attiny2313A ausgewählt
> und "Ext. Clock; Start-up time 14CK+65ms" ausgewählt und "Divide Clock
> by 8 internally" deaktiviert.

Das war falsch. "Ext. Clock" meint: Einspeisung eines externen Taktes. 
Das ist was anderes als der Betrieb eines Quarzes.

Allerdings ist damit auch der Ausweg vorgezeichnet: lege einfach 
tatsächlich einen externen Takt an, dann kannst du das Ding erstmal 
wieder erreichen und auf die korrekte Einstellung für einen Quarz 
umprogrammieren.
Gast #6923736
Lesenswert?

Hallo c-hater und  S. Landolt,

danke für Euere Antworten. Jetzt habe ich es verstanden.

Reicht da ein NE-555 als Taktgeber? Ich habe auch noch einen Attiny85 
herumliegen, den könnte man so fusen, dass er die Clock am Ausgang PB4 
ausgibt. Das sollte funktionieren, um den Attiny2313A wieder zum Laufen 
zu bringen, oder?

Nochmal danke und schönen Abend,
Johannes
Gast #6923828
Lesenswert?

Hallo,

mir ist es dank euren Rückmeldungen gelungen, den Attiny2313 wieder 
nutzbar zu machen. Ich habe einen Attiny85 als Taktquelle genutzt und 
konnte die Fuses des Attiny2313 dann entsprechend ändern.

Schönen Abend,
Johannes

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren