"Bootloader" für ATTiny2313

#370926
Lesenswert?

Erstmal vorneweg, ist kein richtiger "Bootloader", dafür fehlem dem
ATTiny2313 ein paar fuses (BOOTSZ...)
Aber "Bibliothek zum Flash-Update über RS232" klingt blöd, also
"bootloader"...

Ist halbwegs kompatibel zum "butterfly" und "avr109" Modus vom
avrdude, "avr910" modus könnt nach ein paar kleinen Anpassungen auch
gehen.

Ist leider recht groß geraten, braucht so in etwa das halbe flash auf.
(Wenns jemand optimieren will, gerne g. Ich hab aufgehört als es
zusammen mit meiner Applikation gepasst hat, die Timeout-Funktionen für
den Seriellen Port sind bei der Optimierung leider schon rausgeflogen)

Vielleicht kann ja noch jemand das Teil brauchen, viel Spass damit,

/Ernst
Angehängte Dateien:
#370927
Lesenswert?

Ich erlaube mir mal einen Hinweis auf einen anderen Bootloader für
tiny2313 samt Java Client. Damit hat man dann noch 3/4 Flash frei:
http://web.media.mit.edu/~ladyada/techproj/Atmex/

Zitat Kurzbeschreibung Projekt:
" Atmex is a prototyping system for someone who is just beginning to
work with microcontrollers. It uses the Atmel ATtiny2313 chip, an
inexpensive but reasonably powerful microcontroller which has
bootloading capability. The Atmex board has a serial port so that the
user can easily upload new code without the use of a microcontroller
programmer (such as the STK-500, AVRISP, etc). Programming software
open source and is written in java so it can run on any computer. At a
total cost of less than $10, each project can be dedicated its own
board."
#370928
Lesenswert?

Schaut auch nicht schlecht aus, der Code.
Das Protokoll scheint sogar avr109 kompatibel zu sein (Soweit ichs
durchgeschaut hab, probiert hab ichs nicht)

Seltsam ist nur sein Speicherlayout, der Tiny hat 2k flash, also von
0x0000 bis 0x0800, und der Bootloader ist defaultmässig im Bereich
0x02FF bis 0x3FF? Oder zählt der dort verwendete Assembler den
Flash-Speicher wordweise?

Hätt ich mir auf jedenfall ein wenig Arbeit sparen können, mit ein paar
Anpassungen hätts der auch getan.

/Ernst
#847886
Lesenswert?

Das "AVR109" Protokoll kommt aus der Application Note 109 von Atmel,
"AVR109: Self Programming".
Gibts hier: 
http://www.atmel.com/dyn/resources/prod_documents/doc1644.pdf

Programmieren geht z.B. mit avrdude, "avr109", oder "butterfly" als 
Prommer auswählen.

Inzwischen hat PeDa seinen universal-Bootloader hier reingestellt, der 
ist vermutlich besser (kleiner) als meiner:

Beitrag "UART Bootloader ATtiny13 - ATmega644"
#849354
Lesenswert?

Hi,

den kleinsten den ich für die Tiny's kenne kommt mit 48 Befehlen aus und 
funktioniert mit einem beliebigen I/O-Pin. Im asm Header steht:

48-instruction one-wire bootloader for ATTiny13/24/45/85 von Kasper 
Pedersen.

Die Anbindung erfolgt über Widerstand und Zenerdiode am seriellen Port 
des PCs in Verbindung mit einem kleinen Programm. Der Bootloader liegt 
immer am Speicherende des Tiny's. Der Sprungvector, z.B. vom WinAVR wird 
beim Einlesen eines neuen Programmes autom. angepasst. Habe das Teil 
seit ca. 2 Jahren bei Tiny13, 44, und 45 erfolgreich im Einsatz.

Gruss
Ingo
Gast #872003
Lesenswert?

Hallo CGO,

danke, vermutlich hatte ich nur nicht genug gedult.

Habe festgestellt das google Ergebenisse auf jedem PC anders 
sind...möchte nicht wissen wie die das anstellen.

Danke, werde das jetzt auch meinen Bedürfnissen anpassen, da ich neben 
Update auch noch geziehlte EEprom Byte mit Parametern belegen 
möchte....die der Anwender dann über ein vereinfachtes Interface vom PC 
übertragen kann

Gruß + Danke

Oliver
#872346
Lesenswert?

kkpmo wrote:
> Habe festgestellt das google Ergebenisse auf jedem PC anders
> sind...möchte nicht wissen wie die das anstellen.

Das liegt daran, daß google erst mal eine Lastverteilung macht, d.h. 
Anfragen von unterschiedlichen PCs landen auch bei google auf 
unterschiedlichen Rechnern. Und dann arbeiten die Rechner bei google mit 
allen möglichen Tricks zur Geschwindigkeitssteigerung, u.a. spieln da 
lokale Zwischenspeicher eine Rolle.
Auch die Anzahl der gefundenen Ergebnisse ist eher ein guter Schätzwert 
und kein genau gezählter Wert...
#1004489
Lesenswert?

Ingo Stahl wrote:
> Genau,
> in dem Paket ist auch der Quellcode der PC Seite (Delphi) enthalten und
> ein Tool um die erste Anwendung mit dem Bootloader als HEX Datei
> zusammenzusetzen . Mittlerwweile habe ich PC und Atmel Seite etwas an
> meine Bedürfnisse angepasst.
> Gruss Ingo
Kannst du deine Anpassungen hier posten?
Ich komme mit der Combine.exe nicht zurecht.
Danke!
#1103060
Lesenswert?

Hallo Rudi,
habe leider damals (wegen Urlaub) Deine Anfrage übersehen.
An der Combine.exe habe ich nichts gemacht. Die Atmel Seite habe ich 
noch auf andere Typen erweitert und beim PC-Programm habe ich die 
Funktionalität nicht geändert, sondern nur die Bediener-Oberfläche etwas 
angepasst.
Benötigst Du noch die Info noch?

Gruß Ingo
#1611091
Lesenswert?

Hallo,

wenn jemand noch sucht
habe Tiny10 und Tiny13MMU in x_hundert an meinem Lager

Einzelstücke 1 Euro ab 20 Stück 0,80 Euro + Porto

Suche noch jemand der hilft den One Wire Bootloader 
Beitrag ""Bootloader" für ATTiny2313"


;
;  Descripion           48-instruction one-wire boot
;                       loader for ATTiny13/24/45/85

So zu erweitern das er auch mit dem neuen Tinys läuft. (5/10)

Grüße

Oliver

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