Forum: Mikrocontroller und Digitale Elektronik Ist besser ein Arduino oder Nucleo


von Anfaenger (Gast)


Lesenswert?

Guten Abend, was ist denn besser - Arduinos oder Nucleos? Beide haben 
Lötbeine für Ein- und Ausgänge und man kriegt Displays z.B. für beide. 
Kann man sagen, welche besser oder nicht besser sind?

von DAVID B. (bastler-david)


Lesenswert?

Von Nucleos habe ich zwar noch nie was gehört aber was hast du den genau 
vor ?

Geht es dir um Leistung/verbrauch oder einfach ums lernen ?

Für Arduino Zb gibt es viele step by step Anleitungen und fertige 
Sachen.

von Anfaenger (Gast)


Lesenswert?

DAVID B. schrieb:
> Von Nucleos habe ich zwar noch nie was gehört

Hi schau mal, so sehen die aus. Die können auch so Sachen wie Arduinos. 
Die Lötbeine sind bei vielen Modellen dort sogar genauso ähnlich 
gemacht, wie bei Arduinos, damit man Teile auch darauf an die Lötbeine 
dranmachen kann:

https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-mpu-eval-tools/stm32-mcu-mpu-eval-tools/stm32-nucleo-boards/nucleo-f439zi.html

Beitrag #6000666 wurde von einem Moderator gelöscht.
von Veit D. (devil-elec)


Lesenswert?

Hallo,

die STM Nucleoboards haben "nur" Steckpfosten die zu Arduinoshields 
kompatibel sind. Das machen auch andere Hersteller so. Wobei man da noch 
aufpassen muss ob die wirklich verwendbar sind wegen 3,3V und 5V. 
Prinzipiell sind die erstmal nur alle Steckkompatibel. Von 
Funktionkompatibel möchte ich da nicht reden. Muss man nachlesen.

STM mbed ist so ähnlich wie Arduino mit den fertigen Funktionen. Man 
muss nicht beim Urschleim anfangen um irgendwelche Pins schalten zu 
können. Solange man sich auf der Ebene bewegt sollte es keine 
Unterschiede machen. Nur der STM µC ist von Haus aus schneller und kann 
mehr. Bei den Arduinoboards reden wir mit paar Ausnahmen von 8Bit µC. 
Wobei das erstmal nichts zu sagen hat. Große Netzwerkgeschichten kannste 
damit allerdings nicht machen. Da würde ich dann zu einem ESP32 raten.

Falls du irgendwann aus der Komfortzone raus möchtest ist das erlernen 
der Grundlagen mit Hardwarezugriff auf dem 8Bitter natürlich einfacher 
zuverstehen. Das wissen kann man dann übertragen auf andere µC. Wenn es 
nur Hobby ist kann es allerdings passieren man will gar nichts anderes 
mehr.

Für Arduino gibt es deren IDE die erstmal ausreichend einfach gehalten 
ist. Man kann auch Atmel Studio nehmen. Für STM wird es ähnliche große 
IDEs geben.

Also. Du kannst den Sprung mit dem Nucleo gern wagen. Oder versuchst 
dich erstmal mit einem Arduinoboard. Lehrgeld muss man so oder so 
bezahlen. In beiden Fällen kannste dich sachte vortasten und später dich 
auf die direkte Hardwareebene begeben. Programmieren selbst ist davon 
unabhängig. Das hat weniger mit Hardware und mehr mit Logik zu tun. Für 
alles kann man in Foren nett fragen.

Es ist schwierig eine allgemein gültige Antwort zu formulieren. Es geht 
nach deinem Wissensstand, Vorliebe und was du dir zutraust. Oder ob du 
nur erstmal schnuppern möchest.

von hopsassa (Gast)


Lesenswert?

Wenn Du so eine Frage stellen musst, ist Arduino klar besser für Dich!

von Einer K. (Gast)


Lesenswert?

Veit D. schrieb:
> die STM Nucleoboards haben "nur" Steckpfosten die zu Arduinoshields
> kompatibel sind
Das ist die eine Seite der Medaille.

Eine Weitere, dass STM die Integration in die Arduino IDE aktiv 
unterstützt.
https://github.com/stm32duino/Arduino_Core_STM32

Es gibt wohl noch ein paar Hürden, aber es wächst so langsam zusammen 
....

von Veit D. (devil-elec)


Lesenswert?

Arduino Fanboy D. schrieb:

> ... Eine Weitere, dass STM die Integration in die Arduino IDE aktiv
> unterstützt.
> https://github.com/stm32duino/Arduino_Core_STM32

Interessant zu wissen. Vielleicht kann man das einmal gebrauchen. Auf 
jeden Fall für den TO gut zu wissen.

Wobei ich den 8Bittern erstmal treu bleibe. Die neuen ATmegas sind 
einfach zu interessant für mich. :-)   Das meinte ich auch mit "man 
möchte vielleicht gar nicht mehr weg aus dem Ökosystem".  :-)   Zudem 
man sich in netten Foren auskennt und hier und da auch viele nette Leute 
kennt.  :-)

von Atemis H. (at0)


Lesenswert?

Veit D. schrieb:
> Die neuen ATmegas sind
> einfach zu interessant für mich.

Welche Neuerungen enthalten die denn?

von Atemis H. (at0)


Lesenswert?

Anfaenger schrieb:
> Guten Abend, was ist denn besser - Arduinos oder Nucleos? Beide haben
> Lötbeine für Ein- und Ausgänge und man kriegt Displays z.B. für beide.
> Kann man sagen, welche besser oder nicht besser sind?

Die Einarbeitung dauer für beide nicht wirklich lange. Am besten du 
schaust dir beide an und benutzt dass was dir besser gefällt.
Die stm32 Mikrocontroller der Nucleo Baords haben jedenfalls mehr 
Features bzw. Peripherie und sind höher getaktet.
Aber das ist für den Anfang ziemlich egal.

von Veit D. (devil-elec)


Lesenswert?

Atemis H. schrieb:
> Veit D. schrieb:
>> Die neuen ATmegas sind
>> einfach zu interessant für mich.
>
> Welche Neuerungen enthalten die denn?

Bitte schön.   :-)

http://ww1.microchip.com/downloads/en/DeviceDoc/megaAVR-0-series-Family-Data-Sheet-40002015C.pdf

von Guest (Gast)


Lesenswert?

Genaugenommen musst du dich zwischen Arduino oder einer normalen IDE für 
C wie beispielsweise Atollic entscheiden.

Arduino ist nicht das Board sondern die Plattform bzw. die 
"Programmierumgebung" + Hardware (Shields etc.).

Du kannst sowohl die "Arduino Boards" mit Atmel als auch die Nucleo 
Boards mit STM32 mit der Arduino IDE Programmieren. Ich persönlich bin 
ein Freund von STM32. Leistungsstärker sind zumindest, wenn man die 
verbreiteten Arduino Boards nimmt die STMs, es gibt aber natürlich auch 
entsrechend dicke 32Bit Atmels. Ich persönlich finde es für die meisten 
Projekte etwas übertrieben C++ (Arduino IDE) zu benutzen und verwende 
Lieber C, das ist aber Geschmackssache. Wenn du dich wirklich mit der 
Materie beschäftigen willst nimm einen STM32 und fang mit C an. Im 
ersten Moment ist das schwieriger aber dafür lernt man auch was über den 
Controller und nimmt nicht blind hin das der Arduino irgendwas macht 
ohne zu wissen was er macht. Mit der HAL und CubeMX ist es auch wirklich 
keine Herausforderung mehr einen STM32 ans laufen zu bekommen. Wenn ich 
da an die SPL zurück denke ist das mittlerweile wirklich 
Nutzerfreundlich. Atollic für STM ist im übrigen gratis von ST 
erhältlich. Ich würde allerdings von der CubeIDE abraten die ist 
momentan noch etwas verbuggt. Was meiner Meinung nach der Größte 
Nachteil an der Arduino IDE ist, ist das man im Prinzip nichts über das 
lernt was man da tut. Man kann nicht debuggen und die Bibliotheken haben 
einen Riesen Overhead. Ich mein schön und gut man macht 
digitalWrite(xyz) aber dafür braucht der Befehl 20 Takte was normal 
einen dauert. Und wenn man dann anfängt in der ArduinoIDE in die 
Register zu schreiben kann man auch gleich In Atmel Studio oder sonst 
was in C Programmieren.

von chris (Gast)


Lesenswert?

>Ist besser ein Arduino oder Nucleo

Ganz klar ein Arduino Uno. Die Software ist so ausgereift, dass alles 
funktioniert.
Die STM32Duino Umgebung ist eine Art "Experimentalumgebung" bei der 
alles möglich nicht funktioniert. Für Anfänger nicht zu empfehlen.

von Rocket scientist (Gast)


Lesenswert?

Anfaenger schrieb:
> Ist besser ein Arduino oder Nucleo

Ganz klar: Lego ist besser.
In deinem Fall. Und eine Tüte Deutsch dazu.

von Boris O. (bohnsorg) Benutzerseite


Lesenswert?

Veit D. schrieb:
> Für STM wird es ähnliche große
> IDEs geben.

Die sind wirklich groß, wenn man die freie und moderne CubeIDE nimmt, 
kommen je Prozessorgeneration zwischen 0.5 und 1.5GByte Firmware dazu. 
Und für den Einstieg finde ich schon die Clock-Konfiguration eines 
ARM-Kerns überdimensioniert. Mit einem Arduino bekommt man die meisten 
LEDs zum blinken, unabhängig von Form oder Farbe (der LED).

von oldeurope O. (Gast)


Lesenswert?

Beim Arduino kann man ein DIP28 IC benutzen.
Das ist ein KO-Ktiterium für mich.
Ich würde mir keinen UNO mit SMD-Atmega kaufen wollen.

LG
old.

von MaWin (Gast)


Lesenswert?

Anfaenger schrieb:
> was ist denn besser - Arduinos oder Nucleos

Besser für einen Anfänger: ein Arduino.

Dessen Inbetriebnahme besteht daraus: ArduinoIDE installieren, Original 
Arduino (z.B. Uno) an USB anstecken, Beispielprogramm blink auswählen 
und Hochladen drücken, fertig, LED blinkt.

Bei einem chinesischen Billigarduinoboard kommt schon das Installieren 
des CH340 USB Treibers dazu bevor es funktioniert.

Zum Nucleo kann ich nichts sagen, aber zum STM32 BluePill board aus 
China:

Da wird die Prozedur zum Spiessrutenlauf:
ArduinoIDE installieren, nicht die Neueste sondern genau eine, 1.6.4.
In Konfigurationsdialog URL zur STM32uino Seite eintragen. Im 
Boardmanager die erst jetzt auftauchenden Boards nachinstallieren.
Ein BAT zum Installieren des STM32 Supports aufrufen, ein BAT zum 
Installieren des STM32uino Treiber aufrufen.
Einen FTDI USB->seriell Wandler kaufen und den blue pill daran 
anstecken. Blue pill in Programmiermodus umjumpern.
Per seriellem Loader den STM32uino bootloader auf das blue pill board 
spielen. Abstecken, jumper zurück, auf dem blue pill board auf den 10k 
R10 einen 1k8 0603 SMD Widerstand parallel auflöten, den blue pill 
direkt in USB stecken.
In ArduinoIDE den blue pill auswählen und den Programmierweg, aber kein 
port auswählen. Blink Beispiel auswählen, den LED Pin anpassen (soll 
wohl inzwischen nicht mehr nötig sein), das Programm hochladen, nun 
erscheint der port, port auswählen und nun kann er blinken.

Das hat alles mit der Einfachheit eines Arduino Konzeps gar nichts mehr 
zu tun, das ist erheblich komplizierter mit erheblich mehr Möglichkeiten 
in eine nicht funktionierende Sackgasse zu laufen als selbst vor 30 
Jahren den 68HC11 mit Buffalo Monitor über RS232 auf dem Eval board zu 
programmieren.

Arduino dient also nur noch als Lockmittelwort für Anfänger, dahinter 
verbirgt sich inzwischen ein Haufen unausgegorener Scheisse, beworben 
mit 'besser, mehr Performance'. Dabei kostet das Arduino Konzept eh 
Performance um den Faktor 100, wer Performance braucht, programmiert 
nicht Arduino-Style, sondern bare bone.

von chris (Gast)


Lesenswert?

MaWin (Gast)
>Das hat alles mit der Einfachheit eines Arduino Konzeps gar nichts mehr
>zu tun, das ist erheblich komplizierter mit erheblich mehr Möglichkeiten
>in eine nicht funktionierende Sackgasse zu laufen als selbst vor 30
>Jahren den 68HC11 mit Buffalo Monitor über RS232 auf dem Eval board zu
>programmieren.

Das hast Du sehr gut auf den Punkt gebracht und ich kann zu 100% 
zustimmen.

von Larry (Gast)


Lesenswert?

> Performance um den Faktor 100

Jeder steinalte Schnarpel-PIC hängt mit XC8 als Compiler
auch einen uino-STM32F103 ab.
Mindestens bei IO.

> Mit einem Arduino bekommt man die meisten LEDs zum blinken

Zu mehr taugt es auch nicht.

> IDE die erstmal ausreichend einfach gehalten ist

Nicht einfach, sondern primitiv.

> finde ich schon die Clock-Konfiguration eines
> ARM-Kerns überdimensioniert

Wer die Komplexität nicht will, kann einfach ein paar
magische Werte in die passenden Register schreiben.
Dazu braucht man aber zumindest etwas Hirn.


Aber Lego ist vermutlich doch das Beste.

von Stefan F. (Gast)


Lesenswert?

Boris O. schrieb:
> Und für den Einstieg finde ich schon die Clock-Konfiguration eines
> ARM-Kerns überdimensioniert.

Nach einem Reset laufen sie samt der ganzen Peripherie Standardmäßig auf 
dem internen R/C OSzillator. Je nach Modell mit 8 MHz oder 2 MHz. Für 
den Einsteig muss man sich mit der Clock-Konfiguration genau so wenig 
befassen, wie bei AVR, nämlich gar nicht.

von Stefan F. (Gast)


Lesenswert?

Nachdem ich beide Mikrocontroller-Serien intensiv kennen gelernt habe, 
bin ich davon überzeugt, dass der Einstieg bei STM32 erheblich mühsamer 
ist, als bei AVR.

Dafür sind die STM32 allerdings schneller, haben mehr Funktionen und man 
bekommt sie mit ziemlich vielen Pins, wenn man das braucht.

Auf der anderen Seite nutze ich dennoch gerne AVR Controller, weil diese 
im DIP Gehäuse zu haben sind. Das passt gut zu meiner Methode, auf 
Steckbrett zu experimentieren und die finalen Schaltungen auf 
Lochraster-Karten zu löten.

Andererseits gibt es zahlreiche STM32 Boards, die auf 
Steckbretter/Lochraster passen und Dupont Kabel sind in billig zu haben.

AVR setze ich bevorzugt für kleine Aufgaben ein, wo ich nur wenige I/O 
Pins brauche. Am meisten verwendet ich die kleinen ATtiny13 (wenn mein 
Vorrat aufgebraucht ist, werde ich wohl zum ATtiny45 wechseln) und 
ATtiny2313.

Bei größeren Schaltungen geht es dann schon in die Richtung Arduino Nano 
Klon und Bluepill, insbesondere wenn ich die USB Schnittstelle brauche.

Ich empfehle Dir auch, beide auszuprobieren. Auf meiner Homepage findest 
du Anleitungen mit Codeschnipseln, damit kannst du dir einen ersten 
Eindruck verschaffen: http://stefanfrings.de/

von Franz (Gast)


Lesenswert?

Ich selber stand auch schon vor der Entscheidung, wenn du was 100% 
Arduinokompatibel willst, dann gibt es nur die Teensy Boards:
https://www.pjrc.com/store/

von Christopher J. (christopher_j23)


Lesenswert?

Das Thema gab es doch vor ein paar Tagen erst:
Beitrag "Arduino oder Nucleo"

von MaWin (Gast)


Lesenswert?

Franz schrieb:
> wenn du was 100%
> Arduinokompatibel willst, dann gibt es nur die Teensy Boards

?!?

Erstmal ist ein Arduino Uno zu Arduino kompatibel.

Beim Teensy beginnt es schon mit dem Problem, dass es mit 3.3V statt 5V 
läuft und damit mit fast gar keinem 'shield' kompatibrl ist, und dann 
auch noch völlig andere Hardware mit absolut anderem Tempo mitbringt.

Inkompatibler gehts kaum.

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.