Forum: Mikrocontroller und Digitale Elektronik Bootloader in Bascom für mega8


von Malte S. (boeser-korn)


Lesenswert?

Hallo

 ich wollte mal ein Bootloader mal ausprobieren, funktioniert auch
 teilweise.

 Info:
 Mega8
 Bascom zum schreiben der Programme und rein laden der Boot Datei
 Bootloader Programm von Mikrosyl
 bootloader Datei für megas hier:
http://www.mikrocontroller.net/attachment/5154/Megaload_Hex.zip


 jetzt meine Frage
 Was mache ich falsch

 ich gehe wie folgt vor:
 1. die Bootloader Datei BootLoad_m8.hex in den Mega8 geladen
 2. die Fusebits gesetz: Fusebit D = 0
 Fusebit FE = 01 (habe auch schon mal mit 2. angefangen und dann 1. das
 gleiche)
 3. Programm Megaload gestartet und ein beispiel Programm reingeladen 
und
 Programmiert (ohne EEprom)
 4.Programm läuft! Aber am ende der programmierung kommt "Programming
 Fail" (wenn er die Fusebit setzen will)
 Status Feld: Error occured aborted...
 wenn ich nun Reset drücke wird das Programm nicht gestartet es läuft 
nur
 wenn ich es mit dem Botloader reingeladen habe und es dann laufen lasse

 muss ich noch irgendwas beachten, muss in das beispielprogramm auch 
noch
 was besonderes rein?
 kann man auch die Beispiel Programme bei Bascom nehmen,
 welches wäre denn geeignet (will es wenn es nachher ordentlich läuft,
 mit ein mega128 auch ausprobieren)

 kann mir hier einer helfen?
 habe schon google komplett durch und nichts
 richtiges gefunden (anleitung oder so) wo es genau drin steht und wo
 auch alle Dateien zum ausprobieren dabei sind

 Danke
 Malte

von Malte S. (boeser-korn)


Lesenswert?

weiss keiner über Bootloader bescheid??


oder wo man eine gute Anleitung findet

von Peter D. (peda)


Lesenswert?

Malte Sönksen wrote:
> weiss keiner über Bootloader bescheid??

Doch schon.
Aber nicht über Bascom und Mikrosyl.


>  4.Programm läuft! Aber am ende der programmierung kommt "Programming
>  Fail" (wenn er die Fusebit setzen will)

Kein AVR-Bootloader kann die Fuses setzen.
Das ist von Atmel nicht vorgesehen.


Peter

von Malte S. (boeser-korn)


Lesenswert?

welche gibst denn noch?

ist das nicht auch egal welchen man nimmt?
es muss doch nur zum Programm passen oder?


ich jeden Vorschlag/Hinweiss dankbar

Danke

von Hannes L. (hannes)


Lesenswert?

Die Kombination "Bootloader" und "BASCOM" bereitet mir Bauchschmerzen 
bzw. amysiert mich. Denn selbst gestandene C-Profis wie Peter schreiben 
ihren Bootloader in Assembler. Und da meinst Du, das wird (ohne 
BASCOM-Profi zu sein) problemlos in BASCOM möglich sein?

...

von Gast (Gast)


Lesenswert?

In den Bascom Samples gibt es einen funktionsfähigen Bootloader,
(bootloader.bas)

von holger (Gast)


Lesenswert?

@ Hannes

>Denn selbst gestandene C-Profis wie Peter schreiben
>ihren Bootloader in Assembler.

Das geht auch in C ;)

von Malte S. (boeser-korn)


Lesenswert?

die Bootloader Datei von Bascom habe ich schon mal getestet
habe es aber leider nicht hinbekommen.

und mit welchem Programm kann ich ihn später benutzen (zum 
programmieren)


Danke

von Gast (Gast)


Lesenswert?

Entweder direkt aus Bascom heraus, oder mit dem
"Stand Alone Bootloader" von MCS.
Den Downloadlink findest Du unten in der Application Note AN 143
Wenn Du den Bootloader etwas anpasst, kannst du zB. auch Hyperterminal 
verwenden.

von Malte S. (boeser-korn)


Lesenswert?

habs grad versucht
funktioniert nicht

habe den mega8 eingestellt in Bascom und den Bootloader programmiert
das gleiche wie immer

das Programm von Mcs, zeigt an das er immer 123 sendet passiert aber 
sonst nichts (Reset habe ich gedrückt)

muss ich noch irgendwas beachten?

von Peter D. (peda)


Lesenswert?

Malte Sönksen wrote:
> welche gibst denn noch?

Na z.B. den von mir in der Codesammlung.


> ist das nicht auch egal welchen man nimmt?

Ja, wenn er das tut, was man will und wenn man ihn zum Laufen bringt.

Ich habe Wert darauf gelegt, daß er mit beliebigem Takt läuft (Autobaud) 
und problemlos an alle AVRs anpaßbar ist.

Es ist außerdem der einzige Bootloader der auch alle aktuellen ATtinys 
unterstützt, da ich die vorwiegend verwende (sind so schön klein und 
schnuckelig).


> es muss doch nur zum Programm passen oder?

Ja, die Protokolle von AVR-Bootloader und PC-Programm müssen zueinander 
passen.


Peter

von Malte S. (boeser-korn)


Lesenswert?

Danke

aber mit assembler kenne ich mich nicht so aus oder was das auch ist

jetzt habe ich am Anfang gelesen das der mega128 nicht mit unterstützt 
wird, habe bis jetzt auch nur die ersten paar Beiträge gelesen

Ich habe mir auch schon mal gedanken drüber gemacht auf Assembler 
umzusteigen, weiss jemand wo im Internet eine gute Einleitung ist um das 
mal zu testen.


werde mal versuchen den mal zu programmieren

von Hannes L. (hannes)


Lesenswert?

Du musst ja nicht gleich auf ASM "umsteigen". Aber etwas ASM-Wissen wird 
Dir auch beim Benutzen einer Hochsprache nicht schaden. Es programmiert 
sich mit Sicherheit effizienter, wenn man das Ergebnis des Compilers 
halbwegs versteht und überprüfen kann.

...

von Malte S. (boeser-korn)


Lesenswert?

habe mir mal die sachen von fastloader angeguckt

und weiss nun garnicht wie ich das jetzt machen soll, welches programm 
zum drauf spielen welche zuerst oder welche ist die haupt datei
 und so weiter


Danke

von Malte S. (boeser-korn)


Lesenswert?

liest noch jemand mit

von tom (Gast)


Lesenswert?

Ja

von Jürgen (Gast)


Lesenswert?

war zwar schon vor einer weile, als ich mit megaload gespielt hatte.

aber wenn ich mich erinere muste der hexcode wohl motorola sein.
.. (intel-hex ging da nicht)

dabei ist das eigenlich ganz egal wer den erstellt hat,
assembler, bascom, oder c .

er muste nur für den prozessor sein ,und reinpassen   ;-)

die fuses müssen natürlich mit dem botlader passend gesetzt sein.

das ist ja das gute and dem bootlader ist ja,
das die fuses dann ziemlich sicher sind.

von Malte S. (boeser-korn)


Lesenswert?

habe deb jetzt doch von mcselec genommen, klappt wunder bar aber nur mit 
dem eingebauten booltloader von Bascom den externen von denen will er 
nicht

keine Ahnung warum

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.