Hallo, ich will mich für einen Compiler für den M32C entscheiden. Ich habe jetzt die HEW Umgebung von Renesas mit dem hauseigenen Compiler und dem GCC ausprobiert, funktioniert beides auf den ersten Blick einfach und die Dokumentation ist aussreichend. Den IAR kenne ich nur vom SAM7. Hat jemand eine Empfehlung für mich, wenn die Kosten nicht das primäre Argument sind, aber eben auch nicht unwichtig. Wie sind eure Erfahrungen mit diesen Compilern? Danke!
Ich habe mit der HEW sehr gute Erfahrungen gemacht. Hatte sowohl dieses als auch IAR als Testversion, und kam mit HEW besser zurecht.
http://www.iar.com/index.php?show=131357_ENG&&page_anchor=http://www.iar.com/p131357/p131357_eng.php Aber ob man dem so glauben schenken sollte!? Ist schließlich von IAR selbst. Was meint ihr? Ist der GCC für den M16/32C wirklich so schlecht im Vergleich zum IAR?
Ein paar Probleme hat GCC: - Er kann nur eine Pointer-Grösse für alles, Code, Daten, near, far, RAM, ROM, ... alles gleich. Der M16C will aber 16bit für RAM, 20bit für Code haben. Da das nicht geht und er mit 20bit-Pointern nur schlecht arbeiten kann, sind es immer 16bit. Adressierung von Daten/Strings/... im ROM ist daher kein Deut schöner als bei AVR. Leider hat DJ das auch beim M32C so gehalten, obwohl der mit 24bit Pointern ganz gut zurecht kommt. - Die Architektur hat für GCCs Geschmack etwas wenig Register. Das Ergebnis ist ein eigentümliches Prozessormodell mit Pseudoregistern im RAM. Wie sich das in der Praxis auswirkt, weiss ich allerdings nicht. - Der Laufzeitcode indirekter Funktionsaufrufe ist nicht reentrant, jedenfalls nicht im offiziellen GCC-Quellcode. In Interrupts sollte man also tunlichst keine Funktionen indirekt aufrufen (sowas macht man gern bei Timer-Interrupts). Und premptive RTOS sind folglich tabu.
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.