Forum: Mikrocontroller und Digitale Elektronik AVR Butterfly programmieren ohne Bootloader zu ändern?


von Thomas R. (titan)


Lesenswert?

Hi,

ich hab den AVR Butterfly und möchte diesen über die RS232 
programmieren. Soweit ich das verstanden habe, ist der Bootloader ja 
dafür da, neuen Programmcode vom pc zu überspielen. Da ich keine extra 
hardware zum programmieren hab, möchte ich sichergehen, dass der 
bootloader nicht versehentlich überschrieben wird und ich den Butterfly 
nichtmehr neu programmieren kann.

Ich kann in c programmieren (assembler fast nichts), hab aber mit 
microcontrollern noch keine erfahrungen. auf dem butterfly befindet sich 
ein MEGA169PV mit original-code. an software hab ich WinAVR und AVR 
Studio 4. Ich würde jetzt gern ein beispielprogramm vom tutorial auf 
dieser seite zum test übertragen. worauf muss ich achten, dass dabei der 
bootloader nicht gelöscht wird, welche lockbits und fuses sollte ich 
setzen (welche sind im originalcode gesetzt). müssen die lockbits und 
fuses jedesmal neu gesetzt werden, wenn ich programme übertrag, oder 
kann ich die einfach lassen wie sie gerade sind?

wie könnte man den controller programmieren, wenn er keinen bootloader 
hat?

hab versucht aus der bootloaderbeschreibung in verschiedenen 
datenblättern schlau zu werden, hat aber nicht so recht funktioniert 
(gibt es deutsche datenblätter zum mega169?) und im gcc-tutorial 
befindet sich das kapitel noch nicht. suche hat auch wenig gebracht.

wäre schön, wenn mir einer weiterhelfen könnte.

von Uwe .. (uwegw)


Lesenswert?

Um den Bootloader zu löschen, braucht man "extra
hardware zum programmieren", und die hast du ja nicht. Es kann also 
nichts passieren. An die fuse- und lockbits kommtst du mit dem 
Bootloader auch nicht ran.

von Thomas R. (titan)


Lesenswert?

Im Datenblatt zum Butterfly steht unter sektion "2.4: Bootloader" das 
hier:

2.4.3 Fuses and Lock Bits:
For the firmware to operate correctly these fuses and lock bits on the 
ATmega169 are the only ones to be programmed:

....


Warum steht das beim Bootloader, wenn der die garnicht ändern kann?

von Detlef _. (detlef_a)


Lesenswert?

Thomas, cool bleiben:

>>Es kann also nichts passieren. <<
Yep, so ist es. Durch Programmieren  kann man den nicht kaputtmachen, 
das ist nen evalboard für den mega169, da soll der Unkundige dran 
lernen, deswegen kann man da nix kaputtspielen.

Also, einfach frisch gewagt und die Programme entsprechend der tutorials 
aufgespielt, ist großer Spaß wenn der eigene Kram übers LCD läuft.

Und kaputtgehen tut der Buterfly folgendermaßen: Irgendwann willst Du 
mit dem Ding eigene Hardware ansteuern, LEDS oder sowas und dann kriegt 
der mal 12V ab, das wars dann. So wird das sein.

Viel Spaß
Cheers
Detlef


von Thomas R. (titan)


Lesenswert?

thx
das mit den leds hatte ich vor, da muss ich dann auch mal genau gucken 
wie ich das mach, dass er nicht abraucht - sprich ich will später mal 
mit dem ne programmierbare pwm machen um rgb-dioden anzusteuern

von Markus D. (markus_d)


Lesenswert?

Hallo Zusammen,
bin auch Newbie auf dem Gebiet der Micro Programmierung. Für einen Foto 
Timer habe ich mir den ATMEGA 169 besorgt und über die serielle 
Schnittstelle (bootloader) mit AVR Studio 4 programmiert. Sie lief und 
funktioniert auch. Soweit so gut. Jetzt wollte ich eine andere 
Applikation einspielen und komme über die serielle Schnittstelle nicht 
mehr auf den AVR. Auch lässt sich das bootloader Menu nicht mehr 
aufrufen (Option -> Bootloader -> Jump to Bootloader). Ich bekomme im 
AVR Studio ständig die Fehlermeldung, daß das entsprechende Device nicht 
gefunden wurde. Jetzt bin davon ausgegangen, daß ich vielleicht den 
bootloader gelöscht habn könnte. Habe verschiedene Hinweiose im Netz 
gefunden, daß das durchaus passieren kann und ich den Bootloader per 
Paralellprogrammierung  über ISP neu einspielen muß. Bin jetzt etwas 
verwirrt was ich nun machen soll. Würde mir unnötige Arbeit sparen, wenn 
ich wüsste ob der Bootloader noch drauf ist und wie ich wieder eine 
Verbindung bekomme.
Vielleicht kann mir jemand von Euch Experten helfen.
Danke im voraus
Gruß
Markus

von Nailpainter (Gast)


Lesenswert?

Frueher oder spaeter wirst Du eh einen Hardware programmer haben 
wollen/muessen. Es gibt Einwicklungskits da sind die dabei, es gibt 
Debugger, die sollen das koennen. Schau Dir das STK500, AVRDragon usw 
an.

von Thomas R. (titan)


Lesenswert?

Also der Bootloader müsste noch drauf sein, soweit ich weiß kriegt man 
den mit der Seriellen Schnittstelle net so einfach runter. Nur das menü 
zum auswählen auf dem Butterfly gibts natürlich nichtmehr, das ist durch 
deine Software ersetzt. Guck mal in der Bedienungsanleitung oder so 
nach, wenn du 2 pins kurzschliest, dann startet der Bootloader und du 
kannst ihn programmieren.
Wenn du keinen Jumper hast(oder keine lust, da was rumzulöten), dann 
bieg einfach ne Büroklammer auf, die tuts auch ;)

von Michael W. (wiebel42)


Lesenswert?

Einfache Leds kannst du durchaus auch direkt an PortB oder so hängen, 
die Spannung ist OK und 20mA sind auch fein, bei RGB dürfte allerdings 
die Blaue Led zicken da die mehr als 3V braucht. Aber Achtung die 
"Knopf" Zelle versorgt dir zwar das Display über Jahre hinweg aber mit 
LED ist das nur noch ne Frage von Tagen. -wiebel

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.