Forum: Mikrocontroller und Digitale Elektronik Welches Zubehör für DevKit NUCLEO-H723ZG ?


von Lysandros (lys)


Lesenswert?

Hallo, ich lege zum ersten Mal mit Mikrocontrollern los und habe ein
NUCLEO-H723ZG bestellt. Welches Zubehör würdet ihr empfehlen zum 
Prototypen. Mir fällt ein:
-- USB-Kabel
-- Multimeter
-- RJ45-Kabel
-- ggfs. Jumpers

Vielen Dank

von Sebastian R. (sebastian_r569)


Lesenswert?

Lysandros schrieb:
> ich lege zum ersten Mal mit Mikrocontrollern los und habe ein
> NUCLEO-H723ZG bestellt.

Mit einem Porsche das Fahren lernen ist vielleicht etwas ambitioniert, 
oder?

Ein oller Arduino und eines dieser typischen Startsets mit ein paar LEDs 
und Tastern wäre zum Einstieg sicher besser für die Lernkurve und das 
Frustgefühl.

Einem H7 (auf dem fast schon Unix laufen kann) Ethernet beizubringen ist 
kein typisches Anfängerprojekt.

Sowas:
https://amzn.eu/d/7zXuBr6

: Bearbeitet durch User
von Harry L. (mysth)


Lesenswert?

Sebastian R. schrieb:
> Mit einem Porsche das Fahren lernen ist vielleicht etwas ambitioniert,
> oder?

Das ist schon fast ein F1-Bolide.
Für Einsteiger vollkommen ungeeignet!

von Uwe B. (Firma: TU Darmstadt) (uwebonnes)


Lesenswert?

Die Teile langen bei weiten. Nucleo, Usb Kabel, PC und Software sind 
fuer den Start genug. Die Lernkurve ist aber steil...

von Wastl (hartundweichware)


Lesenswert?

Uwe B. schrieb:
> Die Lernkurve ist aber steil.

Mal schnell ein einfaches Projekt mit CubeMX zusammenklöppeln,
das geht schnell, funktioniert vielleicht sogar, aber lernen
tut man dabei nix.

von Thomas T. (runout)


Lesenswert?

Lysandros ist ein echter Witzbold mit nicht zu unterschätzender 
Hybris...
Referenz-Manual hat über 3300 Seiten
SDIO hab ich bis heute nicht am laufen...

STM32F401RE wäre schon sportlich genug.

Hinweis:
Hüte dich vor STM-Flyern mit Schmetterlingen drauf!

Runout

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Ein paar LED schaden sicher nicht und passende Vorwiderstände. Sonst 
musst du gleich mal ein CDC Device implementieren, um Feedback vom 
Controller zu bekommen. Vllt. sogar ein LC-Display mit dazu, die kosten 
ja nix.

von Peter (pittyj)


Lesenswert?

Ich habe so etwas ähnliches für den H743.
Dort sind auf dem Board gleich 3 LEDs mit drauf. Die ersten 
Blinky-Programme gehen auch ohne extra Hardware. USB-Kabel reicht, davon 
hat man ja eh genug herumfliegen.
Die Cube-IDE geht ganz prima, da kann man sogar interaktiv debuggen.

Wenn die Blinkys laufen, muss man sehen, in welche Hardware-Richtung man 
gehen möchte: AD-Verarbeitung. Oder Bus-Programmierung (SPI, I2C). Timer 
Anwendungen. Dann kauft man passend dazu.

ST lieferte bei mir auch einiges an Beispielen mit, gut zum lernen.
USB-CDC war z.B. mit dabei.

Und letztendlich lernt man auf einem nackten ST mehr, als in der Arduino 
Kindergartenwelt.

von Sebastian R. (sebastian_r569)


Lesenswert?

Peter schrieb:
> Und letztendlich lernt man auf einem nackten ST mehr, als in der Arduino
> Kindergartenwelt.

Magst du das näher erläutern?

Allein was die Anzahl und Möglichkeiten der Konfigurations- und 
Timer-Register angeht, was die Register/Fuses für Clock-Sources 
angeht,... ist ein 8bit-AVR erst einmal deutlich übersichtlicher.

Die Arduino IDE ist im Vergleich zu Eclipse schlank und übersichtlich 
aufgebaut und bietet erst einmal alles, was man als Anfänger benötigt.

Ob es nun while(1){} oder loop(){} heißt, macht für die 
Programmier-Sammel-Erfahrung keinen Unterschied.

Die IDE nutzt normales avrgcc. Du kannst deine LED mit zwar mit 
digitalWrite(LED, 1); einschalten, aber PORTB |= (1<<PORTB1); geht genau 
so, wie man es mit avrgcc halt macht.

Ja, es gibt für viele Dinge Libraries, die mann nutzen kann, die einem 
ein bisschen Arbeit abnehmen, aber mit der Logik müsste CubeMX für dich 
auch Kindergartenwelt sein, weil man ja nicht wie echte Männer 
Bitpopelei auf Fußpilzebene betreibt?

: Bearbeitet durch User
von Peter (pittyj)


Lesenswert?

Sebastian R. schrieb:
> Magst du das näher erläutern?

Ich habe diverse Leute erlebt, die nicht aus der 'betreuten' 
Arduino-Welt herausgefunden haben.
Wenn man etwas mehr möchte, dann muss man sich mit den unterliegenden 
Subsystemen beschäftigen. Das muss jetzt nicht über Bitfriemelei sein, 
denn STM bietet einiges in Set/Get Funktionen an. Aber man muss die 
Datenblätter lesen und manche Register setzen.
Beispiel:
Mein STM kann SPI auf 3 verschiedene Arten ansprechen: Polling, 
Interrupt und DMA Betrieb. STM stellt die Init() Funktionen im 
Sourcecode zur Verfügung, wo man sich dann auch die Unterschiede 
anschauen kann.
Für einen professionellen Einsatz muss man dann auch die richtige Modi 
wählen. Das geht nicht, wenn man nur ein paar Blinkys mit DigitalWrite, 
oder AnalogRead (genaue Funktionsnamen kenne ich nicht) benutzt.

von Sebastian R. (sebastian_r569)


Lesenswert?

Peter schrieb:
> Das geht nicht, wenn man nur ein paar Blinkys mit DigitalWrite,
> oder AnalogRead (genaue Funktionsnamen kenne ich nicht) benutzt.

Nur die Arduino IDE und das Ökosystem zwingt einen nicht dazu, diese 
Funktionen zu nutzen.

Du kannst normal die AVR-Bibliotheken einbinden (z.B. #include 
<avr/power.h>) und kannst auch ganz normal die Register manipulieren.

Ich nutze die Arduino IDE als schlanke Alternative zu VSCode oder MPLAB. 
Im Prinzip ist es nur Notepad++ mit avrgcc und avrdude eingebaut.

Meine Funktion, um Timer0 beim ATTiny85 in der Arduino IDE zu 
konfigurieren sieht z.B. so aus. Komplett ohne etwas, das nur mit 
Arduino geht.
1
void setupT0() {
2
3
  // Normal port operation, OC0A/OC0B disconnected, Normal Timer operation
4
  TCCR0A = (0 << COM0A1) | (0 << COM0A0) | (0 << COM0B1) | (0 << COM0B0) | (0 << WGM01) | (0 << WGM02);
5
6
  // Ext. T0 as input. Rising edge
7
  TCCR0B = 0;
8
  TCCR0B = (0 << FOC0A) | (0 << FOC0B) | (0 << WGM02) | (1 << CS02) | (1 << CS01) | (1 << CS00);
9
}

Genau so, wie man es auch in Atmel Studio oder  MPLAB oder eben auch 
beim STM32 "bare metal" machen würde.

: Bearbeitet durch User
von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Sebastian R. schrieb:
> Mit einem Porsche das Fahren lernen ist vielleicht etwas ambitioniert,
> oder?

Naja, der Porsche ist doch bekannt als der am Einfachsten zu fahrende 
Sportwagen wegen des gutmütigen Fahrwerks.

Wer schon programmieren kann und sich auch mit (Digital-)Elektronik 
auskennt und die Zeit und Energie hat wird mit dem H7 schon klar kommen. 
Immerhin hat ST eine relativ gute Dokumentation, IDE, Libraries.

Mit "Bare Metal" / Registerprogrammieren würd ich sowieso nicht mehr 
anfangen, sondern direkt mit einem High-Level API. Allerdings ist das 
Arduino-API da schon einfacher als z.B. die STM32 Cube-APIs. Aber mit 
vorhandenen Programmierkenntnissen wird es schon gehen.

Thomas T. schrieb:
> SDIO hab ich bis heute nicht am laufen...

Das ist aber bei allen STM32-Varianten identisch. Und die 
ST-Dokumentation (inkl. Errata!) sowie die SD-Spezifikation enthält 
eigentlich alle Informationen die man dazu braucht.

Schwieriger sind solche Unterfangen bei Controllern und zugehöriger 
komplexer Software mit wenig Dokumentation. Da muss man dann viele 
educated guesses machen, und dafür braucht es Erfahrung.

: Bearbeitet durch User
von Lysandros (lys)


Lesenswert?

Wow, OK
Vielen Dank für eure Hilfestellung :D
Wollte keinen beleidigen, es brauch nicht zu eskalieren.
Beste Grüße

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.