PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Bascom Bootloader



fiatx
20.03.2011, 13:25
Hallo,

ich habe mich mal mit dem Thema Bootloader befasst und mir sind dabei einige Sachen unklar. Hoffe ihr könnt mir helfen.

Ich habe als Board das Pollin Board und als Programmer den mysmart usb mk2.

Ich kann alles benutzen aber naja ich will nicht immer mit zwei oder drei verschiedenen Programme hantieren müssen und dann auch noch umstecken wenn ich dir RS232 Verbindung brauche.

Jetzt wollte ich den Atmega8 mit nem Bootlaoder austatten, und zwar dem von Bascom.

Damit sollte es ja dann möglich sein aus Bascom direkt über einen (echten) Com Port neue Programme zu Flashen.

Muss ich Irgendwas beachten bei den Programmen oder kann ich sie ganz einfach wie immer schreiben oder muss da irgend ein Hinweis auf ein Bootloader rein.

Bei Bascom ist ja ein Bootloader dabei, der wird einfach geflasht und die Fusebits entsprechen eingestellt und gut is oder habe ich etwas übersehen.

habe keine sehr Hilfreiche Anleitung gefunden http://www.gidf.de/:(

hoffe ihr könnt mir dabei helfen da ich dann alle meine Projekte gleich aufbauen möchte und wenn möglich später auch über funk Proggen möchte.

Danke und lg Sven

mat-sche
20.03.2011, 18:18
Hi!

Also ich nutze den MCS-Bootloader und progge meine Kontroller dann immer über rs232, direckt aus <Bascom heraus.
Vorerst musst Du die FUSE vom mega setzen: Resetvector = Bootloader; Bootloadergröße = 1024.
Dann aus dem Ordner Samples\Boot den Bootloadercode: BootLoader öffnen und auf Deinen Chip anpassen, kompelieren. Dabei ist wichtig, dass die Baudrate die Dort einstellen kannst dann nachher mit der im MSC-Bootloader, unter Bascom AVR Options\ Programmer, übereinstimmt. Dann den code per ISP auf den mega schieben und fertig.
Sobald Du Deinen Controller ein reset gibst, springt dieser in den Bootbereich und wartet auf dem Uart auf ein "123". Dann nur noch unter Programmer den MCS-Bootloader auswählen, die Com-Schnittstelle & die Baudrate einstellen und ab geht es :D .

Wenn Du jetzt noch vom Chip den UART-Interrupt nimmst, kannst Du in der isr vom Interrrupt direckt in den Bootloaderbereich springen und so automatisch, ohne den reset zu drücken, den chip proggen.

Bei Fragen fragen....

Grüße MAT

fiatx
20.03.2011, 19:15
Hallo,

ich habe jetzt ein Problem.

Wenn ich in Bascom den Code für den Bootloader schreiber und anschlisen Compilieren will sagt er mir error ma 4096 Byte.

Gibt es die Datei Irgendwo fertig da ich sie ja mit meiner Demo nicht erstellen kann?

mat-sche
21.03.2011, 11:12
nun Du hast also keine Vollversion.... hmmmmm

Leider brauchstt Du diese um den Bootloader zu compelieren, da dieser im hinteren Teil vom Programmspeicher steht.
Jetzt weiß ich aber nicht ob es "gegen die Regeln" verstößt, ich könnte Dir das Hex-File zusenden und Du müsstest es einfach nur brennen.

Weiterhin musst Du dann beachten, dass Dein Code nicht größer wird als Speichergröße ATmega - 1024 bit Bootloader! Sollte das doch sein wirst du den Bootloader überschreiben und dann geht kein flashen über rs 232!

Gruß