Hallo,
nachdem es vom AVR-Studio lange kein Update mehr gegeben hat (und dieses
unter Windows7 auch nicht gescheit läuft) habe ich beschlossen Atmel den
Rücken zu kehren. Weiter gibt es auch von AVR-GCC keine Updates mehr und
ob die alte Version von AVRGCC von AVRSTudio5 noch unterstützt wird
steht in den Sternen...
Gibt es für PICs einen anständigen C-Compiler für MPlab?
Vielen dank!
Ingo Gruber
>Der läuft ja nur 60 Tage...
Der läuft länger. Nach 60 Tagen gehen ein paar Optimierungen
nicht mehr. Dadurch wird der Code größer. Nach meinen Erfahrungen
aber auch schneller;)
Hi,
Ingo Gruber schrieb:> Der läuft ja nur 60 Tage...> Was kostet der Compiler - konnte leider nichts finden...
als Hobbyist willst du den Compiler sicher nicht kaufen...
Auch wenn der mit etwas unter 400 Eur. noch günstig im Vergleich ist.
Aber das der nur 60Tage läuft stimmt nicht ganz. NAch 60Tagen wird nur
die Optimierung zurückgefahren was bedeutet das der Zielcode etwas
größer wird. Der Compiler bleibt aber funktionsfähig. Diese geringere
Optimierung spielt für den Hobbyisten keine Rolle. Es ist nicht
gravieren, nur ein paar Prozent. Als Hobbyist kauft man ja eh bei zwei
bis auf den Flash absolut gleichen Controllern die größere Version.
(Beispielsweise -auch wenn dies jetzt 16er sind- Pic16F627A und 16F628A-
wer kauft als Hobbyist üblicherweise den 16F627?)
Im Gewerblichen Umfeld kann es aber entscheident sein, den manchmal
machen nur wenige Byte den Unterschied und wenn die Firma die 1000
Geräte pro Tag herstellt bei jedem Controller 2,5 Ct. sparen kann in dem
sie statt des 16F628 den 16F627 nimmt ist das aufs Jahr gesehen eine
Menge Geld!
Du kannst aber auch einfach die LITE Version oder die ACADEMIC version
nehmen (Ich weiß erhlich gesagt gar nicht ganz genau wo der Unterschied
nun liegt). Diese VErsionen sind komplett Frei und behalten Ihren
Funktionsstand immer.
(Natürlich steht es dir dann-wenn tatsächlich mal drei Byte zuwenig frei
sind- frei einfach den Eval.Compiler für 60Tage zu nutzen. Microchip
gestattet ja sogar die Gewerbliche Nutzung. Selbst für Gewerbliche bei
seltenen Einsatz eine nette Option. Mit LITE entwickeln und dann die
Final mit EVAL übersetzen ;-) )
Gruß
Carsten
Der oft übergangene Sourceboost wäre noch eine Alternative:
http://www.sourceboost.com/
Alle Hi-Tech Compiler Versionen unter Pro (also Standard und Lite)
erzeugen künstlich schlechten und unnötig langen Code.
Sowas kann ich ja garnicht leiden...
Ich habe im letzten Jahr, nach über 15 Jahren Assembler auf
PICs, alle verfügbaren Compiler getestet und mich für den
Sourceboost entschieden.
Für 150$ ist das mehr als ordentlich, was Dave und Pavel
da abliefern ;)
Ingo Gruber schrieb:> Wie ist das dann mit OnChipDebugging.>> Geht das mit MPlab + MPLab C Compiler
Also bei den von Microchip herausgegebenen Compilern geht das natürlich
- Keine Frage.
(Vorrausgesetzt der µC ist dafür geeignet - Bei einigen geht das ja
nicht bzw. man braucht einen Sonderversion/HEADER. Die 18F µC sollten
aber IMHO alle gehen und einen Header Zwangsweise braucht man nur beim
13K50 sowie 14K50. Alle anderen Verfügbaren 18F Header dienen nur dazu
das ein Debuggen KEINE Ports belegt, stellen also zusätzliche Anschlüsse
zur Verfügung)
Wie es beim Debugging mit Fremdcompilern aussieht - K.A.
Gruß
Carsten
Ingo Gruber schrieb:> nachdem es vom AVR-Studio lange kein Update mehr gegeben hat
Sei doch froh. Keine Updates bedeutet doch, es gibt keine Probleme, die
gefixt werden müssen.
Ingo Gruber schrieb:> (und dieses> unter Windows7 auch nicht gescheit läuft)
Dieses Gerücht kennt mein W7 noch nicht, es arbeitet völlig klaglos mit
AVRStudio zusammen.
Und auf der Atmel Webseite steht eindeutig, das W7 unterstützt wird.
Ich denke mal, wenn Du Dein Problem schilderst, sollte sich schnell eine
Lösung finden.
Ingo Gruber schrieb:> Weiter gibt es auch von AVR-GCC keine Updates mehr
Wozu?
Es funktioniert und alle h-Files zu den derzeitigen AVRs sind vorhanden.
Ich kann mir nicht vorstellen, daß man bei den PICs vor Problemen
davonrennen kann, man muß sie lösen.
Peter
Carsten Sch. schrieb:> wie es beim Debugging mit Fremdcompilern aussieht - K.A.
Kein Problem. Alle Compiler lassen sich in MPLab integrieren.
Das Debuggen macht ja nicht der Compiler ;)
Ohne REAL-ICE kommt da aber keine Freude auf.
ICD2/3 sind dafür einfach nur K*cke.
Mit dem höchstgenialen Simulator lassen sich aber üblicherweise
bereits weit über 95% des Codes testen und analysieren.
Mit etwas Zusatzaufwand und Nachdenken könnens auch, selbst bei
komplexen Anwendungen, schon mal 100% sein ;-)
Peter Dannegger schrieb:> Ingo Gruber schrieb:>> nachdem es vom AVR-Studio lange kein Update mehr gegeben hat>> Sei doch froh. Keine Updates bedeutet doch, es gibt keine Probleme, die> gefixt werden müssen.>> Ingo Gruber schrieb:>> (und dieses>> unter Windows7 auch nicht gescheit läuft)>> Dieses Gerücht kennt mein W7 noch nicht, es arbeitet völlig klaglos mit> AVRStudio zusammen.> Und auf der Atmel Webseite steht eindeutig, das W7 unterstützt wird.> Ich denke mal, wenn Du Dein Problem schilderst, sollte sich schnell eine> Lösung finden.>> Ingo Gruber schrieb:>> Weiter gibt es auch von AVR-GCC keine Updates mehr>> Wozu?> Es funktioniert und alle h-Files zu den derzeitigen AVRs sind vorhanden.>>> Ich kann mir nicht vorstellen, daß man bei den PICs vor Problemen> davonrennen kann, man muß sie lösen.
Könnt ihr das nicht einfach akzeptieren, dass er was mit PICs machen
will. Da braucht man nicht zu diskutieren.
Ingo Gruber schrieb:> Wie ist das dann mit OnChipDebugging.>> Geht das mit MPlab + MPLab C Compiler
Soweit der Programmer / Debugger das zulässt ist das in MPLAB kein
Problem.
holger schrieb:>>Der läuft ja nur 60 Tage...>> Der läuft länger. Nach 60 Tagen gehen ein paar Optimierungen> nicht mehr. Dadurch wird der Code größer. Nach meinen Erfahrungen> aber auch schneller;)
Es handelt sich auch nicht um alle Optimierungen sondern nur um höhere
Optimierungsstufen. Programmiert man halbwegs intelligent, dann sind
Optimierungsstufen eher von geringerer Bedeutung.
AS schrieb:> Ohne REAL-ICE kommt da aber keine Freude auf.> ICD2/3 sind dafür einfach nur K*cke.
Naja das möchte ich aber sehr schwer bezweifeln. Ich gebe zu, dass ich
auch lieber mit ICE2000 arbeite als mit dem ICD3 oder PICkit3 aber ich
kann aus Erfahrung sagen, dass das Debugging mit dem PICkit3 genauso gut
geht wie mit einem ICE2000. Ist zwar streckenweise aufwändiger aber das
liegt ja nicht an Compiler oder Entwicklungsumgebung sonder primär mit
der Debugginghardware.
AS schrieb:> Mit dem höchstgenialen Simulator lassen sich aber üblicherweise> bereits weit über 95% des Codes testen und analysieren.> Mit etwas Zusatzaufwand und Nachdenken könnens auch, selbst bei> komplexen Anwendungen, schon mal 100% sein ;-)
Für Hobbyanwendungen mag das zutreffen ... ich kann dir aber sagen, dass
man wenn man professionell arbeiten will und Projekte größerer
Komplexität vor sich hat ohne Hardwaredebugging mit vertretbarem
Zeitaufwand nicht mehr zu Rande kommt.
Lehrmann Michael schrieb:> Könnt ihr das nicht einfach akzeptieren, dass er was mit PICs machen> will. Da braucht man nicht zu diskutieren.
Es geht doch nicht um den MC, der ist völlig wurscht, es geht um den
Umgang mit Problemen.
Und erzähl mir nicht, beim PIC gebe es keine Probleme.
Wer Probleme nicht lösen will, der wird nie ein richtiger Programmierer.
Peter
Peter Dannegger schrieb:> Ingo Gruber schrieb:>> nachdem es vom AVR-Studio lange kein Update mehr gegeben hat>> Sei doch froh. Keine Updates bedeutet doch, es gibt keine Probleme, die> gefixt werden müssen.> ...> Ingo Gruber schrieb:>> Weiter gibt es auch von AVR-GCC keine Updates mehr> Wozu?> Es funktioniert und alle h-Files zu den derzeitigen AVRs sind vorhanden.
Naja -das mit keinen Problemen mag ich aber stark anzweifeln -
Aus eigener Erfahrung und wenn man sich den Thread zum AVR Studio 5
ansieht was da gejubelt wird das endlich ein Nachfolger zur jetzt
plötzlich doch nicht so tollen AVR Studio 4 vorhanden ist..
Noch erstaunlicher finde ich da aber wie von -echten- AVR Anhängern so
an GCC herumgemosert wird - dabei wird der doch sonst als Ultimative
Waffe hochgelobt.
Peter Dannegger schrieb:> Es geht doch nicht um den MC, der ist völlig wurscht, es geht um den> Umgang mit Problemen.> Und erzähl mir nicht, beim PIC gebe es keine Probleme.> Wer Probleme nicht lösen will, der wird nie ein richtiger Programmierer.
Grundsätzlich hast du recht - Probleme muss man lösen und nicht davor
weglaufen. Aber manchmal kann der Umstieg auf einen anderen
Hardwarehersteller eine sehr effektive Problemlösung darstellen.
Natürlich ist das Ausbleiben von Updates nicht unbedingt das beste
Umstiegskriterium. Zumal AVRSTUDIO 5 -wenn auch als BETA- jetzt raus
ist.
Aber wenn er nun einmal vor hat zu einem Hersteller zu wechseln der auch
die Belange kleiner Bastler ernst nimmt, wo man für 20 Euro
Entwicklungswerkzeuge bekommt mit denen mal vollwertig Programieren UND
Debuggen kann ohne das man wie beim vier mal so teurem Dragon noch ein
GEhäuse drumbauen muss und jedesmal fast beten muss das dieses
Empfindliche Teil nicht durch etwas statische Elektrizität oder geringe
Überspannung in den Programmerhimmel geschickt wird, Einem Hersteller
dessen Produkte man problemlos überall ohne Sorgen vor zu großen
Lieferzeiten man überall in allen Gehäusevarianten bekommt -selbst die
seltenen mit exotischen Peripheriekombinationen, dann sollte man das
akzeptieren ;-)
ICh war zwischenzeitlich auch mal AVR Fan, besitze neben dem AVRISP auch
den JTAGICE, bin aber wieder reumütig zu Microchip zurückgekehrt!
Weiß also wovon ich schreibe ;-) Allerdings setze ich AVRs auch heute
noch manchmal ein. Aber nur noch als zweite 8Bit wahl.
Gruß
Carsten
Ingo Gruber schrieb:> nachdem es vom AVR-Studio lange kein Update mehr gegeben hat (und dieses> unter Windows7 auch nicht gescheit läuft) habe ich beschlossen Atmel den> Rücken zu kehren. Weiter gibt es auch von AVR-GCC keine Updates mehr und> ob die alte Version von AVRGCC von AVRSTudio5 noch unterstützt wird> steht in den Sternen...
Das bereits erwähnte AvrStudio5 ist nicht nur brandneu, es enthält
auch bereits einen neuen AVR-GCC (4.5.x).
Ich springe gerne zwischen µC Familien aber die genannten Gründe
kann ich nicht nachvollziehen.
Viel interessanter an den PICs für Bastler finde ich die große Auswahl
an bedrahteten Typen. Schon nicht schlecht was bereits Reichelt da
im Angebot hat.
Und in C spielt es auch keine Rolle ob PIC16 oder PIC18.
Carsten Sch. schrieb:> wo man für 20 Euro> Entwicklungswerkzeuge bekommt
Was denn? Der Pickit2 kostet fast das doppelte.
> ICh war zwischenzeitlich auch mal AVR Fan, besitze neben dem AVRISP auch> den JTAGICE, bin aber wieder reumütig zu Microchip zurückgekehrt!
Bei mir genau umgekehrt. Gründe: EMV, sterbende ICD2, abstürzende
MPlabs, kaum interne Pullups, lange Lieferzeiten.
Und der CCS Compiler hat mich wahnsinnig gemacht.
Aber seit drei Jahren verwende ich für Neuentwicklungen weder den einen
noch den anderen ;).
Microchip verkauft z.B. den PIC32 C-Compiler für $895. Da dieser
Compiler auf einem Open-Spurce Projekt basiert, muss sie jede Änderung
am Source-Code veröffentlicht werden. Und das tun sie auch.
Von dieser Seite
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en023073
kann der Source-Code folgender Compiler geladen werden:
- MPLAB ASM30 Assembler
- MPLAB C Compiler for PIC24 and dsPIC DSCsr
- MPLAB C Compiler for PIC32 w/assembler and linker
Man kann im Source-Code die Deaktivierung der Optimierung (-O2/-O3)
rückgängig machen und das ganze neu compilieren. Und man hat dann eine
kostenlose Vollversion.
Es gibt wohl Webseiten (Link hab ich leider nicht) mit ausführlichen
Anleitungen, was genau zu machen ist. Vielleicht hat jemand einen Link.
Microchip hat nur das Copyright auf die Librarys, die die PICs
definieren. Aber soweit ich weiß ist die einzige Einschränkung, dass man
diese nur zur Codeerzeugung für Microchip Controller verwenden darf.
Hier noch zwei Links.
Podcast ab 57. Minute:
http://www.theamphour.com/2011/02/01/the-amp-hour-28-bowie-and-the-brown-noise/
Forum:
http://www.eevblog.com/forum/index.php?topic=2393.0;topicseen
Gruß
John