Forum: Offtopic Development Board für die Schule


von Thomas S. (irfp450)


Lesenswert?

Hallo,

ich suche ein günstiges development board, das im Unterricht zum lernen 
von Programmieren genutzt werden kann. Hab da nicht so viel Erfahrung.

Ich dachte zuerst an das MSP430 LaunchPad, aber irgendwie bin ich nicht 
überzeugt.

Mein Lehrer hat mir folgende Voraussetzungen gegeben:

Min. 4kb flash
Min. 8 I/O pins
Interner ADC
Mit java programmierbar
Kostenlose software
Max. 15€/stk.

Könnt ihr mir welche empfehlen?

Danke

von Bülent C. (mirki)


Lesenswert?

Thomas Schlegel schrieb:
> Mit java programmierbar

Daran wirst Du evtl. scheitern ein gescheites Board zu finden. Vorallem 
das in Verbindung mit den 4kb Flash Speicher.

Auf einen uC Dev Board Java Code auszuführen ist ein Widerspruch in 
sich.
Wollt ihr Jave lernen oder Systemnahe Programmierung?

von Thomas S. (irfp450)


Lesenswert?

Bülent C. schrieb:
> Auf einen uC Dev Board Java Code auszuführen ist ein Widerspruch in
> sich.

Habe ich mir schon in der Schule gedacht. Der Lehrer wollte es so.

von Jeffrey L. (the_dude)


Lesenswert?

Für hardwarenahe programmierung:
STM32 Discovery-Board mit Keil µVision.

Für Java: eclipse und eine WINDOWSANWENDUNG


Java auf µC ist Irrsinn...

von Marek N. (Gast)


Lesenswert?

Arduino?

von Vn N. (wefwef_s)


Lesenswert?

Thomas Schlegel schrieb:
> Habe ich mir schon in der Schule gedacht. Der Lehrer wollte es so.

Wenn er sich als zusätzliche Möglichkeit eine abstraktere Programmierung 
offen halten will, soll er halt einen Arduino oder ähnliches verwenden. 
Oder sich sein Board selbst suchen.

von Jeffrey L. (the_dude)


Lesenswert?

auch beim Adruino programmiert man nicht in Java. Die Programmsprache 
hier heist python und ist ein stark vereinfachter C-Syntax.

Was Arduino und Java verbindet ist die IDE: die wurde in Java 
geschrieben, wovon der Anwender aber nichts sieht...


Mal als Begründung warum Java nicht zu µC passt:
Java ist eigentlich eine Interpretersprache welche zur Laufzeit 
compiliert, besser gesagt interpretiert, wird - hierfür benötigt man 
eine Laufzeitumgebung bzw ein framework.

Microsoft hat sowas ähnliches mit dem .NET-Framework und C# (Was meines 
Erachtens gegenüber Javas um Welten vorraus ist!!)

Die "Java-"Eigneschaften verliert Dein Programm auf einem µC - der 
Compiler muss den Syntax zu Maschinencode linken und was bleibt ist ein 
Programm, dessen Ablauf mit Java-Syntax geschrieben wurde - du hast aber 
weder ein Framework noch ein Interpreterprogramm auf Deinem µC.

Welches Board und welche Entwicklungsumgebung schlägt Dein Lehrer den 
vor!?

von Vn N. (wefwef_s)


Lesenswert?

Jeffrey Lebowski schrieb:
> auch beim Adruino programmiert man nicht in Java.

Ach? Hat auch keiner behauptet.

Jeffrey Lebowski schrieb:
> Die Programmsprache
> hier heist python und ist ein stark vereinfachter C-Syntax.

Nein. Arduino verwendet C mit entsprechenden Libraries.

Jeffrey Lebowski schrieb:
> Mal als Begründung warum Java nicht zu µC passt:
> Java ist eigentlich eine Interpretersprache welche zur Laufzeit
> compiliert, besser gesagt interpretiert, wird - hierfür benötigt man
> eine Laufzeitumgebung bzw ein framework.

Java ist keine Interpretersprache (im Gegensatz zu Python, welches 
deiner Aussage nach durch Arduino verwendet wird).

von Bülent C. (mirki)


Lesenswert?

Also, Java ist eine objektorientierte Programmiersprache. Der Compiler 
erstellt im Gegensatz zu C keinen Maschinencode sondern einen 
sogenannten Byte-Code. Dieser Java Byte-Code wird von einer JVM 
(Virtuell Machine) ausgeführt.
Daher brauchst Du auf deinem uC eine JVM. Die bekommst Du nicht in die 
4kb reingepresst.
Es gibt uC Dev Board wo man Java Byte code (EJ) ausführen könnte, aber 
der Preis dafür steht im Widerspruch zu den 15 Euro die dir Dein Lehrer 
vorgegeben hat!
So eins z.B:
http://www.st.com/web/en/catalog/tools/FM147/CL1794/SC961/SS1533/PF252535

Will er euch Java lehren, oder die Systemnahe programmierung?
Fürs zweite ist Java nicht empfehlenswert.

Kurz und Knapp, Dein Lehrer - um es mal vorsichtig auszudrücken - hat 
keine Ahnung!

von Mike M. (mikeii)


Lesenswert?

Wenn die Java unbedingt extern laufen lassen wollen: 
http://de.wikipedia.org/wiki/Java_Card

Find ich nur Blödsinn, einfach mal zu sagen, "wir wollen Java".
Kommt wohl daher, dass der Lehrer wo aufgeschnappt hat, dass es einfach 
sein soll. Erklär deinem Lehrer mal was Java ist und was C ist und worin 
die Unterschiede liegen.

von Vn N. (wefwef_s)


Lesenswert?

Bülent C. schrieb:
> Also, Java ist eine objektorientierte Programmiersprache. Der Compiler
> erstellt im Gegensatz zu C keinen Maschinencode sondern einen
> sogenannten Byte-Code. Dieser Java Byte-Code wird von einer JVM
> (Virtuell Machine) ausgeführt.

Wobei dies zwar die Regel, aber nicht zwingend ist, es gibt auch 
Compiler, die Java direkt in nativen Maschinencode compilieren.

von Bülent C. (mirki)


Lesenswert?

vn nn schrieb:
> Bülent C. schrieb:
>> Also, Java ist eine objektorientierte Programmiersprache. Der Compiler
>> erstellt im Gegensatz zu C keinen Maschinencode sondern einen
>> sogenannten Byte-Code. Dieser Java Byte-Code wird von einer JVM
>> (Virtuell Machine) ausgeführt.
>
> Wobei dies zwar die Regel, aber nicht zwingend ist, es gibt auch
> Compiler, die Java direkt in nativen Maschinencode compilieren.

Meinst Du etwa einen JIT-Compiler?
Da wird doch nur zur Laufzeit ein Maschinencode zur Optimierung 
erstelllt!

von Vn N. (wefwef_s)


Lesenswert?

Nein. Ich meine native AOT-Compiler wie Excelsior, GJC oder JNC.

von A. W. (uracolix)


Lesenswert?

Jede Sprache hat ihren Kontext in dem sie angewendet wird, auf µCs ist 
es eher C/C++ (ASM) und auf performanteren Prozessoren halt Java. Atoc 
faellt mir der allseits gehypte Raspberry Pi ein, habe gerade Java-7 mit 
einem Jenkins-Slave dort drauf am laufen (das geht noch) ... bei einem 
Jenkins-Server wird die Uebung jedoch sehr sehr langsam. Es waere in der 
Tat vielleicht sogar eine lustige Idee, ein Klassenzimmer mit einen 
Raspberry-Pi Netz zu bespassen .... allerdings muesste der Lehrer dann 
vielleicht in den Ferien dochmal die Nase etwas tiefer ins Buch stecken.

von Borislav B. (boris_b)


Lesenswert?

Warum hat noch keinen Raspberry Pi erwähnt?

Den kann man in JEDER Sprache programmieren (auch java), IO Pins, ADC 
etc. sind natürlich auch vorhanden. Das einzige was nicht so ganz passt 
ist der Preis. Den Pi gibts erst ab 25€, aber das liegt jetzt auch nicht 
so übermäßig weit über deinem Budget.

Wenn ich mich recht entsinne wurde der Pi ja gerade für solche 
Anwendungen (Schule) entwickelt.

von Max B. (theeye)


Lesenswert?

Je nachdem, wie wichtig welche Anforderung ist, käme auch das 
"nachlöten" von Entwicklungsboards anderer User in Frage.

Preis +
Arbeitsaufwand (löten und testen) -
Java -

Gruß Max

von Marc (gierig) Benutzerseite


Lesenswert?

Boris P. schrieb:
> Warum hat noch keinen Raspberry Pi erwähnt?
>
> Den kann man in JEDER Sprache programmieren (auch java), IO Pins, ADC
> etc. sind natürlich auch vorhanden.

zu Vollständigkeit halber:
Das Ding hat keinen ADC on Board.

von Bülent C. (mirki)


Lesenswert?

Boris P. schrieb:
> Warum hat noch keinen Raspberry Pi erwähnt?

Das Board darf nur max 15€ kosten....

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.