Zitat Zitat von RCO
Also nur damit ich das jetzt mal richtig verstehe:

Es gehört also zum festen Betriebsystem des AVR nach dem Einschalten zum Programmempfang bereit zu sein und der Controller ist nicht (mehr) ASURO-spezifisch.
Ich erkläre jetzt mal wie ich das verstehe, also bitte korrigert mich wenn ich falsch liege.

Die Firma AREXX hat einen Bootlader geschrieben und den auf den AVR übertragen. Damit dieser nicht überschrieben oder geändert wird, ist er mit Lockbits gesichert. Beim starten wird der Bootlader ausgeführt und mit dessen Hilfe können z.B. das Programmieren über die RS232-Schnittstelle ausgeführt werden. Besitzt man den Sourcecode nicht, kann man keinen Chipaustausch beim ASURO durchführen, es sei denn man verzichtet auf funktionen, oder kauft einen bereits beschriebenen Ersatzchip.
Genau..

Zitat Zitat von RCO
Hierbei bin ich mir ziemlich unsicher:
Im Bootlader stehen auch die Funktionen StatusLED(), MotorDir()...
Diese Funktionen sind quasi immer vorhanden und müssen nur angesprochen werden, deshlab ist das Programmieren mit Bascom im Grunde nicht vorteilhaft, weil bestehende Funktionen nicht genutzt werden können und man sie neu schreiben muss und damit speicherplatz "verschwendet".
So richtig?
Naja fast, der Bootloader sorgt nur dafür das die Programme seriell auf den AVR übertragen werden können. Bei Atmel gibts da auch ne Appnote dafür. In dem "bisschen" Bootcode sind die Funktionen fürs Fahren usw. bestimmt nicht dabei.

Die sind in der Asuro.h und Asuro.c als lib abgelegt...

Zitat Zitat von RCO
Wenn das so stimmt, wäre es vielleicht schön alle Grundfunktionen des ASUROs in Bascom in eine Lib zu schreiben, damit man die Funktionen nicht neu schreiben muss, und man quasi genauso programmiert wie in C.
Der Nachteil dabei ist natürlich, dass man dann auch funktionen die man nicht braucht mitüberträgt.
MFG Moritz
So weit ich weis geht das nicht. Der Speicherbereich des Bootloaders ist reserviert, beim Booten führt der Prozessor automatisch einen Sprung zum Anfang des Bootloaders aus. Wenn der Bootloader fertig ist springt der nach 0x000 oder so und der ganz normale Code wird ausgeführt. Beim Asuro muss man an un aus schalten, wahrscheinlich haben die den Sprung irgendwie weggelassen...
Ich befürchte aber das Programme nicht auf den Speicherbereich des Bootloaders zugreifen können, wär zu doof wenn so ein Programm da irgendwas ändert und sich der AVR nicht mehr programmieren lässt, da müsste man zuerst wieder zum herkömmlichen Brenner laufen...nervig das Ganze

Gruß, Sonic