Forum: Mikrocontroller und Digitale Elektronik Welchen kommerziellen Compiler


von Matthias (Gast)


Lesenswert?

Hallo!

Ich habe in der Firma eine Schaltung mit einem ATmega8 entwickelt, die
jetzt in Serie gehen soll. Da aber am Anfang noch nicht klar war, ob es
überhaupt funktioniert, habe ich zum programmieren winavr verwendet.
Da wir aber den Quellcode nicht veröffentlichen wollen, suche ich nun
einen kommerziellen Compiler.

Bisher habe ich folgende gefunden:
- Codevision AVR
- IAR AVR
- Imagecraft C
- Bascom

Bascom scheidet im Prinzip schon aus, da ich bei C bleiben will.
Welcher ist denn zu empfehlen und wird von den Profis benutzt?


Gruss,
Matthias

von Michael (Gast)


Lesenswert?

Ohne Namen zu nennen: der teuerste erzeugt auch den besten Code. Besorge
Dir am besten Demo-Versionen. Bei unkritischen Anwendungen reicht auch
der billigste - wer immer das sein mag :-)

von Matthias (Gast)


Lesenswert?

Bibliotheken (LCD, I2C etc) sind natürlich auch interessant.
Bei Codevision sind einige dabei, bei den andren konnte ich nicht viel
darüber herausfinden.

Gruss,
Matthias

von Matthias (Gast)


Lesenswert?

Hi

und warum willst du einen Compiler kaufen? Was spricht den gegen den
GCC? Niemand zwingt dich den Sourcecode zu veröffentlichen aus dem der
GCC ein Binary erzeugt hat. Nur wenn du am GCC selber Änderungen
vornimmst mußt du diesen Code veröffentlichen. Wäre dem nicht sp hätten
viele Firmen ein riesen Problem.

Matthias

von Michael (ein anderer) (Gast)


Lesenswert?

Du brauchst Deinen Code nicht veröffentlichen, wenn Du gcc verwendest!

Nur wenn Du den gcc selbst änderst und/oder verkaufst/weitergibts, nur
dann musst Du den veränderten gcc im Quellcode bereitstellen.

Die Avr-Libc selbst steht unter einer modifizierte BSD Lizenz. Auch
hier musst Du den Quellcode für Dein kommerzielles Projekt nicht
veröffentlichen.

Du kannst völlig legal gcc in kommerziellen Projekte verwenden, ohne
den Deinen Source-Code zu veröffentlichen. Das machen eine Menge Firmen
übrigens.

Einfach mal die Lizenzen lesen. Das spart eine Menge Geld...

von Madmax (Gast)


Lesenswert?

Und wer sagt eigentlich das man den Code nicht aus dem ATmega8 wieder
auslesen kann ? Glitchen ist das Stichwort.....

von Matthias (Gast)


Lesenswert?

Hi

klar. Den C-Quellcode kann man mit einem simplen Power-Glitch wieder
aus dem AVR auslesen.

<Frage>
Kann mir jemande den Sinn des letzten Postings erklären?
</Frage>

Matthias

von Thomas Burkhardt (Gast)


Lesenswert?

ROFL

von Madmax (Gast)


Lesenswert?

C-Code ????

Der ASM Code reicht doch völlig aus !!!!!!!
Ausserdem will er doch sein Programm schützen gegen Vervielfältigung
oder Nachbau. Und somit brauch man den Code noch nicht mal verstehen,
es reicht ja schon diesen zu kopieren !!!!! Also nicht mal ASM sondern
die reine BIN Datei !


tztztz.....

von thkais (Gast)


Lesenswert?

Ähm - Madmax - Und was bitte ändert ein kommerzieller Compiler an dieser
Tatsache???

von Hanes (Gast)


Lesenswert?

Im Geschäft habe ich auch schon einige zeitkritische Projekte mit AVR-uC
und dem gcc under Linux realisiert. Ich hatte nie Probleme, alle Geräte
sind seit Jahren 24/7 im Einsatz. Ich denke gcc ist für C-Coder die
beste Lösung, Preis/Leistung unschlagbar.

Hanes

von Robert (Gast)


Lesenswert?

@Madmax,

kannst du das mit dem Glitchen mal näher erläutern?

Robert

von Madmax (Gast)


Lesenswert?

goooooogeln.....

Thema Zeitkritische Spannungsabfälle usw......

von Matthias (Gast)


Lesenswert?

Danke für die Informationen!

Da hab ich mit der Lizenz wohl etwas falsch verstanden. Ich dachte dass
die Lizenz auch für die erstellten Programme gilt.
Dann erledigt sich die Suche nach einem anderen Compiler, da ich mit
den gcc sehr zufriden bin.


Gruss,
Matthias

von Tassilo (Gast)


Lesenswert?

Hi @All,


>klar. Den C-Quellcode kann man mit einem simplen Power-Glitch wieder
>aus dem AVR auslesen.


Oh mann eh! - Die Putzfrau ist einfacher zu kaufen!!

Ihr habt Sorgen!!!


Liebe Grüße
Tassilo

von Peter D. (peda)


Lesenswert?

>klar. Den C-Quellcode kann man mit einem simplen Power-Glitch wieder
>aus dem AVR auslesen.


Selten so gelacht.

Du glaubst also allen Ernstes, daß man aus dem Binary die C-Quellen
wieder rückübersetzt kriegt ???


Wenn Du einen MC geknackt kriegst, dann aber höchstens als pures
Assembler-Kauderwelsch.


Peter

von Michael (ein anderer) (Gast)


Lesenswert?

Und was ein Compiler beim Optimieren an Assembler erzeugt, das ist
wirklich heftigster Kauderwelsch.

von ---- (Gast)


Lesenswert?

@Tassilo + Peter: Bitte Zusammenhang nochmal nachlesen.
"Zitierfehler"!
@Matthias: Bitte keine ironischen Äußerungen mehr ohne deutliche
Kennzeichnung verwenden. ;)

Muß doch alles seine Richtigkeit haben...

----, (QuadDash).

von Matthias (Gast)


Lesenswert?

Hi

@Tassilo + Peter
Ich glaube ihr solltet euren Ironiedetektor mal etwas justieren lassen.
Der scheint mit doch etwas unrund zu laufen ;-)

Matthias

von Madmax (Gast)


Lesenswert?

HAAAAALLLLLOOOOOOO


Wer sagt denn das ich dadurch den C-Code bekomme ?????

LESEN

Der Binärcode reicht doch und das dadurch resultierende ASM File ist
doch perfekt.

Nebenbei:
Wer progt denn eigentlich AVR's in C ???
Das macht man immer noch am besten und vor allem am effektivsten in ASM
;-)

von André K. (Gast)


Lesenswert?

"Das macht man immer noch am besten und vor allem am effektivsten in
ASM ;-)"

Na das wuerd ich doch sehr gern mal sehen wie du z.B. nen Mega64 mit
nem komplexen Programm komplett und EFFEKTIV in ASM fuellst... Das wird
lustig.

MfG

von Christof Krüger (Gast)


Lesenswert?

don't feed the trolls

von Madmax (Gast)


Lesenswert?

ok

.db 0x00, 0x00 ........ 0x00
.
.
.
.
.
.db 0x00, 0x00 ........ 0x00


zufrieden ?

Oh Gott, warum müssen Atmels immer randvoll gefüllt sein ?
typ. C Progger :-))))))

von André K. (Gast)


Lesenswert?

Wieder falsch, Basic....

Das sollte nur zeigen, dass es ohne Hochsprache wohl nicht (bzw.
schwer) moeglich ist bei sehr grossen Programmen den Ueberblick zu
behalten und dabei noch effektiv zu arbeiten (schnell und moeglichst
fehlerfrei). ASM mag ja schnell sein, es ist ausserdem aber auch
umstaendlich und ruft eher nen Denkfehler hervor als C oder Basic.

MfG

von Christof Krüger (Gast)


Lesenswert?

ASM ist an sich nicht schnell. Es tritt nicht Compiler vs. Assembler an,
sondern Compiler vs. Mensch. Beide basteln sie ASM-Code. Wer
letztendlich besser ist, hängt vor allem von der Erfahrung des Menschen
und der Gewitztheit der Compiler-Bauer ab. Pauschal lässt sich da
erstmal nix sagen.

Also bitte keine Glaubenskriege :-/

von mk mk (Gast)


Lesenswert?

Ich hatte 'mal versucht, ein komerzielles Project in Assembler
geschrieben. Nach 4 Wochen gab ich es auf und kaufte mir einen
Compiler. Nach ca. 1 Woche war das Program fertig. Klar gab es Bugs.
Aber zumindest war es fertig.
Ich benutze seit Jahren den ICCAVR (imagecraft) und bin ziemlich
zufrieden. Hat zwar so seie Macken, aber wenn man die kennt, ist es
kein Problem.
Was mir besonders gefaellt, ist die Mailgroup, wo unglaublich schnell
auf Hilferufe reagiert wird.
Aber trotzden; wenn ich mal zufielt Kleingeld in der Tasche habe, werde
ich vermutlich auf IAR umsteigen.

von Robert (Gast)


Lesenswert?

@Madmax,

hab mal wg. dem Glitchen gesucht. Aber wie das beim AVR konkret
funktioniert habe ich nicht gefunden. Hast du da einen passenden Link
zur Hand?

Robert

von Christof Krüger (Gast)


Lesenswert?

Vergiss das glitchen. Das geht nicht bzw. ist bei heutigen AVRs kein
Thema.

von Robert (Gast)


Lesenswert?

@christoph,

gilt das für alle am Markt befindlichen Tiny's und Mega's? Was sagt
Atmel eigentlich dazu? (?!?)

Grüße Robert

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
Noch kein Account? Hier anmelden.