Guten Tag. Ich möchte einen einfachen USB-Logikanalysator zeigen, der mit einem STM32F042-Mikrocontroller, beispielsweise NUCLEO-F042K6 von ST, auf jeder Debug-Karte montiert werden kann. Sie finden die Quellcodes jedoch in den Links und können sie problemlos in andere Links dieser Familie konvertieren. Es gibt 8 Kanäle in diesem Design. Darunter befinden sich die PA0-PA7-Ports des Mikrocontrollers. Die maximale Abtastrate beträgt 8 MHz. Die maximale Eingangsfrequenz beträgt 2 MHz. Die maximale Anzahl von Samples pro Kanal beträgt 4096.
Hierbei ist zu beachten, dass der Logikanalysator
Hardware und Software zur Erfassung des Signals und seiner anschlieĂźenden Erforschung, Messung und Analyse von Schnittstellen ist.

Die PC-Shell ermöglicht nach der Erfassung die Analyse der Signale auf allen 8 Kanälen sowie
Messen Sie die Frequenz der Signale, die Periode und die Dauer der Impulse. Zählen Sie die Anzahl der Fronten im ausgewählten Abschnitt und die Dauer dieses Abschnitts.
Wenn Sie sich an die serielle I2C-Schnittstelle halten und den Analysator aktivieren, werden alle I2C-Komponenten automatisch entschlüsselt, getönt und in einer für die Analyse geeigneten Form markiert.
Der Betrieb des Logikanalysators beginnt mit einem Klick auf die Schaltfläche "Capture starten". Dann passiert folgendes:
1) Erfassungsparameter werden auf das Gerät übertragen.
2.a) Wenn der Trigger nicht gesetzt ist, beginnt die Signalerfassung unmittelbar nach dem Empfang der Erfassungsparameter.
2.b) Wenn der Trigger gesetzt ist, analysiert das Gerät das Eingangssignal, ohne eine Erfassung durchzuführen. Die Signalerfassung beginnt, nachdem die vom eingestellten Trigger angegebenen Bedingungen erkannt wurden.
3) Der Einfangpuffer wird gemäß einer gegebenen Anzahl von Proben gefüllt.
4) Das Gerät überträgt Daten an einen PC.
5) Die Software verarbeitet und zeigt die empfangenen Daten an.
Ein Trigger kann auf einem oder mehreren Kanälen installiert werden. Wenn die Trigger für mehrere Kanäle eingestellt sind, beginnt die Signalerfassung, wenn alle durch die eingestellten Trigger angegebenen Bedingungen, d. H. Zwischen den Triggern besteht eine logische UND-Verbindung.
Sie können den Namen und die Farbe jedes Kanals ändern. Der Wellenformanzeigebereich kann gescrollt oder skaliert werden.
Mit dem Messwerkzeug können Sie die Dauer des ausgewählten Abschnitts, die Periode, die Frequenz und die Pulsdauer messen und die Anzahl der Fronten zählen.
Das Lineal-Werkzeug zeichnet eine vertikale Linie, die die Signale aller Kanäle an der angegebenen Stelle mit der Zeit umfasst. Das "Lineal" ist praktisch, wenn die Position der Fronten verschiedener Kanäle relativ zueinander und relativ zum Zeitstempel Null bewertet wird.
In diesem Video können Sie anhand eines einfachen Beispiels sehen, wie alles funktioniert:
Abschließend möchte ich hinzufügen, dass die Shell in Visual Studio geschrieben ist, einer Software für den Mikrocontroller in IAR. In naher Zukunft werde ich einen 16+ Kanal Logikanalysator mit I2C, SPI, UART, I2S geben. Für den Aufbau werden zwei Mikrocontroller in Betracht gezogen: stm32f730, stm32f446.
Vielen Dank an alle, nutzen Sie Ihre Gesundheit!
→ Anleitung, Firmware und Skizze
herunterladen .
→
Laden Sie das IAR-Projekt
herunter→
Laden Sie das Visual Studio-Projekt
herunter