Ich habe mir meinen eigenen Bootloader geschrieben. Nach jedem Reset wartet er 0,2s, ob da ein bestimmtes Wort über die serielle reinkommt. Wenn nicht, dann startet er die Anwendung ab 0x0000. Dabei wird auch kein Portpin aktiv. Ohne Schlüsselwort bleibt der Bootloader komplett stumm, nur die zusätzlich Resetverzögerung von 0,2s verrät seine Anwesenheit. Die Baudratenerkennung erfolgt automatisch (1200...115200Baud). Bei den hohen Baudraten kann es aber zu Fehlern kommen, wenn man nicht die Standardfrequenzen wie 7,3728MHz usw. verwendet. Dann einfach eine niedrigere Baudrate nehmen. Zum Schnellprogrammieren habe ich mir ein Kommandozeilentool geschrieben, damit man es bequem im Make-File oder in der Compile-Batch mit aufrufen kann. Nach dem Aufruf sendet das Tool ständig das Paßwort an den ATMega, bis der antwortet. Also erst das Tool starten und dann den Resettaster drücken, sonst sind die 0,2s ja vorbei. Bei 115200Baud ergeben sich folgende Programmierzeiten: 15kB (ATMega16): 2,8s 7kB (ATMega8): 1,5s Für den Bootloader werden 512Worte belegt, deshalb die 1kB weniger. Der Bootloader programmiert auch nur Pages, in denen sich was geändert hat. Falls jemand Interesse hat, kann ich es ja mal in die Codesammlung stellen sobald das wieder möglich ist. Peter
Gast
#53206
Na klar, rein damit ! Würd mich interessieren wie du das gemacht hast !
Gast
#53207
Moin peter ich habe auch interesse !!! wenn das mit der code sammlung nicht geht, könntest du mir vielleicht die source e-mailen, das währe super nett (john@holy-gamers.de) gruß john