www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Compiler für M16/32C - IAR,GCC oder Renesas?


Autor: Klaus Raasch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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!

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mit der HEW sehr gute Erfahrungen gemacht. Hatte sowohl dieses 
als auch IAR als Testversion, und kam mit HEW besser zurecht.

Autor: Klaus Raasch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
http://www.iar.com/index.php?show=131357_ENG&&page...

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?

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.