Forum: Mikrocontroller und Digitale Elektronik attiny45 lässt sich nicht mehr programmieren (arduino isp)


von tommi8372 (Gast)


Lesenswert?

Hallo,
ich habe das Problem, dass sich meine beiden attiny45 nicht mehr mit dem 
Arduino micro programmieren lassen. Es erscheint die fehlermeldung:

Yikes!  Invalid device signature.         Double check connections and 
try again, or use -F to override         this check.Fehler beim Brennen 
des Bootloaders.


Vor wenigen wochen hat das ganze noch einwandfrei funktioniert. Das 
komische ist aber, dass sich ein attiny2313 einwandfrei programmieren 
lässt, wodurch ich die kabel zum attiny und den arduino als fehlerquelle 
eigentlich ausschliessen kann oder?
Ich habe die Schaltung auf einem Breadboard aufgebaut.
Kann es also sein dass BEIDE attiny45 defekt sind? Ich habe versucht 
einen bootloader mit 8mhz und 1mhz zu brennen, was aber ebenfalls nicht 
funktioniert. Einen Sketch kann ich ebenfalls nicht hochladen.
Vielen dank im voraus.

von holger (Gast)


Lesenswert?

>Ich habe die Schaltung auf einem Breadboard aufgebaut.

Mach mal ein Foto.

von tommi8372 (Gast)


Angehängte Dateien:

Lesenswert?

Hab mal ein Bild gemacht.
Allerdings MUSS das ganze richtig verkabelt sein, denn wenn ich den 
attiny2313 an stelle des attiny45 einsetze, wobei ich nur das schwarze 
Massekabel umstecken muss funktioniert alles.

von tommi8372 (Gast)


Lesenswert?

Der resetpin wurde im arduino isp scetch auf pin2 geändert, weshalb 
dieser auf dem bild mit pin2 anstatt pin10 verbunden wurde.

von Dieter S. (Gast)


Lesenswert?

Bedingt durch einheitliche Farbe der Datenleitungen ist ein Prüfung 
schwierig.
Ich vermute einen schlechten Kontakt der Leitungen im Steckbrett.
Wenn du öfter die Attinys flashst, warum erstellst du dir nicht ein 
kleines Board (Lochraster) dafür. Da gibt es zahlreiche Vorschläge.

von tommy_v (Gast)


Lesenswert?

Trotz 2MB grossem Bild kein Abblockkondensator erkennbar ;-)

Mach da mal einen 100nF Keramik-Vielschicht dran.

siehe:
https://www.mikrocontroller.net/articles/Kondensator#Entkoppelkondensator

von tommi8372 (Gast)


Lesenswert?

Was genau meinst du mit einem abblockkondensator? Ist das nicht der 10μF 
Elko zw. GND und Reset des arduino? Den sieht man eigentlich auf dem 
Bild. Die verbindungen auf dem Steckbrett sind alle in Ordnung, ich habe 
diese schon mehrfach durchgemessen und wenn ich meinen 2313 programmiere 
funktioniert ja auch alles.

von Nil (nilsnilss)


Lesenswert?

Läuft das Programm, das du auf die Tiny45 gebrannt hast? Oder machen die 
einfach gar nichts mehr?

: Bearbeitet durch User
von Dieter S. (Gast)


Lesenswert?

tommi8372 schrieb:
> Was genau meinst du mit einem abblockkondensator?

Lies dir doch einfach mal den Link von tommy_v durch, da ist alles genau 
beschrieben.

Der Elko hat nur den Sinn, dass der Atmega nicht resettet.

Wenn du den "Bootloader" flashst, machst du es auch mit "Sketch - 
Hochladen mit Programmer" ?

von Stefan F. (Gast)


Lesenswert?

Wenn mir sowas passiert, dann hat immer einer dieser beiden Ursachen:

1) Wackelkontakt oder Kabelbruch zum Programmer. Findet man mit LED's 
oder einem Logiktester schnell heraus.

2) Die Taktfrequenz wurde per Fuse oder Programmcode herabgesetzt und 
nun "redet" der Programmer zu schnell. Passiert selten auch bei 
Programmierfehlern, wenn das Programm amok läuft.

Bei meinem Programmieradapter kann mit die ISP Takfrequenz einstellen. 
Im Zweifelsfall nehme ich eine sehr niedrige Frequenz. Bedenke, dass die 
niedrigste mögliche Taktfrequenz mit internem R/C Oszillator 128 kHz / 
256 ist und die ISP Frequenz nochmal weniger als 1/4 davon sein muss. 
Also im Extremfall 125 Hz !

Das komische ist: Wenn das Programm auf dem µC die Taktfrequenz mittels 
Prescaler herabgesetzt hat und dann der Programmiervorgang mit 
aktivieren der Reset-Leitung beginnt, wechselt der Mikrocontroller nicht 
auf die "normale" Taktfrequenz, sondern er bleibt langsam.

Wenn man aber die Reset Leitung fest mit GND verbindet (anstatt mit dem 
Programmer) und dann erst die Stromversorgung einschaltet, dann startet 
er mit der "normalen" Frequenz und bleib auch dabei.

Wobei die "normale" Frequenz von den Fuses vorgegeben wird.

Ich hoffe, das hilft Dir ein wenig.

> Trotz 2MB grossem Bild kein Abblockkondensator erkennbar

Ja, ist nicht schön aber warscheinlich nicht die Problemursache.

von tommi8372 (Gast)


Lesenswert?

Hallo, erstmal vielen dank für eure Hilfe!

Nils F. schrieb:
> Läuft das Programm, das du auf die Tiny45 gebrannt hast? Oder
> machen die einfach gar nichts mehr?

Die beiden Attinys haben einfach gar nichts mehr gemacht.

Dieter S. schrieb:
> Wenn du den "Bootloader" flashst, machst du es auch mit "Sketch -
> Hochladen mit Programmer" ?

Nein ich gehe in der Arduino IDE auf werkzeuge -> Bootloader brennen

@Stefan Us:
Dank deinem beitrag habe ich einen der beiden Attinys wieder zum laufen 
gebracht!

Im arduino Isp sketch befand sich ein alternativer SPI_Clock für attinys 
mit 128Khz. Diesen habe ich verwendet und den Sketch auf den Arduino 
hochgeladen, dann den ersten Attiny genommen und es hat wieder 
funktioniert! Ich konnte den Bootloader brennen und ein Programm 
hochladen. Beim zweiten Attiny sah das ganze aber anders aus. Es 
funktioniert immer noch nichts (weder bootloader brennen noch programm 
hochladen). Ich habe hier die einzelnen Datenleitungen mit einer led 
überprüft und habe bemerkt, dass beim 2. Attiny bei der Miso-Leitung die 
led nicht blinkt während dem brennen des bootloaders. Beim 1. Attiny 
aber schon (da funktioniert es ja auch).
Kann es also sein dass der 2. Attiny wirklich defekt ist?

von Stefan F. (Gast)


Lesenswert?

> Kann es also sein dass der 2. Attiny wirklich defekt ist?

Kann sein.

Kann aber auch sein, dass 128kHz noch viel zu schnell ist. Versuche es 
mit 120 Hz.

Kann auch sein, dass du die Taktquelle mit einem High-Voltage 
Programmieradapter korrigieren kannst.

Wenn dein Programmer das beides nicht kann, kaufe einen besseren oder 
schmeiß den Chip weg. Ist wahrscheinlich besser, solange Dir das nicht 
öfters passiert.

von tommi8372 (Gast)


Lesenswert?

Habs jetzt mal mit 120Hz versucht. Jetzt kommt aber die Meldung Falscher 
Mikrocontroller gefunden.
Device signature = 0xff7fff
Expected signature for Attiny45 is 1E 92 06

von Stefan F. (Gast)


Lesenswert?

Immerhin etwas. Versuche noch weniger, 60 Hz oder so.

von Forist (Gast)


Lesenswert?

tommy_v schrieb:
> Trotz 2MB grossem Bild kein Abblockkondensator erkennbar ;-)

Was das Samsung Galaxy ohne Nachdenken so her gibt :-(

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.