Forum: Mikrocontroller und Digitale Elektronik Hilfe bei stm32 Wahl


von Paul G. (paul_g210) Benutzerseite


Lesenswert?

Hallo

Ich bin auf der Suche nach einem passenden STM32 Mikrocontroller für 
mein EKG Projekt.

Leider hat mich die schiere Wahl an Geräten in ST's MCUFinder 
erschlagen, selbst mit Filtern.

Da ich noch Anfänger bin sind mir da ein paar Sachen unklar.

Meine Rahmenbedingungen sind (noch variabel):
Daten (~3x32bit) sollen mit 2kHz über SPI aus meinem EKG-Frontend 
ausgelesen
werden und auf einem Speichermedium geschrieben werden (am besten auf 
eine Micro Usb Karte). Evtl noch ein winziges E-Ink Display für Status 
und eine USB Buchse an die ich auch ein USB Stick zum speichern hängen 
kann.

Im Moment praktiziere ich noch auf dem Blue Pill, da ich aber die FatFs 
für die SD-Karte verwende ist der RAM mit seinen 20kB schon kritisch

Da ich eigentlich nur Daten aus dem Frontend auf ein Speichermedium 
schaufeln will und die Auswertung (Umwandlung in grafische EKG Daten) 
dann extern am PC von einer Software gemacht wird brauche ich denke ich 
mal jetzt nicht die MEGA CPU Power...

Vom Package her würde ich LQFP64 bevorzugen, ich habe ja eigentlich 
nicht viel Peripherie.

Vom Speicher her hätte ich gern genug Spielraum und möchte jetzt nicht 
eingeengt sein wie auf dem Blue Pill, evtl im Mittelfeld .

Den ganzen Hokuspokus wie DSP,Crypto,Ethernet, TFT brauche ich nicht.

Unklar ist mir im Moment völlig wo genau jetzt der Unterschied von SDIO 
und SDMMC ist. Außerdem weiß ich nicht ob jetzt nur "USB" oder "USB 
OTG_FS" ausreicht... "USB OTG_HS" habe ich mal außer Betracht gelassen. 
Auf jeden Fall möchte ich nicht extra noch einen externen USB 
Controller.

Kann mir das jemand oberflächlich anreißen?

PS, Preis ist eher zweitrangig, das wird nur ein Einzelstück und keine 
Massenproduktion :)

: Bearbeitet durch User
von Pete K. (pete77)


Lesenswert?

Such Dir den Controller mit passendem, oder besser noch etwas größerem, 
RAM aus.
Das Beiwerk musst Du ja nicht nutzen, einige Sachen sind auch nicht alle 
gleichzeitig benutzbar (siehe Konfigurator).

Ein STM32F4 sollte reichen. Vielleicht hast Du Zugriff auf ein Discovery 
Board?

P.S.: Als Anfänger ist das aber eine sportliche Aufgabenstellung.

: Bearbeitet durch User
von Ingo Less (Gast)


Lesenswert?

Nimm den, der deinen Anforderungen entspricht, das was du nicht 
benötigst, benutzt du einfach nicht. Schau mal nach einem STM32F405

von Paul G. (paul_g210) Benutzerseite


Lesenswert?

Pete K. schrieb:
> Ein STM32F4 sollte reichen.

Da hatte ich auch schon einen Favoriten: STM32F413RH

Mich verwirrt halt nur SDIO und SDMMC und ob man mit USB-OTG-FS
ohne viel Aufwand hinbekommt ohne externe PHY's (was auch immer das ist) 
:D

von Paul G. (paul_g210) Benutzerseite


Lesenswert?

okay, ich sehe gerade die F4 Reihe hat sowieso nur SDIO, wo muss ich 
dann bei OTG-FS und OTG-HS achten?

von Niklas Gürtler (Gast)


Lesenswert?

Paul G. schrieb:
> am besten auf eine Micro Usb Karte

Was soll das sein?

Paul G. schrieb:
> Unklar ist mir im Moment völlig wo genau jetzt der Unterschied von SDIO
> und SDMMC ist

Es gibt keinen. ST ist irgendwann auf die Idee gekommen das 
umzubenennen.

Paul G. schrieb:
> Außerdem weiß ich nicht ob jetzt nur "USB" oder "USB OTG_FS"
> ausreicht...

Wenn du USB Sticks ansteuern willst, brauchst du OTG. FS/HS je nach 
Geschwindigkeit. Die einfache "USB" Peripherie kann nur device.

Paul G. schrieb:
> brauche ich denke ich mal jetzt nicht die MEGA CPU Power..

Kommt drauf an.

Das aufzeichnen auf eine SD-Karte (per SDIO/SDMMC) ist einfacher als auf 
einen USB-Stick. Außerdem garantieren dir SD-Karten bestimme Datenraten. 
Je nachdem brauchst du aber eine Menge RAM.

Was für eine Aufzeichnungs-Datenrate brauchst du denn? Deine Anforderung 
klingt nach 24 KByte/Sec. Das geht ja noch. Da würde ich zu einem 
STM32F407 raten, der hat genug internen RAM um die Daten zu puffern, 
SDIO für die SD-Karte und auch OTG. Die SDIO-Peripherie hat einen Bug 
und kann nur 33MHz aber das sollte locker reichen.

Pete K. schrieb:
> P.S.: Als Anfänger ist das aber eine sportliche Aufgabenstellung.

In der Tat!

Paul G. schrieb:
> und ob man mit USB-OTG-FS
> ohne viel Aufwand hinbekommt ohne externe PHY's (was auch immer das ist)
> :D

Ja für FS brauchst du keinen externen PHY (ein IC welches die 
USB-Signale erzeugt/umwandelt). Für HS brauchen fast alle STM32 einen 
externen PHY. USB, insbesondere Host, ist ziemlich komplex, "ohne viel 
Aufwand" passt nicht so ganz. Es gibt natürlich Bibliotheken, aber wenn 
man damit Probleme hat wird's auch kompliziert.

von Paul G. (paul_g210) Benutzerseite


Lesenswert?

@ Niklas Gürtler

Danke, das grenzt die Wahl gleich deutlich ein. Also dann OTG-FS, das 
war sowieso nur optional, primär ist wirklich die Micro "SD!" Karte ;) 
Wenn das alles klappt und ich bekomme langeweile wäre es schön noch USB 
zu haben um sich daran die Zähne auszubeißen :)

Niklas Gürtler schrieb:
> Was für eine Aufzeichnungs-Datenrate brauchst du denn? Deine Anforderung
> klingt nach 24 KByte/Sec.

Also ich lese für die drei Kanäle des EKG Chips 3x ein 32bit Frame aus, 
das ganze höchstens 2000 mal in der Sekunde. In dem Frame steckt aber 
praktisch nur 24bit Daten, der Rest ist Adresse. Die drei Frames sollen 
dann Platzsparend auf die SD-Karte (vermutlich im binärformat).

: Bearbeitet durch User
von Johannes S. (Gast)


Lesenswert?

als fertiges Board ist dieses vielleicht passend:
https://de.aliexpress.com/item/4000094075769.html
SD Slot und USB Buchse hat es schon, auch ein 32 MBit Flash (das man 
durch umlöten auf 128 MBit hochrüsten könnte). Anschlüsse sind alle 
rausgeführt, Ethernet und TFT sind damit auch gut möglich.
Auch mit dem F407VG, mit 1 MB Flash und 192 kB RAM.
Gibt es bei mehreren Ali und eBay Anbietern, auch mit Lieferung aus EU.

von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Johannes S. schrieb:
> SD Slot und USB Buchse hat es schon,

Sieht aber nicht so aus als wäre es OTG fähig?

Johannes S. schrieb:
> Ethernet und TFT sind damit auch gut möglich.

Wenn man das alles nachrüsten will, kann man sich die Arbeit auch sparen 
und ein Board nehmen was das alles schon hat. Das STM32F746NG Discovery 
hat USB OTG (auch HS), microSD-Slot via SDIO, 8 MB SDRAM (gut zum 
Puffern bei höheren Datenraten, und für Grafik-Display), Display, 
Ethernet... Allerdings etwas unhandlich und viel teurer. Damit ist es 
möglich die 10 MByte/Sec Aufzeichnungsgeschwindigkeit zu erreichen, 
welche SD-Karten mit High-Speed und Speed Class 10 bieten. Ist aber 
ziemlicher Softwareaufwand und hier anscheinend gar nicht nötig.

: Bearbeitet durch User
von Paul G. (paul_g210) Benutzerseite


Lesenswert?

Johannes S. schrieb:
> als fertiges Board

Will alles selber löten ;)

von QQ (Gast)


Lesenswert?

Paul G. schrieb:
> ~3x32bit

Sämtliche STM32 besitzen 16 Bit Peripherie, sodass der Umfang eines SPI 
Frames maximal 16 Bit betragen kann.
Unter gewissen Umständen kann das unbequem werden.

von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

QQ schrieb:
> Sämtliche STM32 besitzen 16 Bit Peripherie, sodass der Umfang eines SPI
> Frames maximal 16 Bit betragen kann.

Indem man die SS-Leitung manuell steuert sodass je zwei 16bit-Transfers 
zusammengefasst werden kann man das umgehen. Klappt dann aber nicht mehr 
mit DMA, was bei der genannten Datenrate vermutlich noch nicht so 
kritisch ist.

QQ schrieb:
> Sämtliche STM32 besitzen 16 Bit Peripherie

Einige Peripherie-Module sind 32bit, wie SDIO/SDMMC und OTG_FS/HS. Das 
bezieht sich aber sowieso nur auf das Bus-Interface.

: Bearbeitet durch User
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.