www.mikrocontroller.net

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


Autor: Robert (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Robert (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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

Autor: Sascha Weber (sascha-w)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht 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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.