Ich stelle ein Projekt zusammen, das die Komparatorperipherie des STM32F051-Mikrocontrollers nutzt. Ich habe in der Dokumentation gelesen, dass der Eingangspin für Analog konfiguriert werden muss, damit der Komparator funktioniert. Dies ist das gleiche Setup, wenn Sie den Pin als ADC-Eingang verwenden.
Kann ich einen einzelnen Pin, z. B. PA1, als Eingang verwenden und ihn sowohl als Fensterkomparatoreingang als auch als ADC-Eingang an ADC_IN1 konfigurieren?
Gibt es Fallstricke bei dieser Konfiguration, z. B. zusätzliches Rauschen, das ich berücksichtigen sollte?
Datenblatt (S. 19)
Referenzhandbuch (S. 295)
Eine interessante Referenz, die darauf hindeutet, dass dies möglich sein sollte: Aus AN4232: Erste Schritte mit analogen Komparatoren für die STM32F3-Serie
Antworten:
Dies funktioniert, Sie erhalten Zahlen zurück, sowie Interrupts. Ich habe es ausgecheckt, Download von .
Die Genauigkeit und Fehlerhaftigkeit sind noch unbestimmt. Wird aber in den Appnotes gut beschrieben, wie von @Bence Kaulics in diesem Thread angegeben (weitere Ergebnisse finden Sie in results.txt).
Ich glaube, dass es aus folgenden Gründen stabil sein wird.
Dies funktioniert auch mit dem DAC, dh Sie können das Ganze intern mit dem DAC oder extern mit dem DAC und einigen Widerständen einrichten.
Wenn Sie nur die Schaltung betrachten, verwenden Sie den ADC parallel zum Komparator, im Wesentlichen einem Verstärker. Wie wir wissen, handelt es sich um Geräte mit sehr hoher Impedanz und großer Verstärkung. Pannen sind nicht unser Freund.
Jetzt werden wir von Zeit zu Zeit eine entladene Kappe auf diesen Stift schlagen, um den ADC zu versorgen.
Wie wir alle wissen, müssen wir den ADC überabtasten und vorzugsweise den ersten Messwert nach einem Mux-Switch-Ereignis ablehnen, um ein Versetzen von und zu benachbarten Kanälen zu vermeiden.
Der ADC am STM hat eine Eingangsimpedanz von etwas <50K // 5pF, abhängig davon, wie sie verwendet werden. (DM00039193.pdf S. 76ff)
Tabelle 53 gibt 400-> 50 kOhm an, was ich vor einiger Zeit bei der Kalibrierung meines F373 ADC festgestellt habe.
Seite 79 zeigt die ADC-Schaltung.
S. 82 enthält eine kurze Beschreibung des Komparatorstifts, die zusammen mit der obigen allgemeinen Beschreibung der analogen Stifte gelesen wurde (S. 73ff).
Stellen Sie dies parallel zu Ihrem Komparatoreingang und ADC MUX und modellieren Sie es in Gewürzen. Denken Sie daran, die ADC-Kappe regelmäßig auf eine zufällige Spannung aufzuladen.
Was auch immer sonst in der Schaltung und Software passiert, Sie werden ziemlich vernünftige Störungen an Ihrem Komparatoreingang bekommen. SCHLECHTE IDEE, auch wenn Sie den Pin an einen niederohmigen Mitnehmer und eine Entkopplungskappe anschließen (auf der beweglichen Leitung eines Komparatoreingangs ????).
Die vom ADC verwendete Kappe ist der Mörder. Hoffentlich werden zukünftige Geräte mit internen Followern / Isolatoren sowohl am ADC als auch am Komparator testen. Diese können bereits als undokumentierte Merkmale vorhanden sein (unwahrscheinlich aufgrund des Mux-Übersprechens).
Ich denke, wir beschäftigen uns wie ich so sehr mit der digitalen Seite der Dinge, dass wir beim Übergang zu Analog und Hybrid die Grundlagen vergessen.
Wie werden kleine Ströme mit einem Strom-Spannungs-Wandler gemessen? ist eine Diskussion, die ich gestern mit jemand anderem geführt habe. Ich kannte die Antwort, weil ich selbst schlecht drauf war. Selbst bei den besten 3V in 50K erhalten wir einen AVO von 16K / Volt. Wann habe ich zuletzt ein solches AVO / Multimeter verwendet?
Ein Blick auf die Schaltung des F373 zeigt jedoch, dass ST und ARM offenbar beabsichtigt haben, brauchbare Ergebnisse zu erzielen, wenn sowohl Komparator als auch ADC gleichzeitig in einem gemischten Gerät verwendet werden. Die Hinzufügung von Operationsverstärkern in den Serien 150 und 300 gibt einen Hinweis auf die Anforderungen an die Impedanzisolation.
Ich bin sicher, dass jemand, der klüger ist als ich, die Umgebung, für die diese internen Verbindungen entwickelt wurden, neu konstruieren kann. Ich würde denken, Automobil oder HLK .... Wechselrichter und FOC. Die FOC-Bibliothek kann wertvolle Erkenntnisse liefern.
Sofern Sie kein hochpräzises Hochgeschwindigkeitsinstrument bauen, kann eine solche Verwendung ausreichend stabil sein, um praktisch verwendet zu werden (innerhalb der obigen Einschränkungen). Es wird sicherlich eine Menge externer Schaltkreise sparen. Strenge Tests bei hohen Geschwindigkeiten sollten dem Schüler wahrscheinlich am besten als Übung überlassen werden (Versuch mich zu lernen).
Lösung hier .
Es sieht so aus, als ob die HAL ADC-Bibliothek für Mehrkanal-DMA etwas kaputt ist. Ich habe auf der STM-Website gepostet, um eine Antwort zu erhalten. Problemumgehungen: -
a) IRQ beide ADCs
b) Fragen Sie beide ADC ab
c) DMA einen Kanal und den anderen abfragen
d) Initialisieren Sie die Low-Level-Register manuell
Dies ist eine weitere Einschränkung der Lösung, bei der beide Komparatoren verwendet werden, bis eine bessere Lösung gefunden wird.
quelle
Das relevanteste Setup, das ich finden konnte, ist das folgende aus der Verwendung von STM32F05xx-Analogkomparatoren in Anwendungsfällen ( AN4112 ), Seite 4:
Es sagt:
Hier arbeiten ADC und COMP abwechselnd, aber ich denke, beide sind gleichzeitig konfiguriert. Wenn wir im Dokument fortfahren, gibt es ein Blockdiagramm über die COMP-Konfiguration.
Basierend auf diesem Bild denke ich, dass der ADC und der COMP denselben ADC-Kanal teilen. Der einzige Unterschied besteht in der Anzahl der aktivierten analogen Schwellenwertquellen .
Der Text unter der Abbildung 5 in der Frage besagt, dass die
möglicherweise dasselbe wie ADC_IN1.
Der Zweck dieser gesamten Konfiguration besteht darin, Strom zu sparen. Der COMP löst Statusänderungen der MCU aus (STOP <--> RUN). Wenn der Eingang unter einem bestimmten Schwellenwert liegt, werden MCU und ADC abgeschaltet und nur der Komparator arbeitet. Wenn der Eingang über dem Schwellenwert liegt, wecken MCU und ADC den ADC und messen die Eingangsspannung. Wenn der Eingang jedoch wieder unter den Schwellenwert fällt, sendet der COMP die MCU in den STOP-Zustand.
Es ist eine Möglichkeit, sie zusammen zu verwenden. Ich hoffe, dies würde die Frage vorantreiben.
quelle
Ich denke, Sie sollten im STM-Forum fragen. Es gibt auch (STM32F1) UART RX und TIMx am selben Pin, beide Eingänge, aber Sie können sie nicht zusammen verwenden, wie z. B. das Erkennen des Interrupt-Timers am Ende der Übertragung. Stattdessen muss ein anderer TIMx-Pin parallel geschaltet werden, damit die Funktion UART RX und Timer unterbrochen werden. Ich denke, nur eine Funktion kann gleichzeitig aktiv sein.
Versuchen Sie, MxCube herunterzuladen und sehen Sie, welche Konfiguration erstellt werden kann.
quelle