Forum: Mikrocontroller und Digitale Elektronik ATTiny44 im STK500


von Horst A. (datafix)


Lesenswert?

Werte Kollegen,
ich hab gerade ein Problem bei dem ich nicht mehr weiter weiß und bitte 
um Euere Tips und Hilfe.
Studio 4.19, STK500 und Attiny44 bzw 44A.
Attiny richtig am ISP6 pin angeschlossen.
Bei einem "frischen" d.h. "neu aus der Schachtel" wird die Signature 
richtig gelesen, bei einem schon mal gelesenen kommt sofort ISP mode 
error.
Was mach ich denn falsch ?
Attiny2313 und 25 zeigen diesen Effekt nicht.
Danke schon mal im voraus
Horst

von BlaBla (Gast)


Lesenswert?

Horst A. schrieb:
> Attiny44 bzw 44A.

In meiner Beschreibung ist diese MCU nicht aufgeführt. Somit eventuell 
nicht unterstützt.

von BlaBla (Gast)


Lesenswert?

Irgendwann (aber nicht sicher) gab es mal ein Firmware-Update für den 
STK500, denn in der Beschreibung des STK505 wird der ATtiny44 explizit 
aufgeführt.

von BlaBla (Gast)


Lesenswert?


von HildeK (Gast)


Lesenswert?

Ich kann aus meiner Erfahrung nur berichten, dass ich mit dem Studio 
4.18 und dem STK500 den Attiny44 / 44A schon erfolgreich programmiert 
habe.
Da es für diese 14-poligen keinen Sockel auf dem STK500 gibt, muss ich 
es auf dem Steckbrett ausgeführt haben.
Wenn du die Tinys im eingebauten Zustand programmierst, solltest du die 
ISP-Leitungen und die Resetbeschaltung mal daraufhin überprüfen, was da 
sonst noch dran hängt.

Auffällig war damals nur ein Software-Issue: beim 44A war der 
'INT0_vect' in den Headern nicht definiert - nur beim Tiny44. Man musste 
den Bezeichner 'EXT_INT0_vect' nehmen ...
Nur deshalb erinnere ich mich noch, ist schon einige Jahre her 😀.

BlaBla schrieb:
> In meiner Beschreibung ist diese MCU nicht aufgeführt. Somit eventuell
> nicht unterstützt.
Doch wird unterstützt, nur nicht direkt im STK500, weil es keinen Sockel 
dafür gibt und deshalb steht auch nichts im STK500-Manual.
Das AVR-Studio kennt beide und über den Programmieradapter lassen sich 
beide programmieren, wenn du sie auf einen externen Adapter oder ein 
Steckbrett setzt.
Im STK500 Manual sind auch andere nicht aufgeführt: z.B. Tiny13, TinyX5 
oder TinyX6 bzw. TinyX61. Ich programmiere die alle auf dem STK500. Man 
muss lediglich zwei Brücken zwischen Port B und Port E für Reset und 
XTAL einsetzen.

BlaBla schrieb:
> Irgendwann (aber nicht sicher) gab es mal ein Firmware-Update für den
> STK500, denn in der Beschreibung des STK505 wird der ATtiny44 explizit
> aufgeführt.
Mein STK500 und dessen Software ist auf dem Stand von ca. 2008..2010. Es 
erfolgte direkt nach dem Kauf ein Softwareupdate und kein weiteres 
bisher.
Ein STK505 muss man sich deshalb nicht beschaffen. Ein passender Sockel 
und der ISP-Adapter auf einem Fädelkärtchen genügt auch.
Den Tiny26 (auch vom STK505 genannt) kann man auch direkt im STK500 
programmieren.

von c-hater (Gast)


Lesenswert?

HildeK schrieb:

> Mein STK500 und dessen Software ist auf dem Stand von ca. 2008..2010.

Ich staune, dass sich jemand mit sowas historischem noch im Detail 
auskennt.

STK500(v2)-Protokoll? Ja, das sollte man kennen. Aber die originale 
Hardware? Ich weiß nicht...

von abc (Gast)


Lesenswert?

> STK500(v2)-Protokoll?
Das ist wohl das "historische" serielle Protokoll.
Eher komisch, dass sich da niemand ueber die "Schnelligkeit" beklagt.

von HildeK (Gast)


Lesenswert?

c-hater schrieb:
> Ich staune, dass sich jemand mit sowas historischem noch im Detail
> auskennt.
> STK500(v2)-Protokoll? Ja, das sollte man kennen. Aber die originale
> Hardware? Ich weiß nicht...

Was heißt auskennen? Das Protokoll interessiert mich wenig und die HW 
tut nach wie vor ihre Aufgabe. Und für die kleinen übersichtlichen 
Progrämmchen ist das auch völlig ausreichend.

abc schrieb:
> Eher komisch, dass sich da niemand ueber die "Schnelligkeit" beklagt.

Bei Tiny 85 oder 861 mit 8k Flash (oft nur gering ausgelastet) spielt 
die Übertragungszeit ins Bauteil keine Rolle.

von abc (Gast)


Lesenswert?

> spielt die Übertragungszeit ins Bauteil keine Rolle.

Als Alternative zum USBASP habe ich hier einen AVR-ISP-Programmer
auf einem TI-Launchpad laufen. Das hat immerhin eine "normgerechte"
serielle Schnittstelle und implementiert die Kommandos des seriellen
Protokolls mit Hilfe eines MSP430.
Die Geschwindigkeit hat mich dabei auch nie gestoert.

von Horst A. (datafix)


Lesenswert?

Danke für die Hinweise.
Bin einen kleinen Schritt weiter.
Problem ist nicht die Verbindung zum STK500, sondern der Controller 
selber.
Wenn ich die CKDIV8 fuse ("frisch aus der Stange" = gesetzt) lösche ist 
per ISP kein Zugriff mehr möglich, auch nicht mit niedrigster ISP 
Taktrate.
Bleibt sie gesetzt läuft es. Hab ich so bei 2313 oder 25 nich nie 
gesehen.
Hab jetzt die Vorteiler im Programm entsprechend geändert, aber 
verstehen tu ich das Verhalten nicht.
Grüße
Horst

von HildeK (Gast)


Lesenswert?

abc schrieb:
> Das hat immerhin eine "normgerechte" serielle Schnittstelle
Normgerecht ist die am STK500 nicht. Das STK500 sollte ein DCE sein und 
auch so ausgeführt sein.

Horst A. schrieb:
> Wenn ich die CKDIV8 fuse ("frisch aus der Stange" = gesetzt) lösche ist
> per ISP kein Zugriff mehr möglich, auch nicht mit niedrigster ISP
> Taktrate.
Wunderlich, normalerweise geht es dann mit noch höheren ISP-Taktraten.
Aber wie geht es, die Fuse zu bearbeiten ohne Verbindung zum Tiny?

> Bleibt sie gesetzt läuft es. Hab ich so bei 2313 oder 25 nich nie
> gesehen.
Ja, kann ich bestätigen.

von S. Landolt (Gast)


Lesenswert?

> Wenn ich die CKDIV8 fuse ("frisch aus der Stange" = gesetzt) lösche

"Ich merkt' es wohl, vor Tische las man's anders."

> bei einem schon mal gelesenen kommt sofort ISP mode error.

Was gibt es sonst noch?

von S. Landolt (Gast)


Lesenswert?

> Wunderlich ...
Da liegt die Vermutung nahe, dass (zusätzlich?) eine falsche Fuse 
erwischt wird; RSTDISBL oder DWEN wären solche Kandidaten, wenn auch im 
'Fuse High Byte', aber wer weiß, vom Anwender oder der IDE. Was jetzt, 
da die Fuse-Bytes nicht mehr angefasst werden, natürlich nicht mehr 
passiert.

> nich nie gesehen
"Ick wunder mir über jarnischt mehr"

von Thomas G. (conquistador)


Lesenswert?

Letztes Jahr hatte ich eine Stange tiny44 vom freundlichen Chinesen, da 
waren 8 von 10 chips tot.
Sind Deine auch von Aliexpress?

von c-hater (Gast)


Lesenswert?

Thomas G. schrieb:

> Letztes Jahr hatte ich eine Stange tiny44 vom freundlichen Chinesen, da
> waren 8 von 10 chips tot.

You got, what you paid for...
No mercy...

von Ping (Gast)


Lesenswert?

CKDIV8 on/off interessiert keinen AVR-Progger.

Mit nicht vorhandenem "auf extern gesetztem" Takt kommen aber auch
"moderne" Progger NICHT klar.

Also erst gucken, dann FUSEn.

von Ping (Gast)


Lesenswert?

Zur Not hilft meist ein extern eingespeister Takt an CKI, PB0,
Pin 2.

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.