Forum: Mikrocontroller und Digitale Elektronik Attiny45 - Fehler beim Bootloader initialisieren


von Robert (Gast)


Lesenswert?

Hallihallo!

Ich habe seit einpaar Tagen das ELO Lernpaket Mikrocontroller mit dem 
ATtiny13. Gelötet war alles perfekt und die ersten programme die ich 
schrieb haben einwandfrei funktioniert. Ich wollte am nächsten Tag 
weitermachen und siehe da - Ich konnte meinen ATtiny13 nichtmehr 
flashen! Bootloader und RC-Oszillator konnte ich initialisieren aber 
keine Programme mehr überspielen.

Also bin ich zu Conrad gefahren wo ich glücklicherweise einen sehr 
Erfahrenen Ansprechpartner gefunden hab, und der sagte mir das er jetzt 
auch nicht weiß warum es aufeinmal so ist =/
naja, da er keine tiny13 mehr hatte gab er mir einen tiny45 und erklärte 
mir, das er vom aufbau identisch ist nur das er einige verbesserungen 
hat und ich den Stackpointer zuerst noch initialisieren muss.
Das wäre jetzt auch nicht das problem. Jedoch habe ich den tiny45 voller 
Vorfreude an mein Board aus dem Lernpaket angeschlossen, und ich kann 
den bootloader nicht initialisieren! =/
Ich benutze das Programm LPmikros aus dem Paket und ich habe auch schon 
das update gezogen - ohne Erfolg.
Auch mit dem AVR Prog Tool kann ich nichts auslesen oder den Controller 
erreichen =(

Liegt es vllt an der Schnittstelle? Es ist eine RS 232 Verbindung mit 
Konfiguration auf COM1 Port.
Also eigentlich müsste doch alles funtionieren?
Könnt ihr mir vllt weiterhelfen?

Danke schonmal im voraus!


Robert

von Peter D. (peda)


Lesenswert?

Robert schrieb:
> naja, da er keine tiny13 mehr hatte gab er mir einen tiny45 und erklärte
> mir, das er vom aufbau identisch ist nur das er einige verbesserungen
> hat und ich den Stackpointer zuerst noch initialisieren muss.

Nein, die neuen AVRs setzen den Stack automatisch richtig.

Ich kenne Dein Board nicht, hat es denn einen Programmer drauf, damit 
man den Bootloader und die richtigen Fuses reinbrennen kann?
Ab Werk sind die AVRs nämlich leer (kein Bootloader drinne).


Peter

von Robert (Gast)


Angehängte Dateien:

Lesenswert?

Nein das Board hat keinen eigenen Programmer.
Deswegen habe ich ja gefragt ob es noch iwie möglich ist, den Bootloader 
einzubrennen =/


Allerdings weiß ich das dieser Attiny45 keine automatische 
Stackinitialisierung hat.
Schau mal ins Datenblatt^^

Robert

von Sascha W. (sascha-w)


Lesenswert?

Robert schrieb:
> Nein das Board hat keinen eigenen Programmer.
> Deswegen habe ich ja gefragt ob es noch iwie möglich ist, den Bootloader
> einzubrennen =/
nein, du brauchst z.B. einen ISP Programmer

Warscheinlich hast du aus versehen deinen ATtiny13 komplett gelöscht, 
und deshalb kannst du den Bootloader nicht mehr erreichen.


Sascha

von Peter D. (peda)


Lesenswert?

Robert schrieb:
> Allerdings weiß ich das dieser Attiny45 keine automatische
> Stackinitialisierung hat.
> Schau mal ins Datenblatt^^

Schau besser Du mal, Seite 11:

4.6.1 SPH and SPL — Stack Pointer Register
Initial Value: RAMEND

Das ist ein gültiger Wert.

Nur die älteren haben ihn beim Reset auf 0x0000 gesetzt, was natürlich 
völliger Blödsinn ist, hatte ich den Atmel-Leuten schon 1997 gesagt. 
Haben dann doch ganz schön lange gebraucht, eh sie das implementiert 
haben.


Peter

von Peter D. (peda)


Lesenswert?

Sascha Weber schrieb:
> Warscheinlich hast du aus versehen deinen ATtiny13 komplett gelöscht,
> und deshalb kannst du den Bootloader nicht mehr erreichen.

Dann ist aber der Bootloader schrottig programmiert.
Ein ordentlicher Bootloader sollte eine Selbstzerstörung immer 
verhindern.

Obwohl der ATtiny13 keine Bootsektion hat, ist das möglich. Man muß nur 
beim Löschen eine bestimmte Reihenfolge einhalten (von oben nach unten) 
und dann als nächstes den Sprung an Adresse 0x0000 zum Bootloader 
restaurieren.


Peter

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.