Welche PIC24-C-Compiler gibt es und was ist Ihre Meinung oder Bewertung dazu?

Insbesondere die PIC24-Serie.

Ich habe den C30-Compiler von Microchips ausprobiert, aber er scheint mir etwas zu kompliziert zu sein, und ich konnte keine Bibliotheken damit finden.

Dann habe ich CCS ausprobiert, und es scheint viel zu einfach zu sein, und ich kann den Code für beispielsweise I2C_write nicht anzeigen, was für mich ziemlich nervig ist.

Was ist mit Hi-Tech C? Ich bin noch nicht dazu gekommen, es mir anzusehen, ist es deiner Meinung nach gut oder schlecht?

Gibt es noch andere C-Compiler für pic24 da draußen? Es spielt keine Rolle, ob sie kostenlos sind oder nicht, solange sie einige Beispiele haben.

Antworten (4)

Der C30-Compiler von Microchip enthält umfangreiche Bibliotheken für alle Peripheriegeräte, und viele andere Dinge können heruntergeladen werden. Ich habe die Vollversion gekauft, aber die kostenlose Version ist für die meisten Benutzer ausreichend. Alle Codebeispiele von Microchip verwenden es.

Die meisten Leute verwenden C30 für PIC24 und dsPIC. Die anderen Compiler haben keinen sehr guten Ruf, wie aus Kommentaren im Microchip-Forum hervorgeht.

Ich kann dem nur zustimmen. Der C30-Compiler ist wahrscheinlich der beste, den Sie für den Preis finden werden (kostenlos). Was Hi-Tech C betrifft, vermute ich, dass es veraltet ist, da Microchip den Compiler jetzt zu besitzen scheint und der C30 das ist, worauf sie sich konzentrieren.
Ich habe den C30-Compiler nicht verwendet, aber die Bibliotheken, die mit dem C18-Compiler geliefert wurden, waren wirklich schlecht, sehr ineffizient und fehlerhaft, sogar einfache Dinge wie die SPI-Bibliothek. Daher würde ich empfehlen, den Code durchzusehen, bevor Sie ihre Bibliotheken verwenden.
@Mark, immer ein guter Rat mit jedermanns Bibliotheken.
@Herr. Hedgehog, Hi-Tech C ist nur für den 8-Bit-Bereich, während C30 für den 16-Bit-Bereich ist.
@Thomas, Ah, ja, du hast recht.

MPLAB C30 ist eine sehr leistungsfähige Variante von GCC. Ich würde Ihnen empfehlen, es zu verwenden, da Microchip es für alle seine Codebeispiele verwendet und somit Kompatibilität bietet. Ich verwende es derzeit für mein Projekt; aber ich verwende keine Bibliotheken außer Standard-Zeug (z. B. printf.)

Das neue MPLAB X unterstützt Linux und OSX mit GCC
@ Joby Taffey wirklich? Ich wusste nicht, dass es ein MPLAB X gibt. Ab zum Download! (Hinweis: Ich verwende Ubuntu und derzeit MPLAB in VirtualBox unter XP.) Ich hätte nie gedacht, dass ich den Tag sehen würde: Microchip und Linux. :)

C30 ist in Ordnung, hat aber einen großen Nachteil darin (es sei denn, sie haben dies kürzlich behoben), dass der Linker so dumm ist, dass ihm nicht gesagt werden kann, dass er unbenutzte Codeabschnitte eliminieren (oder sogar identifizieren) soll.

Der Grund, warum dies ein Problem ist, ist, dass Microchip viele schöne Quellbibliotheken für Netzwerke, Grafiken, USB usw. bereitstellt, und da diese universell sind, enthalten sie zwangsläufig Funktionen, die ein bestimmter Benutzer nicht verwenden wird, aber sie werden trotzdem aufgenommen , Platzverschwendung.

Es ist kaum Raketenwissenschaft, ich kann nicht glauben, dass jemand die Nerven hat, für einen Compiler ohne eine so grundlegende Optimierung eine Gebühr zu erheben - erbärmlich.

HiTech C für den PIC24 generiert Code, der überhaupt nicht größenoptimiert ist. Ich habe diesbezüglich das Support-Team angerufen und der gut optimierte Codegenerator ist für PIC24 nicht verfügbar. Sie hatten versprochen, diese Arbeit zu erledigen, wurden dann aber von Microchip übernommen, und die Arbeit am HiTech PIC24 "C" -Compiler wurde eingestellt. Sie schlugen C30 vor. Ich hatte schon vor einiger Zeit viel Geld für HiTech PIC24 "C" bezahlt und saß mit einem halbfertigen Compiler und ohne Angebot, gegen Microchip C30 zu tauschen, fest. Auch unsere große Codebasis wurde mit HiTech-Intrinsic und Bibliotheksnutzung geschrieben und wäre mühsam zu portieren gewesen. Wir haben auf unserem PIC24-Teil keinen ROM-Speicherplatz mehr, was schade ist, da ein besserer Compiler aufgrund der verschwenderischen Assemblierung, die der Compiler erzeugt, etwa 20 % des Speicherplatzes freigeben würde.