Forum: Mikrocontroller und Digitale Elektronik Welche Programmiersprache ist Arduino


von Gerd (Gast)


Lesenswert?

Hallo Zusammen,

ich programmiere seit geraumer zeit Hobby mäßig Arduino...
Ich dachte immer die Programmiersprache ist dabei C++, heute habe ich 
mir sagen lassen dass es aber in Wirklichkeit Java sei.
Im Internet wurde ich bisher nicht so richtig schlau, da ich Beruflich 
eign nur mit Siemens SPS zu tun habe.
Aber was ist es nun? =)

Danke für die Antworten

lg

von EinWort (Gast)


Lesenswert?

C++ (gcc-Compiler). Aber ganz sicher kein Java. Wäre schon ne echte 
Leistung eine vollständige JVM auf einem 8-bit Mikrocontroller zu 
implementieren und dann noch Platz für ne Applikation zu haben.

von Marcel P. (souko)


Lesenswert?

Also die Arduino-IDE selbst ist in Java geschrieben.

Die Sprache der "Sketches" selber ist mWn "C"

von Waldemar (Gast)


Lesenswert?

Je nach dem kann man einen "Arduino" mit C oder C++ aber auch Assembler 
"füttern".

Ich denke du wirst keine Klassen und sonstigen Kram (welches für C++ 
sprechen würde) anwenden, dann ist es reines C

von EinWort (Gast)


Lesenswert?

> Ich denke du wirst keine Klassen und sonstigen Kram (welches für C++
> sprechen würde) anwenden, dann ist es reines C
Aber diese Adruino-IDE unterscheidet nicht, ob ich gerade reines C 
verwende oder C++.

von bla (Gast)


Lesenswert?

Was soll die IDE da auch unterscheiden?
Eine IDE ist im Prinzip nix anderes als ein Texteditor wo man per Menü 
den Compiler aufrufen kann.

von Cyblord -. (cyblord)


Lesenswert?

bla schrieb:
> Was soll die IDE da auch unterscheiden?
> Eine IDE ist im Prinzip nix anderes als ein Texteditor wo man per Menü
> den Compiler aufrufen kann.

Für den geneigten Arduino-Zombie ist das alles dasselbe. Die 
unterscheiden nicht solche Feinheiten. Compiler, Linker, Debugger, IDE, 
C, C++, Java, Strom, Spannung. Alles dasselbe irgendwie. Unnütze 
Details.

von Waldemar (Gast)


Lesenswert?

EinWort schrieb:
> Aber diese Adruino-IDE unterscheidet nicht, ob ich gerade reines C
> verwende oder C++.

Das war nicht die Frage. Die Frage die ich verstanden habe, war: Welche 
Programmiersprache benutze ich (gerade)... irgendwer behauptet, dass der 
Threadersteller dabei Java benutzt...

Das eine IDE nur ein Texteditor ist, weis jeder (von uns)

von Ulrich F. (Gast)


Lesenswert?

Cyblord -. schrieb:
> Unnütze Details.
Da hast du recht!

Aber da die Frage schon gestellt wurde: Die verwendete Sprache ist C++

von Timm Reinisch (Gast)


Lesenswert?

Waldemar schrieb:

> Ich denke du wirst keine Klassen und sonstigen Kram (welches für C++
> sprechen würde) anwenden, dann ist es reines C

Keinesfalls. Auch klassenloses C++ ist kein C. Struct/enum Syntax, 
Prädeklaration, delete [], boolean, main return 0, void* nur um mal ein 
paar Stichwörter zu nennen.

Viele liebe Grüße
Timm

von Arduinoquäler (Gast)


Lesenswert?

Ulrich F. schrieb:
> Die verwendete Sprache ist C++

Begründung:

- man kann c++ Sprachelemente im Sketch benutzen
- die einbindbaren Libs sind teilweise Klassen

von Waldemar (Gast)


Lesenswert?

Timm Reinisch schrieb:
>> Ich denke du wirst keine Klassen und sonstigen Kram (welches für C++
>> sprechen würde) anwenden, dann ist es reines C
>
> Keinesfalls. Auch klassenloses C++ ist kein C. Struct/enum Syntax,
> Prädeklaration, delete [], boolean, main return 0, void* nur um mal ein
> paar Stichwörter zu nennen.
>
> Viele liebe Grüße
> Timm

...Klassen und sonstigen Kram (welches für C++ sprechen würde)...

aber:

Arduinoquäler hat recht, sehr viele Libs benutzen C++ Elemente, von 
daher ist es zu 99% C++ ;-)

von Jay (Gast)


Lesenswert?

Die Arduino-Programmiersprache heißt mittlerweile offiziell und ganz 
einfallslos

    "Arduino Programming Language"

Die Arduino Programming Language ist abgeleitet von und hieß auch bei 
Arduino mal

    "Wiring"

Was wohl von der Zielgruppe nicht verstanden wurde.

Eigentlich ist es ein eingeschränktes C++ mit einem zusätzlichen 
Preprozessor dessen Output durch einen C++ Cross-Compiler (GCC) gejagt 
wird.

von Ulrich F. (Gast)


Lesenswert?

Jay schrieb:
> Eigentlich ist es ein eingeschränktes C++
Was ist daran eingeschränkt?

Jay schrieb:
> mit einem zusätzlichen
> Preprozessor
Ja!
(muss man aber nicht nutzen)

Jay schrieb:
> durch einen C++ Cross-Compiler (GCC) gejagt
> wird.
Der Compiler aus der AVR Toolchain.
Also der gleiche, welcher  im Atmel Studio verwendet wird.


Die IDE kann man lieben, oder hassen. Egal...
Das muss jeder mit sich selber abmachen...

von Wolfgang (Gast)


Lesenswert?

Waldemar schrieb:
> Das war nicht die Frage. Die Frage die ich verstanden habe, war: Welche
> Programmiersprache benutze ich (gerade)... irgendwer behauptet, dass der
> Threadersteller dabei Java benutzt...

Er benutzt Java, weil die Arduino IDE in Java geschrieben ist. Das 
Programm, was er damit schreibt, ist C/C++ Quellcode und der wird dann 
mit dem GCC übersetzt. So kompliziert ist das doch nicht.

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.