Forum: Mikrocontroller und Digitale Elektronik Anteil von Programmiersprachen


von Biddo (Gast)


Lesenswert?

Hallo,
gibt es eine ungefähre Statistik über die verwendeten 
Programmiersprachen (C, C++, Java etc.) die auf Mikrocontrollern für den 
Programmcode verwendet werden?

von C++ (Gast)


Lesenswert?

Welche möchtest du denn promoten?
Gestern war's LunaAVR, und heute?

von Hmm (Gast)


Lesenswert?

Vermutlich hat sich irgendein Buchhalter mal die Mühe gemacht (ob 
freiwillig oder auf Anweisung mag dahingestellt sein) das zu zählen.

Bei solchen Fragen helfen oft sogenannte "Suchmaschinen". Wenn man z.B. 
nach Statistiken sucht, dann sollte man "Statistik" eingeben.

von MaWin (Gast)


Lesenswert?

Speziell für Microcontroller wird C weit führend sein, gefolgt von C++ 
und dem jeweiligen Assemblerm und Java kaum Verbreitung haben, es sei 
denn, man bezeichnet Android-Handys als Microcontroller.

Aber für normale Rechner gibt es eine Statistik:
http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
in der ist Java heute vorn (während es im letzten Jahr C war und vor 5 
Jahren schon mal Java).

von maxk (Gast)


Lesenswert?

Ada wird auf Mikrocontrollern auch ab und zu vor allem in 
sicherheitskritischen Anwendungen genutzt. Aber das ist nicht sonderlich 
viel und in etwa mit Java vergleichbar.

Dominant sind tatsächlich C, C++ und Assembler. C bei den kleinen 8/16 
Bit Mikrocontrollern mit wenig RAM und C++ bei den größeren 16/32 Bit 
Mikrocontrollern mit mehr RAM. Und bei Mikrocontrollern ganz ohne RAM 
(nur Register) kommt man an Assembler nicht vorbei. ;)

von Thomas (Gast)


Lesenswert?

Wie läuft denn das mit Java auf uCs?
Geht das nur mit OS + Java VM?
Oder gibt es sowas wie low level VMs, die ohne OS auskommen?
Oder gibt es Java Compiler, die direkt für die Zielplattform generieren?

von chris (Gast)


Lesenswert?


von (prx) A. K. (prx)


Lesenswert?

Javas garbage collection ist bei µCs unpraktisch.

von maxk (Gast)


Lesenswert?

Eienen Java-Compiler gibt es ja (GCJ). Eventuell hat den ja schon mal 
jemand für einen Mikrocontroller angepasst.

von Yalu X. (yalu) (Moderator)


Lesenswert?

Ich würde sagen, dass Java sogar recht häufig auf Mikrocontrollern 
eingesetzt wird, genauso wie auch Objective-C. Mikrocontroller sind eben 
nicht nur AVRs und PICs :)

von (prx) A. K. (prx)


Lesenswert?

Yalu X. schrieb:
> Ich würde sagen, dass Java sogar recht häufig auf Mikrocontrollern
> eingesetzt wird, genauso wie auch Objective-C.

Wenn man iPhones als Microcontrolleranwendung betrachtet...

von Yalu X. (yalu) (Moderator)


Lesenswert?

A. K. schrieb:
> Wenn man iPhones als Microcontrolleranwendung betrachtet...

Was sonst? Der Begriff "Mikrocontroller" impliziert ja nicht, dass das 
Ding maximal 8 Bit Wortbreite und 20 MHz Taktfrequenz haben darf.

von Maximilian (Gast)


Lesenswert?

Wie definierst du denn einen Mikrocontroller?

von Frank M. (frank_m35)


Lesenswert?

ich denke es kommt ganz auf die Zielgruppe an.

So vielleicht ganz grob:
Im Hobby-Bereich wird vermutlich Basic/Pascal gut verbreitet sein.
In Schulen wohl auch hin und wieder Java.
Im professionellen Bereich C/C++ bzw. Assembler für kleinere Projekte.
In sicherheitskrischen Umgebungen bestimmt auch Exoten wie Ada.
...

Wozu willst du das aber wissen?

Wenn du dir das Leben nicht zur Hölle machen willst und nicht alles 
selbst implementieren willst dann schau dir einfach an welche 
Programmiersprache vom Hersteller des uC mit Beispielcode unterstützt 
wird und nimm diese dann, meist C.

PS: Wenn ein iPhone ein uC ist, dann ist auch ein Tablet, wenn ein 
Tablet dann auch ein Desktop computer, und somit auch Server und somit 
jede Art von Computer, womit die Unterscheidung zwischen 
Microcontroller, SoC, ... sinnlos wird. Ebenso kann ich dann .NET mit in 
die Sprachen aufnehmen, was totaler Quatsch ist.

von Arc N. (arc)


Lesenswert?

Frank M. schrieb:
> Ebenso kann ich dann .NET mit in die Sprachen aufnehmen, was totaler
> Quatsch ist.

Genau zu diesem Zweck gibt es seit einigen Jahren von MS das unter 
Apache-Lizenz stehende .NET Micro Framework (http://www.netmf.com)

JavaScript gehört mittlerweile auch zu den 
Mikrocontroller-Programmiersprachen: http://www.espruino.com/Home

von W.S. (Gast)


Lesenswert?

Yalu X. schrieb:
> Ich würde sagen, dass...

Und ich würde mich an ollen Churchill halten und sagen, daß ich nur der 
Statistik vertraue, die ich selbst gefälscht habe. Das Thema dieses 
Threads ist per se tendenziös und zielt auf das Starten einer der hier 
üblichen und allseits beliebten Schlammschlachten hin.

Und zur Sache selbst gibt's nur zu sagen, daß man getrost danach schauen 
kann, was es für Compiler und Assembler und sonstige Codegeneratoren so 
gibt. Ob man das Ergebnis diese Suche dann gut findet oder eher nicht 
und wenn, aus welchen Gründen - das ist ne ganz andere Frage. Dito, 
welche Sprache(n) man selbst mehr oder weniger mag.

Einstein: "Dem Universum ist das alles schnurz". Auch meine Meinung 
hierzu.

W.S.

von Mr. X (Gast)


Lesenswert?

Maximilian schrieb:
> Wie definierst du denn einen Mikrocontroller?
System on Chip

von Frank M. (frank_m35)


Lesenswert?

Arc Net schrieb:
> Frank M. schrieb:
>> Ebenso kann ich dann .NET mit in die Sprachen aufnehmen, was totaler
>> Quatsch ist.
>
> Genau zu diesem Zweck gibt es seit einigen Jahren von MS das unter
> Apache-Lizenz stehende .NET Micro Framework (http://www.netmf.com)
Naja, seit einem Jahr ist daran seitens MS nichts mehr gemacht worden. 
Das offizielle Forum dazu hat in 3 Jahren ganze 257 Threads geschafft. 
Ich würde dies als gescheiterten Versuch seitens MS deuten in die 
uC-Welt .NET zu bringen.

> JavaScript gehört mittlerweile auch zu den
> Mikrocontroller-Programmiersprachen: http://www.espruino.com/Home
Da hat ein Hansel einen JS-Framework für uC geschrieben. Damit wird 
weniger der uC programmiert als viel mehr der Software die auf dem uC 
vorinstalliert ist Anweisungen gegeben. Mit dieser Einstellung könnte 
ich vermutlich jede verfügbare Programmiersprache für uC aufzählen, 
inkl. http://de.wikipedia.org/wiki/Programmiersprachen_für_Kinder
aber was bringt das außer vom Thema abzulenken.
Daher werden solche unwichtige Posten in Statistiken auch in die 'Other' 
Kategorie verschoben, da es kein Mensch interessiert. Dem Threadstarter 
geht es um die meist-verwendeten Sprachen und deren Anteil und nicht um 
die exotischten wenigst verbreiteten Sprachen für eine handselektierte 
Auswahl an uC oder gar nur fertigen Boards.

von DAS (Gast)


Lesenswert?

Bin kein Experte, aber bei sicherheitskritische Anwendungen können nicht 
alle Hochsprachen eingesetzt werden. Im Auotomotivebereich gibt es 
MISRA-C mit einigen Einschränkungen. Weiss Jemand, ob sowas mit JAVA 
auch möglich ist?

von Yalu X. (yalu) (Moderator)


Lesenswert?

DAS schrieb:
> Im Auotomotivebereich gibt es MISRA-C mit einigen Einschränkungen. Weiss
> Jemand, ob sowas mit JAVA auch möglich ist?

Hier wird an einem "Safety Critical Java" gearbeitet:

http://jcp.org/en/jsr/detail?id=302

Im Gegensatz zu vielen anderen Vorstößen in diese Richtung scheint 
dieses Projekt noch aktiv zu sein. Man darf gespannt sein, ob am Ende 
trotz der Dominanz von C in diesen Bereichen jemand die Ergebnisse 
tatsächlich nutzen wird.

von Stefan (Gast)


Lesenswert?

Wenn man 10 solche Statistiken miteinander vergleicht, bekommt man 10 
unterschiedliche Aussagen. Die Frage ist, wie man die Verbreitung einer 
Programmiersprache misst. Und wenn man sich dann darüber im Klaren ist, 
sollte man noch hinterfragen, welchen Nutzen die Statistk bringt.

In den 80er Jahren war zum Beispiel die Programmiersprache Basic unter 
Hobby-Programmierern sehr weit verbreitet. Im kommerziellem Umfeld aber 
viel weniger.

Nur weil viele etwas nutzen, muss es nicht unbedingt auch gut sein. Oft 
geben Lehrer vor, welche Programmiersprache zuerst gelernt wird. Und 
wenn man damit klar kommt, bleibt man dabei. Bei mir war das Turbo 
Pascal.

von hmmm (Gast)


Lesenswert?

22 Prozent der EU-Bürger und 15 Prozent der Einwohner Deutschlands haben 
noch nie das Internet genutzt.

von Spess53 (Gast)


Lesenswert?

Hi

>22 Prozent der EU-Bürger und 15 Prozent der Einwohner Deutschlands haben
>noch nie das Internet genutzt.

Wenn man solche Beiträge liest, wünschte man, es wären mehr.

MfG Spess

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.