Mir ist aufgefallen, dass einfache ADC nachwievor relativ teuer und schlecht verfügbar sind.
Also so ein ADC mit den im Betreff genannten Eigenschaften ist teurer als ein STM32H7 und dieser beinhaltet 3 16 bit ADCs, nebst der CPU, RAM, Rom etc.
Wie viele von den 16 Bit im Mikrocontroller kannst du denn tatsächlich benutzen? Meine letzte Schaltung mit einem Bluepill Board konnte gerade mal 10 Bits nutzen, der Rest ging im Rauschen völlig unter.
Bei externen ADC hast du die Möglichkeit, die Stromversorgung zu optimieren und Abstand zu anderen getakteten Bauteilen zu halten. So kommt man auf bessere Ergebnisse und die lässt sich der Hersteller bezahlen, denke ich.
Mikrocontroller decken das Low End ab; bessere externe ADCs sind ein
Nischenmarkt.
Nun die ADC im H7 sind nur "schlecht" wegen der CPU.
Also man nehme H7 nutze nur die ADCs (differenziell), SPI slave und DMA.
Leider kann der H7 meines wissens nur Mem DMA, also müss halt:
ADCs continious (interleaved)
ADC DMA ins MEM
DMA MEM-> SPI slave
CPU nach init deaktiviert.
Interne referenz giebts ebenfalls gratis.
Und schon hat man einen ADC der billiger ist als vergleichbare Konkurenz!
Kenne den H7 nicht im Detail:
Kann der MEM->SPI slave getriggert werden auf den abschluss des ADC DMA? (also logischerweise ohne CPU)
Wie verhält sich der Slave wenn er neue daten per DMA erhält wenn die alten noch nicht komplett abgeholt? FIFO?
Wie viel delay entsteht durch diesen DMA murks?
(Timer Triggerung von ADC sowie SPI DMA wenn möglich vermeiden, da weitre logik die den ADC stören könnte)
Wie viele von den 16 Bit im Mikrocontroller kannst du denn tatsächlich
benutzen? Meine letzte Schaltung mit einem Bluepill Board konnte gerade
mal 10 Bits nutzen, der Rest ging im Rauschen völlig unter.
OT: STM32? HAL Calibration einmal zu Beginn gestartet? Das wirkt wahre Wunder in der Beziehung.
Wie viele von den 16 Bit im Mikrocontroller kannst du denn tatsächlich
benutzen? Meine letzte Schaltung mit einem Bluepill Board konnte gerade
mal 10 Bits nutzen, der Rest ging im Rauschen völlig unter.
OT: STM32? HAL Calibration einmal zu Beginn gestartet? Das wirkt wahre
Wunder in der Beziehung.
OT: STM32? HAL Calibration einmal zu Beginn gestartet? Das wirkt wahre
Wunder in der Beziehung.
Naja, alleine das man sowas bei ST machen muss zeigt auf welchen
niedrigen Level der analogkram in den Chips ist.
Gute AnalogIC sind einfach ein anderer Prozess als schnelle MCUs.
Man kann nicht alles haben. Und wenn der Stoersender auf dem Chip
direkt daneben sitzt dann macht das die Lage nicht besser.
Ein weiteres Problem sind natuerlich auch die Stueckzahlen.
Es gibt nicht soviele sinnvolle Anwendungen fuer ADC >16Bit.
Klar, in der Firma nutzen wir die, aber im Bastelzimmer?
Man kann schon einiges machen, sieh Dir mal die ADUC-Reihe von Analog
Devices an. Die kombinieren ARMe oder auch MCS-51 mit A/D-Wandlern.
Hab ich vor 10Jahren mal gesehen. Waren damals sauteuer und hatten
diesen schraegen MCS51 und wurden deshalb aus einem Projekt gekippt.
Gibt es die noch? :)
Bei'm Halbleiter ist es ziemlich wurscht, wieviel Gatter, Zeugs, etc. drinnen ist (Jaaa, wenn's nicht grad so viel sein muss, dass es Platzprobleme gibt oder einen exotischen Prozess braucht). Entscheidend fuer den Preis ist fast nur die Stueckzahl, in der das Ding hergestellt wird.
Ein Cableequalizer ist auch im chinesischen Allerwelts HDMI-2.x Receiverchip deutlich billiger und mehrfach vorhanden als wenn ich einen dedizierten 12G-SDI Equalizer kaufe. Ist sicher genau die selbe Schaltung, nur wird halt deutlich mehr Amuesierelektronik mit HDMI Eingaengen verscherbelt als "Profi"-Zeugs mit 12G SDI Eingaengen.
Bei Ethernet-PHYs genau das selbe Spiel. Da gibt's DSP-Rechenpower zum blasswerden fuer fast nix. It's the Stueckzahl, stupid ;-)
Muss der ADC zwingend mit einem uC verheiratet sein oder passen für dich auch externe eigenständige ADCs? Da bekommt man auch sehr rauscharme 16 Bits mit locker >12 ENOB.
Muss der ADC zwingend mit einem uC verheiratet sein oder passen für dich
auch externe eigenständige ADCs? Da bekommt man auch sehr rauscharme 16
Bits mit locker >12 ENOB.
Nein uC ist nicht gefordert.
Geht rein um ADC, kann aber auch ein UC sein der mit SPI slave zum ADC zwecksentfremdet wird. Generell ists eine spezielle Situation, mit der Preisgestaltung der ADCs im low end Bereich.
Stückzahl,
Preis je Stück,
Was alles dabei sein soll im Preis (ADC, Referenz, rauscharmer LDO, RCL Bauteile, ...),
Samplerate,
Auflösung,
Genauigkeit also ENOB und SFDR,
Welches Interface? So ein SPI ADC mit mehreren MSample/s macht zwar etwas das grob so aussieht wie SPI, aber viele billige uCs können das nicht mit optimalem Timing betreiben (das hat dann schnell um die 100 MBit/s). Das geht dann Richtung FPGA.