Hi, der Mega128 hat 128KB Flash, 4Kb RAM und 4KB ROM. Wieso hat er nicht mehr ROM als nur 4KB? Muss ich jetzt noch ein externes ROM benutzen oder benutzt der ATmega128 den Flash als ROM? Wenn das so ist würde ich sehr gerne wissen warum. Danke!!!
Hi Flash ist Programmspeicher RAM ist RAM Die 4k ROM die du nennst sind EEPROM und als (nichtflüchtiger) Datenspeicher gedacht. Matthias
Eigentlich meinte ich dass, der RAM mit seine 4KB als Arbeitsspeicher zu klein. Müsste der nicht genauso viel RAM wie auch FLASH haben?
Das würde im Umkehrschluss bedeuten, daß du mit soviel RAM arbeitest wie deine Festplatte groß ist. Muß das sein? Michael
Nö, warum? Die 128kb Flash, sind das, wo du dein Programm und ev. Konstanten "ablegst". Die 4kb Ram, sind halt irgendwelche Daten, die flüchtig gespeichert werden. Sonst müßte ja ein PC mit einer 80GB Festplatte ja 80GB Ram haben :) Mfg Sascha
@thomas das programm wird ja direkt aus dem flash ausgeführt und nicht wie bei einigen archtiketuren erst in dem ram kopiert und von dort gestartet.
Ist schon alles richtig, was Ihr sagt. Trotzdem wäre es mir auch ganz lieb, wenn's ein bisschen mehr RAM wäre. Allerdings kann man ja bis zu 64KByte RAM extern anschließen, wenn es sein muß. Ich habe auch schon mehr angeschlossen, dann muß man aber mit Bank-Switching arbeiten. Gruß, Michael
Ich hätte auch gerne paar Megabyte internen RAM, am besten noch eine USB-Schnittstelle, Ethernet und einen Bereich für programmierbare Logik.... und wenn ich es mir so überlege, dann wäre eine eingebaute Festplatte auch toll!
"Ich hätte auch gerne paar Megabyte internen RAM, am besten noch eine USB-Schnittstelle, Ethernet und einen Bereich für programmierbare Logik.... und wenn ich es mir so überlege, dann wäre eine eingebaute Festplatte auch toll!" Warum dann nicht gleich einen Embedded-PC. Bietet, glaube ich dann mehr Leistung wie ein AVR. Oder? Mfg Sascha
@Markus: Danke für die Aufklärung, ich meinte die Frage aber eher so: Warum '*lol'? (Wir Berliner fragen in solchen Situationen halt: "was heißt hier...?") Gruß, Michael
@Sascha: Wart's nur ab! Kommt alles (ist nur eine Frage der Zeit)! :) Gruß, Michael PS: Programmierbare Logik wäre wirklich nicht schlecht...
"PS: Programmierbare Logik wäre wirklich nicht schlecht..." Gibt es, glaube ich schon bei 8051-Derivaten. Müßte ST sein. Mfg Sascha. PS: Ethernet und USB wäre wirklich gut. Aber ne Festplatte? Dann wird es auf einer Europlatine ziemlich eng mit dem AVR :) Dann lieber mehr Flash wie beim Mega256, wenn er kommt.
@Sascha: "ber ne Festplatte? Dann wird es auf einer Europlatine ziemlich eng mit dem AVR :)" Neenee, nicht auf dem Board, sondern auf dem Chip! (Als kleine Nanomaschine... :) ) Nein, wahrscheinlich kommen in Zukunft wieder andere Massenspeichermedie, vielleicht ohne bewegliche Teile, die sich gut mikrominiaturisieren lassen. Gruß, Michael
@MSE: Flashspeicher existiert schon, da brauchts keine Holospeicher. 4GB Compactflash sind bereits im bezahlbaren Bereich und auch ungefähr so groß wie der Mega128. Und wem das immernoch zu groß ist, für den gibts 1GB SD-Cards. Es kann ja technisch eigentlich nicht so schwer sein, beide (den AVR und das große Flash) zusammen in einen Chip einzubauen. Aber ich fürchte, da ist einfach der Markt zu klein. Markus
"Aber ich fürchte, da ist einfach der Markt zu klein." Märkte werden oft erst mit der Verfügbarkeit von Bauteilen und technischen Lösungen erschlossen. Gruß, Michael
Es sit nurso ,dass ich ein HEX-File habe für ein 80C537 das mit dem Keil Compiler erstellt wurde und ca. 33KB gross sit. Ich will es für den Atmel umschreiben und da ich für den 80C537 ein externes RAM von 64KB habe ich eben die Frage gestellt. Ausserdem müssen noch floatig - Point Operationen durchgeführt werden. Danke für das Interesse!
@Thomas: Bei dem 80C537 und dem Keil macht man es üblicherweise zur Programmentwicklung so, daß man ein EPROM hat, in dem ein Bootloader steckt und ein RAM, in dem das eigentliche Programm ausgeführt wird. Das kommt aus der Zeit, als man im wesentlichen mit EPROMs gearbeitet hat, die sich nicht so einfach löschen und beschreiben lassen. Heutzutage haben die modernen Mikrocontroller aber oft internen Flashspeicher, so auch der Mega128. Dein Hexfile wird in dieses Flash geschrieben, das Programm läuft nicht im RAM (dort kann es bei den AVRs auch gar nicht laufen). Die 4KB RAM sind deswegen nur für die Variablen und den Stack da, wodurch man viel weniger RAM braucht. Vermutlich sind sie für Dein Programm völlig ausreichend. Markus
Und wenn die 4KB RAM nicht ausreichen, dann kann man auch beim ATMega128 64KB RAM extern anschließen (nur für Daten <= Harvardarchitektur, nicht von Neumann). Gruß, Michael
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.