PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : welchen Bootloader verwendet ihr?



Marco78
22.04.2005, 20:01
Ich habe den Bootloader in ein M16 geflasht und nach jedem Reset wird das eigentliche Programm erst nach etwa 20 Sekunden gestartet wenn kein neues Programm geflasht wird.
Kann diese Zeit irgendwie eingestellt werden (wenn ja, wie?) oder ist sie von der Taktfrequenz abhänig?

Ich hab das ganze mal in eine Umfrage umgewandelt.

Zum Thema Bootloader habe ich im Forum nur wenig hilfreiches gefunden. Vielleicht kann man hier ja mal einiges sammeln?!

Marco78
14.05.2005, 23:00
Es ist kaum zu glauben, das niemand ein Bootloader verwendet, bzw nicht weiss, wie Megaload funktioniert.

Und das obwohl das Wort bootloader 55 Suchtreffer bringt!

chr-mt
15.05.2005, 11:57
Hi,
ich denke mal, daß Megaload so lange braucht, um alle Baudraten "durchzuprobieren", soweit ich das verstehe.
Kommt wohl darauf an, was für ein Hex-File du verwendest.
Ich habe leider auch nur die Version, die so lange zum starten braucht.
Wäre auch daran interessiert, eine "Schnellstartversion" zu haben, bei der die Baudrate festgelegt ist.

Gruß
Christopher

pebisoft
15.05.2005, 12:06
"es ist hier kein meinungsforschungsinstitut."
ich verwende ein und weiss wie er funktioniert.
mfg pebisoft

chr-mt
15.05.2005, 19:02
Hi,
So wie es aussieht muß man im Bootprog. nur den Teilerfaktor für die Baudrate fest einstellen (auf was ist halt die Frage, "25" ist als Beispiel vorgegeben), sowie den verwendeten chip.
Dann neu compilieren und fertig. So weit die Theorie ;)
Ich habe mir die Demo von ICCAVR runtergeladen und probiert das ganze zu compilieren.
Leider ohne Erfolg. (Kenne mich leider nicht mit c aus)
Ich bekomme die Fehlermeldung:
!ERROR file 'main.o': undefined symbol '_read_program_memory'
!ERROR file 'main.o': undefined symbol '_write_page'
!ERROR file 'main.o': undefined symbol '_fill_temp_buffer'

Vielleicht kann mir jemand ja erklären, was ich falsch mache?

Gruß
Christopher

pebisoft
15.05.2005, 20:12
ich weiss nicht was ihr dauernd neu compiliert. die daten sind für die avr doch schon fertig hier im download-forum. der ganze loader ist fertig programmiert. bei mir dauert es vom resetknopf drücken bis zum fertigen laden nur nur 4-8 sek (habe sogar nur 19200baud eingestellt).
der megaload macht auch keine baudratenprüfung.
ich habe version "megaload v3.0b7".
mfg pebisoft

Marco78
15.05.2005, 20:40
"es ist hier kein meinungsforschungsinstitut."
ich verwende ein und weiss wie er funktioniert.
Hey, wenndu mich nicht magst, dann mach es so wie in anderen beiträgen. Ignorie einfach meine Posts.
Was ist es hier denn?
Ein Forum?
Und Sinn und Zweck der Community?
Anderen zu helfen?
Ich weiss nicht, warum einige hier ihr Wissen mit aller Gewalt für sich behalten wollen?
Damit sie schlauer tun könn als andere?
Ich frage mich warum die Funktion Umfrage aktiviert ist wenn man sie nicht nutzen soll?

Warum soll jeder, der ein Bootloader such einen neuen Beitrag eröffnen?
Warum kann man nicht einen nehmen, wo mehrere Vorgestellt werden?
Und was bewiesen wäre: Es gibt schon zwei die Probleme mit Megaload haben. Sinn der Gemeinschaft sollte es dann sein, den Problemen auf den Grund zu gehen. Oder hab ich da was falsch verstanden?

Und genau der fertig compilierte MegaLoad aus dem Downloadbereich ist der, der bei mir immer eine Gedenkminute einlegt.

pebisoft
15.05.2005, 20:53
dann überprüf mal dein pc die einstellungen deines pc. der megaload und die hex-dateien für die avr sind in ordnung. wenn ich meinen megalaod auf 115tausend stelle ist er in 3 sekunden fertig vom reset drücken bis zum fertigladen. chr-mt macht da oben seine compiler-versuche.
es gibt hier im forum schon einen grossen "megaloadbeitrag" mit sehr vielen anregungen und vorschlägen.
mfg pebisoft

Marco78
15.05.2005, 21:00
Im Großen Megaloadbeitrag wurde meine Frage bis heute noch nicht beantwortet.

Das Problem ist nicht die Zeit die das aufspeilen benötigt. Ein M8 ist innerhalb weniger Sekunden randvoll.
Das Problem ist die lange Wartezeit, wenn ein Reset ausgeführt wird, aber kein Programm hochgeladen werden soll.
Ein M16 mit 12MHz wartet da bei mir etwa 40 sek. bis er das eigentliche Programm ausführt.

pebisoft
15.05.2005, 21:50
denn musste dein max auf dem board noch einmal durchchecken. vielleicht sind die 4 condensatoren nicht genau abgestimmt. der megalaod pendelt dann immer zwischen den übertragungswerten hin und her.
mfg pebisoft

Marco78
15.05.2005, 22:01
Danke, das ist ein guter Tipp.
Dann könnte es evtl dran liegen, das ich kein MAX232 habe, sondern die Pegelanpassung wie beim AVR910. Wobei, was macht es denn aus, wenn kein Kabel angeschlossen ist?
Was gibt der MAX232 denn zu MegaLoad zurück, wenn kein PC angeschlossen ist? Ich kann mir schon vorstellen, das er einige Zeit braucht bis er sich sicher ist das kein PC da ist. Aber 40 sek. finde ich für die Praxis unpraktisch.

pebisoft
15.05.2005, 22:11
schau nach, wenn du die bootloader-datei geladen hast ob unten alles mit 0 oder 255 beschrieben ist und am schluss tatsächlich die boot-datei liegt.
mfg pebisoft

Marco78
15.05.2005, 22:20
Ja, das ist der Fall. Ich glaube es waren vorne alles FFs (also 255). Und die letzten 2kB sind beschrieben.
Der Bootloader funktioniert ja auch. wenn ich was updaten will, fängt er nach etwa einer sek an und ist auch ruck zuck fertig mit hochladen.

chr-mt
16.05.2005, 10:55
wenn ich was updaten will, fängt er nach etwa einer sek an und ist auch ruck zuck fertig mit hochladen.
Ist bei mir genauso.
Was mich (und Marco, wenn ich das richtig verstehe) stört ist die lange Wartepause, wenn Megaload NICHT am uC hängt, der uC also "Stand Alone" läuft.
Dann vergeht vom Einschalten oder Reset eben eine recht lange Zeit.
Bei mir waren's so etwa 7 Sekunden.
In dieser Zeit probiert der Bootloader wohl mit dem PC Kontakt aufzunehmen und das mit verschiedenen Baudraten.
Erst nach dieser recht langen Wartezeit bricht der Bootloder die Kontaktversuche ab und startet das eigentliche Programm.
Am liebsten wäre mir, wenn man den Bootloader mit einem Pin aktivieren könnte.... dann würde das Hauptprogramm sofort starten, wenn der Pin nicht gesetzt wäre.

es gibt hier im forum schon einen grossen "megaloadbeitrag" mit sehr vielen anregungen und vorschlägen.
In dem Beitrag steht darüber leider nichts.

der megaload macht auch keine baudratenprüfung.
Ich zitiere mal aus dem Quellcode in der main.c

If you don't specify the baudrate divisor the bootloader
will automaticaly be in AutoBaudRate mode
Nochmal:
Anscheinend reden wir aneinander vorbei.
Es geht um Wartezeit, die der uC einlegt, wenn der PC NICHT angeschlossen ist.

Gruß
Christopher

pebisoft
16.05.2005, 10:58
im download-bereich (megaload) gibt es ein fusebit-beispiel als bild-abdruck.
ich vermute, das die fusebits nicht so eingestellt sind wie auf der abbildung beschrieben.
mfg pebisoft

chr-mt
16.05.2005, 11:15
Hi Pebisoft,
Startet dein uC nach dem Einschalten sofort, also ohne Wartezeit ?

Gruß
Christopher

stupsi
16.05.2005, 11:47
ich verwende zur Zeit keinen Bootloader, würde aber gern die Lösung wie im ASURO verwenden, weil mir die Infrarot-Übertragung sehr gefällt.
Wo gibt es diesen Bootloader oder ist Megaload dafür auch geeignet ?

Gruß Stupsi