Forum: Mikrocontroller und Digitale Elektronik STK500 Bootloader mit mehr als 115,2kBaud


von Markus (Gast)


Lesenswert?

Hi,
ist es möglich bei einem STK500 Bootloader und AVR Studio eine höhere 
Baudrate einzustellen? Am STK500 ist im AVR Studio die Baudrate auf 
115,2k fixiert, ich bräuchte aber mehr

Gruß
Markus

von TravelRec. (Gast)


Lesenswert?

Mehr wofür? Die meisten internen COM-Ports können eh´ nicht mehr, 
lediglich USB->Seriell Adapter sind schneller. Und was ist ein 
STK500-Bootloader?

von JojoS (Gast)


Lesenswert?

ein Limit ist das Beschreiben des Flashs mit den Prozessor internen 
Befehlen, eine Page zu Schreiben dauert ein paar ms, siehe Datenblatt. 
Das geht deutlich langsamer als über einen ISP Adapter.

von Markus (Gast)


Lesenswert?

Dem Flash ist es doch egal woher die Daten kommen. Der Weg ist zum 
Schluß der gleiche. Zuerst ins Page Ram und von da ins Flash. Wenn ein 
Bootloader mit 230kBaud arbeiten könnte würde er denk ich sicher davon 
profitieren

von Peter D. (peda)


Lesenswert?

Markus wrote:

> Dem Flash ist es doch egal woher die Daten kommen. Der Weg ist zum
> Schluß der gleiche. Zuerst ins Page Ram und von da ins Flash. Wenn ein
> Bootloader mit 230kBaud arbeiten könnte würde er denk ich sicher davon
> profitieren

Ja, das mit dem Denken ist immer so eine Sache.
Wenn es dann 19s statt 20s dauert, ist das nicht gerade ein großer 
"Profit".

Ich hatte zwischen 57,6k und 115,2k kaum noch nen Unterschied, d.h. die 
Brennzeit domimierte.


Wenn es aber wirklich auf jede Sekunde ankommt, könnte man ja den 
Bootloader so schreiben, daß er schon eine Page brennt, während noch die 
nächsten empfangen werden.


Peter

von Markus (Gast)


Lesenswert?

Wo ist denn dann der Unterschied in der Brennzeit zwischen Bootloader 
und ISP? Ich bin ja nicht lernresistent und lasst mich gern vom 
Gegenteil überzeugen ;)
Nur im Moment fällt mir keine Begründung ein

von Peter D. (peda)


Lesenswert?

@Markus,

lt. Datenblatt sind die reinen Brennzeiten identisch.

Unterschiede ergeben sich durch das Bootloaderprotokoll und die 
Software.

Hast Du mal Beispielzahlen ?


Peter

von Markus (Gast)


Lesenswert?

Beispielzahlen für Programmierzeiten? Nein, griffbereit hab ich jetzt 
nichts.

Ich werd erstmal mit dem STK500 Bootloader spielen. Wenn ich da 
durchblicke schau ich mal nach anderen Möglichkeiten

von TravelRec. (Gast)


Lesenswert?

Was zum Geier ist ein STK500 Bootloader?!

von Markus (Gast)


Lesenswert?

Ein Bootloader der kompatibel zum STK500 Protokoll ist und dadurch mit 
dem AVR Studio zusammenarbeitet.
Wenn Du Dir jetzt noch die Frage beantwortest was ein Bootloader und das 
STK500 ist haste alle Puzzelteile zusammen ;)

von TravelRec. (Gast)


Lesenswert?

Aaah - jetzt (Glühbirne über dem Kopf). Einen Bootloader an sich kenne 
ich, habe auch schon einen programmiert und das STK500 steht bei mir im 
Regal - also keine weiteren Fragen diesbezüglich. Der Begriff 
STK500-Bootloader war mir insofern nicht geläufig, da ich nicht wußte, 
daß es ihn gibt, schon gar nicht frei verfügbar - wegens Verschlüsselung 
und so...

von Markus (Gast)


Lesenswert?

Verschlüsselt is da gar nix. Das Protokoll vom AVR Studio ist offen. 
Kann man bei Atmel runterladen

von TravelRec. (Gast)


Lesenswert?

Okay, dann gucke ich mal. Ich dachte nur, die Firmware des STKs wäre 
verschlüsselt, nicht? Demzufolge müßte der Bootloader sie doch auch 
entschlüsseln können. Und wenn man Einblick in den Bootloader hat, macht 
doch das Verschlüsseln gar keinen Sinn...

von Peter Z. (Gast)


Lesenswert?

@TravelRec.
Er will ja nicht die Firmware des STK's flashen sondern wahrscheinlich 
einen Controller den man ins STK steckt und auf dem ein Bootloader drauf 
ist der das STK500 Protokoll unterstützt...

von Markus (Gast)


Lesenswert?

Ich brauch das STK500 gar nicht. Ich hab blos Controller in denen ein 
Bootloader steckt der die gleiche Sprache spricht wie das STK500 und 
sich desshalb mit dem AVR Studio unterhalten kann.

Hintergrund is der: ich möchte ein stimmiges Paket aus Controller und 
Entwicklungsumgebung (WinAVR, AVR Studio) schnüren und möchte dabei 
weitestgehend auf vorhandene Standards bauen. Da es sich bei dem 
Controller auch um einen Mega2560 handeln kann und ein Download bei 
115,2k da doch eine Weile dauert hatte ich halt gehofft man könne das 
AVR Studio davon überzeugen etwas zügiger zu arbeiten. Aber anscheinend 
muß ich mit den 115,2k leben.

von JojoS (Gast)


Lesenswert?

zumindest in den Dialogen kann man nichts anderes Einstellen für die 
Bitrate, vielleicht aber in einer der Konfigfiles oder 
Registryeinstellungen zum AVR Studio. Ich hatte da auch mal das 
Kommandotimeout gesucht, aber nicht gefunden.
Rechnerisch komme ich beim 2560 auf eine Brennzeit von 1024 Pages * 4 ms 
= rund 4s. Die Übertragung dauert ca. 262.000 * 0,09ms = 24s. Bei 
Doppelter Bitrate könnte man also von 28s auf 16s kommen.
Mehr dürfte es bringen wenn man seine Applikation aufteilen kann um bei 
einer Änderung nicht immer alles neu flaschen zu müssen. Bei 256k sind 
sicher viele konstante Tabellen mit drin die man an eine feste Adresse 
linken könnte.

von Peter D. (peda)


Lesenswert?

Sach mal, was brauchen denn diese Monsterprogramme zum Compilieren für 
Zeit ?

Du hast noch das Löschen vergessen, also sinds etwa 10s reine Brennzeit.

Ich glaube auch nicht, daß Du bei 115,2k auf nur 34s kommst.
Da ist bestimmt noch einiges an Rechenzeit im Bootloader nötig, um die 
256kB umzuschaufeln.


Peter

von JojoS (Gast)


Lesenswert?

stimmt, die Löschzeit fehlte noch. Und noch ein paar Prozent 
Protokolloverhead.
Ich kenne die Anwendung von M. auch nicht, aber ich kann mir gut 
vorstellen das man soviel Speicher mit Texten oder Tabellen vollkriegt.

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.