Hallo, ich hab letztens im Internet eine Software für den ATmega32 gefunden mit man CompactFlash Karten lesen kann. So meine Frage jetzt: Ist es möglich das ich mein Hauptprogram für den ATmega auf ne CF Karte packe und diese dann von dem ATmega aus starte ? MFG RedDragon2kx
Hi! Wie soll er denn wissen wie er auf die Karte zugreifen soll, wenn das Programm, in dem das steht genau auf dieser Karte gespeichert ist, wo er eben nicht weiss, wie er darauf zugreifen kann? ciao Fasti
Ok ich war zu unpräzise. Entschuldigung. Auf dem ATmega soll dieses CF Karten Programm laufen das dann meinetwegen das Programm was auf der Karte drauf ist und im ersten Sektor steht ausführt. So ne Art Bootloader ?!?
Die richtige Antwort ist: Weil beim AVR Programm und Datenspeicher getrennt sind!! Du kannst die Daten von der CF in den Datenspeicher laden, von dort aber nichts ausführen. Ganz unmöglich ist es aber nicht. Du kannst es so machen, wie viele MP3-Player ihre Firmwareupdates vornehmen. Du kannst mit einem Bootloader das Programm von der CF lesen und in den Flash des AVR brennen, danach einen Reset und dann das Programm aus dem eigenen Flash ausführen! Bei MP3 Playern ist es oft so, dass man Firmwareupdates auf der CF speichert, dann in den Player schiebt, diesen startet und dann wird das Update ausgeführt. Das ginge problemlos. jörn
Hi. Eine andere Möglichkeit, die du noch hast, ist, dass du einen Interpreter für den Maschinencode machst. Das wird aber wesentlich langsamer, als direkt Maschinencode aus dem Flash auszuführen. Im Elektor war mal so ein Artikel drinnen. Dort wurde ein Basic Interpreter auf einen Controller implementiert! mfg Andreas
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.