Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
projekt_mexle_handoszi:start [2021/09/20 18:32] – [4.3 Development Board] miruppprojekt_mexle_handoszi:start [2021/09/20 21:12] (aktuell) mirupp
Zeile 195: Zeile 195:
  
 == Differentielle  Messung und Single Ended Messung  == == Differentielle  Messung und Single Ended Messung  ==
-Die zuvor dargestellte Schaltung ist auf eine Single Ended Messung ausgelegt. Hierdurch ist es erforderlich, dass die zu messende Spannung immer in Bezug auf die Masse der Oszilloskopschaltung gemessen wird.(([[https://infosys.beckhoff.com/index.php?content=../content/1031/ep3632/3311905675.html&id=|Beckhoff Information System - Typisierung SingleEnded / Differentiell, 18.08.2021]]))+Die zuvor dargestellte Schaltung ist auf eine Single Ended Messung ausgelegt. Hierdurch ist es erforderlich, dass die zu messende Spannung immer im Bezug auf die Masse der Oszilloskopschaltung gemessen wird.(([[https://infosys.beckhoff.com/index.php?content=../content/1031/ep3632/3311905675.html&id=|Beckhoff Information System - Typisierung SingleEnded / Differentiell, 18.08.2021]]))
  
 Erfolgt eine Single Ended Messung bei einem Potenzialunterschied der Massen, die größer ist als die maximale Messamplitude, kann es zu Schäden am Messgerät kommen. Dies tritt meist auf, wenn das Messgerät und das Messobjekt über unterschiedliche Netzteile mit Spannung versorgt werden und keine gemeinsame Erdung nutzen. Über eine differentielle Messschaltung kann eine Messung unabhängig vom Bezugspotential des Oszilloskops erfolgen, was den großen Vorteil dieser Messart darstellt. Potenzialunterschiede der Massen können so ausgeglichen und Schäden am Messgerät vermieden werden.(([[https://infosys.beckhoff.com/index.php?content=../content/1031/ep3632/3311905675.html&id=|Beckhoff Information System - Typisierung SingleEnded / Differentiell, 18.08.2021]])) Erfolgt eine Single Ended Messung bei einem Potenzialunterschied der Massen, die größer ist als die maximale Messamplitude, kann es zu Schäden am Messgerät kommen. Dies tritt meist auf, wenn das Messgerät und das Messobjekt über unterschiedliche Netzteile mit Spannung versorgt werden und keine gemeinsame Erdung nutzen. Über eine differentielle Messschaltung kann eine Messung unabhängig vom Bezugspotential des Oszilloskops erfolgen, was den großen Vorteil dieser Messart darstellt. Potenzialunterschiede der Massen können so ausgeglichen und Schäden am Messgerät vermieden werden.(([[https://infosys.beckhoff.com/index.php?content=../content/1031/ep3632/3311905675.html&id=|Beckhoff Information System - Typisierung SingleEnded / Differentiell, 18.08.2021]]))
Zeile 282: Zeile 282:
 Quelle Tabelle: (([[https://www.buydisplay.com/download/manual/ER-OLED0.96-1_Series_Datasheet.pdf|ER-OLED0.96-1.3W Datenblatt]])) Quelle Tabelle: (([[https://www.buydisplay.com/download/manual/ER-OLED0.96-1_Series_Datasheet.pdf|ER-OLED0.96-1.3W Datenblatt]]))
  
-Die Auswahl der geeignetsten Schnittstelle folgte einem Vergleich der verfügbaren Ansteuerungsarten.+Die Auswahl der geeigneten Schnittstelle folgte einem Vergleich der verfügbaren Ansteuerungsarten.
  
 Die Anbindung des Displays an den PIC32 sollte mit möglichst geringem Hardwareaufwand erfolgen, dementsprechend war eine Ansteuerung mit einer so geringen Anzahl an Leitungen wie möglich zu finden. Die Anbindung über die beiden 8 Bit Parallelbusse entfiel, da diese neben den 8 Datenleitungen weitere zusätzliche Steuerleitungen erfordern. Die Anbindung des Displays an den PIC32 sollte mit möglichst geringem Hardwareaufwand erfolgen, dementsprechend war eine Ansteuerung mit einer so geringen Anzahl an Leitungen wie möglich zu finden. Die Anbindung über die beiden 8 Bit Parallelbusse entfiel, da diese neben den 8 Datenleitungen weitere zusätzliche Steuerleitungen erfordern.
Zeile 316: Zeile 316:
 Die im Projekt zu erstellende Hardware sollte nicht mehr als Integration der neuen Komponenten und dem Austausch der alten Komponenten in die bestehende Schaltung durchgeführt werden. Stattdessen sollten kleine Module mit den Hauptfunktionalitäten des Oszilloskops entwickelt werden. Die Anbindung an den PIC sollte nicht mehr auf der gleichen Platine erfolgen. Stattdessen sollte mittels Developmentkit und geeigneter Aufsteckschnittstelle eine Funktionsdemonstration ermöglicht werden. Die im Projekt zu erstellende Hardware sollte nicht mehr als Integration der neuen Komponenten und dem Austausch der alten Komponenten in die bestehende Schaltung durchgeführt werden. Stattdessen sollten kleine Module mit den Hauptfunktionalitäten des Oszilloskops entwickelt werden. Die Anbindung an den PIC sollte nicht mehr auf der gleichen Platine erfolgen. Stattdessen sollte mittels Developmentkit und geeigneter Aufsteckschnittstelle eine Funktionsdemonstration ermöglicht werden.
  
-Der Schaltplan der durchgeführten Teilintegration ist unter folgendem Link zu finden: [[https://redmine.hs-heilbronn.de/subversion/entwicklung_von_schulungsmitteln/Handoszilloskop/Schaltplan/alte_ Schaltungen/Oszilloskopstift_Lite|Redmine->Handoszilloskop->Schaltplan->alte_ Schaltungen->Oszilloskopstift_Lite]]+Der Schaltplan der durchgeführten Teilintegration ist unter folgendem Link zu finden: [[https://redmine.hs-heilbronn.de/subversion/entwicklung_von_schulungsmitteln/Handoszilloskop/Schaltplan/alte%20Schaltungen/Oszilloskopstift_Lite|Redmine->Handoszilloskop->Schaltplan->alte Schaltungen->Oszilloskopstift_Lite]]
 ==== 4.3 Development Board ==== ==== 4.3 Development Board ====
 Nach der Anpassung des Projektziels wurde der Fokus des Projektes stärker auf die Oszilloskopfunktionalitäten anstelle der Integration in das bestehende Layout gelegt. Darum wurde ein Developmentboard mit dem ausgewählten PIC32 beschafft, das als Basis für die zu entwickelnden Aufsteckplatinen dienen sollte. Als Developmentboard kommt das PIC32MK GP Development Kit (DM320106)(([[http://ww1.microchip.com/downloads/en/DeviceDoc/70005316A.pdf|PIC32MK General Purpose (GP) Development Board User’s Guide]])) zum Einsatz. Dieses bietet folgende Anschlüsse und Funktionalitäten. Nach der Anpassung des Projektziels wurde der Fokus des Projektes stärker auf die Oszilloskopfunktionalitäten anstelle der Integration in das bestehende Layout gelegt. Darum wurde ein Developmentboard mit dem ausgewählten PIC32 beschafft, das als Basis für die zu entwickelnden Aufsteckplatinen dienen sollte. Als Developmentboard kommt das PIC32MK GP Development Kit (DM320106)(([[http://ww1.microchip.com/downloads/en/DeviceDoc/70005316A.pdf|PIC32MK General Purpose (GP) Development Board User’s Guide]])) zum Einsatz. Dieses bietet folgende Anschlüsse und Funktionalitäten.
Zeile 359: Zeile 359:
  
 == PIC32MK1024GPE100 == == PIC32MK1024GPE100 ==
-Das Developmentboard ist mit einem PIC32MK1024GPE100 bestückt. Dieser ist das leistungsfähigste Modell der PIC32MK  Serie (([[http://ww1.microchip.com/downloads/en/DeviceDoc/70005316A.pdf|PIC32MK General Purpose (GP) Development Board User’s Guide]])). Hierdurch kann bei der Entwicklung der Software auf die volle Leistungsfähigkeit zurückgegriffen werden. Wird für die finale Version des Handoszilloskops weniger Leistung oder eine geringere Anzahl an Pins benötigt, kann innerhalb der PIC32MK Familie auf eine weniger leistungsfähige oder kleine Version skaliert werden. Dies reduziert die später anfallenden Kosten eines Exemplars des Handoszilloskops.+Das Developmentboard ist mit einem PIC32MK1024GPE100 bestückt. Dieser ist das leistungsfähigste Modell der PIC32MK  Serie (([[http://ww1.microchip.com/downloads/en/DeviceDoc/70005316A.pdf|PIC32MK General Purpose (GP) Development Board User’s Guide]])). Hierdurch kann bei der Entwicklung der Software auf die volle Leistungsfähigkeit zurückgegriffen werden. Wird für die finale Version des Handoszilloskops weniger Leistung oder eine geringere Anzahl an Pins benötigt, kann innerhalb der PIC32MK Familie auf eine weniger leistungsfähige oder kleinere Version skaliert werden. Dies reduziert die später anfallenden Kosten eines Exemplars des Handoszilloskops.
 ==== 4.4 mikroBUS Prototypen ==== ==== 4.4 mikroBUS Prototypen ====
 Wie zuvor beschrieben, wurde für die Tests der grundlegenden Funktionen zunächst auf die Entwicklung eines Gesamtboards verzichtet. Die Funktionsbereiche um den PIC32 wurden auf zwei Prototypen Platinen aufgeteilt, um die Funktionen des Oszilloskops auch getrennt voneinander testen zu können. Als Basis zum Anschluss der Platinen auf dem Developmentboard wurde der mikroBUS-Standard ausgewählt. Wie zuvor beschrieben, wurde für die Tests der grundlegenden Funktionen zunächst auf die Entwicklung eines Gesamtboards verzichtet. Die Funktionsbereiche um den PIC32 wurden auf zwei Prototypen Platinen aufgeteilt, um die Funktionen des Oszilloskops auch getrennt voneinander testen zu können. Als Basis zum Anschluss der Platinen auf dem Developmentboard wurde der mikroBUS-Standard ausgewählt.
Zeile 385: Zeile 385:
  
 === 4.4.2 Oszilloskop-Modul mit Display === === 4.4.2 Oszilloskop-Modul mit Display ===
-Die erste Platine umfasst den Analog-Eingang-Teil der Oszilloskopfunktion, welcher die Vorverarbeitung angelegter Spannungen übernimmt und an den Spannungspegel des PIC32 anpasst. Zur Verwendung von Tastköpfen ist eine MCX-Buchse vorhanden. Alternativ können Messleitungen auch an einer zweipoligen Klemme angeschlossen werden. Zulässige Messspannungen sind -10 V bis +10 V. Der angepasste Spannungsegel beträgt 0 V bis 3,3 V.+Die erste Platine umfasst den Analog-Eingang-Teil der Oszilloskopfunktion, welcher die Vorverarbeitung angelegter Spannungen übernimmt und an den Spannungspegel des PIC32 anpasst. Zur Verwendung von Tastköpfen ist eine MCX-Buchse vorhanden. Alternativ können Messleitungen auch an einer zweipoligen Klemme angeschlossen werden. Zulässige Messspannungen sind -10 V bis +10 V. Der angepasste Spannungspegel beträgt 0 V bis 3,3 V.
  
 Zusätzlich zur Analogschaltung umfasst die Platine auch ein OLED-Display, welches über einen FPC-Steckverbinder mit 30 Kontakten angeschlossen werden kann. Zur Ansteuerung wird 3-Wire SPI verwendet. Nutzereingaben können über 3 Taster erfolgen. Zusätzlich zur Analogschaltung umfasst die Platine auch ein OLED-Display, welches über einen FPC-Steckverbinder mit 30 Kontakten angeschlossen werden kann. Zur Ansteuerung wird 3-Wire SPI verwendet. Nutzereingaben können über 3 Taster erfolgen.
Zeile 443: Zeile 443:
  
 == Layoutvarianten == == Layoutvarianten ==
-Es wurden zwei Layouts der Schaltung erstellt. Der Schaltplan ist in beiden Fällen identisch. Ein Unterschied gibt es bei der Anzahl der verwendeten Schichten bei der Fertigung der Platine. Das erste Layout ist auf ein zweilagiges Design begrenzt und nutzt nur die Ober- und Unterseite der Platine für die Leiterbahnen. Das zweite Design sieht vier Lagen vor. Die inneren Lagen der Platine dienen der Spannungsversorgung mit 3,3 V und als Masselage.+Es wurden zwei Layouts der Schaltung erstellt. Der Schaltplan ist in beiden Fällen identisch. Einen Unterschied gibt es bei der Anzahl der verwendeten Schichten bei der Fertigung der Platine. Das erste Layout ist auf ein zweilagiges Design begrenzt und nutzt nur die Ober- und Unterseite der Platine für die Leiterbahnen. Das zweite Design sieht vier Lagen vor. Die inneren Lagen der Platine dienen der Spannungsversorgung mit 3,3 V und als Masselage.
  
 ==== 4.5 Akku-Schaltung und Spannungsversorgung ==== ==== 4.5 Akku-Schaltung und Spannungsversorgung ====
Zeile 515: Zeile 515:
 === 5.1.1 MPLAB X === === 5.1.1 MPLAB X ===
  
-Programmiert wird der PIC32 über die von Microchip veröffentlichte Entwicklungsumgebung [[https://www.microchip.com/en-us/development-tools-tools-and-software/mplab-x-ide|MPLAB X IDE]] und dem darin verwendbaren Addon [[https://www.microchip.com/en-us/development-tools-tools-and-software/embedded-software-center/mplab-harmony-v3|MPLAB Harmony]].+Programmiert wird der PIC32 über die von Microchip veröffentlichte Entwicklungsumgebung [[https://www.microchip.com/en-us/development-tools-tools-and-software/mplab-x-ide|MPLAB X IDE]] und dem darin verwendbaren Add-on [[https://www.microchip.com/en-us/development-tools-tools-and-software/embedded-software-center/mplab-harmony-v3|MPLAB Harmony]].
  
 == 5.1.1.1 Benutzeroberfläche == == 5.1.1.1 Benutzeroberfläche ==
Zeile 632: Zeile 632:
 == 5.1.1.10 MPLAB und Harmony Eigenheiten == == 5.1.1.10 MPLAB und Harmony Eigenheiten ==
 Nachfolgend werden einige Besonderheiten bei der Bedienung von MPLAB aufgelistet, welche während der Bearbeitung des Projekts festgestellt worden sind: Nachfolgend werden einige Besonderheiten bei der Bedienung von MPLAB aufgelistet, welche während der Bearbeitung des Projekts festgestellt worden sind:
-  * Kombination von Bibliotheken von Harmony und externen Bibliotheken nur schlecht möglich, da der von Harmony generierte alle Module des Prozessors, welche nicht hinzugefügt wurden, blockiert.+  * Kombination von Bibliotheken von Harmony und externen Bibliotheken nur schlecht möglich, da von Harmony generierte alle Module des Prozessors, welche nicht hinzugefügt wurden, blockiert.
   * Move und Copy von Projekten nicht innerhalb des Programms ausführen, sonst unerwünschte Nebenwirkungen. (Copy führt zu Verschachtelung des Projektordners, kopiertes Projekt erzeugt Unterordner, keinen neuen Projektordner)   * Move und Copy von Projekten nicht innerhalb des Programms ausführen, sonst unerwünschte Nebenwirkungen. (Copy führt zu Verschachtelung des Projektordners, kopiertes Projekt erzeugt Unterordner, keinen neuen Projektordner)
   * Harmony Einstellungen werden über Project-Properties und Konfiguration gespeichert. Inkonsistentes Verhalten bei Move und Copy führt dazu, dass die Konfiguration für das kopiertes Projekt übernommen wird. Bei Veränderungen der Konfiguration werden beide Projekte geändert. Um dieses Verhalten zu umgehen, empfiehlt es sich ein neues Projekt mit neuer Konfiguration anzulegen und die Projektfiles manuell zu kopieren.   * Harmony Einstellungen werden über Project-Properties und Konfiguration gespeichert. Inkonsistentes Verhalten bei Move und Copy führt dazu, dass die Konfiguration für das kopiertes Projekt übernommen wird. Bei Veränderungen der Konfiguration werden beide Projekte geändert. Um dieses Verhalten zu umgehen, empfiehlt es sich ein neues Projekt mit neuer Konfiguration anzulegen und die Projektfiles manuell zu kopieren.
Zeile 763: Zeile 763:
 Im Vergleich der drei Aufzeichnungen kann man sehen, dass nur die Version mit Harmony und DMA die fünf Pulse richtig anzeigt. Die Bare Metal Programmierung der vier verschachtelten ADC sendet die Daten mit einer Baudrate von 115200 Baud/s, die beiden anderen mit 962100 Baud/s. Die Reduzierung war notwendig, da es sonst zu Übertragungsfehlern kommt. Im Vergleich der drei Aufzeichnungen kann man sehen, dass nur die Version mit Harmony und DMA die fünf Pulse richtig anzeigt. Die Bare Metal Programmierung der vier verschachtelten ADC sendet die Daten mit einer Baudrate von 115200 Baud/s, die beiden anderen mit 962100 Baud/s. Die Reduzierung war notwendig, da es sonst zu Übertragungsfehlern kommt.
 Durch die langsamere Übertragung ist es möglich, dass die einzelnen Pulse stärker geblockt werden.  Durch die langsamere Übertragung ist es möglich, dass die einzelnen Pulse stärker geblockt werden. 
-Die Programmierung ohne DMA zeigt ebenfalls keine einzelnen Pulse, hier ist es möglich, dass die Sample Rate zu niedrig ist und somit Teile des Signals verloren gehen.+Die Programmierung ohne DMA zeigt ebenfalls keine einzelnen Pulse, hier ist es möglich, dass die Sample-Rate zu niedrig ist und somit Teile des Signals verloren gehen.
  
 == Auswertung ADC == == Auswertung ADC ==
-Die Messungen werden so dargestellt, dass auf die X-Achse der ADC-Wert in Volt, auf der Y-Achse die dazugehörigen Sample-Werte angegeben wird. Bevorzugt wäre anstatt des Sample-Werts der Zeitpunkt des Samplings angegeben worden, allerdings war das mit den vorhandenen Mitteln nicht sinnvoll. Bei der Umsetung mit vier verschachtelten ADC werden die Sample-Werte in einem Buffer zwischengespeichert und erst bei vollem Speicher ausgelesen. Dadurch lässt sich kein genauer Zeitpunkt den Werten zuweisen. Die beiden Umsetzungen mit Harmony könnten den genauen Zeitpunkt des Samplings mittels Timer per USB an den PC übertragen, allerdings würde durch die momentane Umsetzung des Codes dadurch die Sample-Rate niedriger werden. Die Terminalprogramme haben ebenfalls die Möglichkeit den Zeitpunkt der eingehenden Übertragung aufzuzeichnen, allerdings ist die zeitliche Auflösung zu niedrig, bei einer Sampling-Rate im Msps-Bereich ist eine Auflösung in Mikrosekunden notwendig, die Programme können nur bis Millisekunden aufzeichnen.+Die Messungen werden so dargestellt, dass auf die X-Achse der ADC-Wert in Volt, auf der Y-Achse die dazugehörigen Sample-Werte angegeben werden. Bevorzugt wäre anstatt des Sample-Werts der Zeitpunkt des Samplings angegeben worden, allerdings war das mit den vorhandenen Mitteln nicht sinnvoll. Bei der Umsetzung mit vier verschachtelten ADC werden die Sample-Werte in einem Buffer zwischengespeichert und erst bei vollem Speicher ausgelesen. Dadurch lässt sich kein genauer Zeitpunkt den Werten zuweisen. Die beiden Umsetzungen mit Harmony könnten den genauen Zeitpunkt des Samplings mittels Timer per USB an den PC übertragen, allerdings würde durch die momentane Umsetzung des Codes dadurch die Sample-Rate niedriger werden. Die Terminalprogramme haben ebenfalls die Möglichkeit den Zeitpunkt der eingehenden Übertragung aufzuzeichnen, allerdings ist die zeitliche Auflösung zu niedrig, bei einer Sampling-Rate im Msps-Bereich ist eine Auflösung in Mikrosekunden notwendig, die Programme können nur bis Millisekunden aufzeichnen.
  
 Die Auswertung der Versuche zeigt vor allem bei der Puls-Messung sonderbare Ergebnisse, daher sollten weitere Versuchsreihen durchgeführt werden, sowie der Programmcode angepasst werden. Die Auswertung der Versuche zeigt vor allem bei der Puls-Messung sonderbare Ergebnisse, daher sollten weitere Versuchsreihen durchgeführt werden, sowie der Programmcode angepasst werden.
-Die Verschachtelung der ADC zeigt die höchste Auflösung des Signals, schneidet aber im kontinuierlichen Betrieb aufgrund der notwendigen Unterbrechungen große Teile des Signals ab. Ein Einsatz im kontinuierlichen Betrieb ist daher nicht sinnvoll. Es sollte möglich sein, ein hochfrequentes Signal komplett aufzuzeichnen, solange die Signaldauer nicht länger als 82 ms ist. (Berechnet aus: 4 ADC mit je 2*128 Sample Speicher -> Gesamt 1024 Samples / 12,5 Msps)(([[http://ww1.microchip.com/downloads/en/DeviceDoc/60001344D.pdf|PIC32 12 bit SAR ADC]])). +Die Verschachtelung der ADC zeigt die höchste Auflösung des Signals, schneidet aber im kontinuierlichen Betrieb aufgrund der notwendigen Unterbrechungen große Teile des Signals ab. Ein Einsatz im kontinuierlichen Betrieb ist daher nicht sinnvoll. Es sollte möglich sein, ein hochfrequentes Signal komplett aufzuzeichnen, solange die Signaldauer nicht länger als 82 ms ist. (Berechnet aus: 4 ADCs mit je 2*128 Sample Speicher -> Gesamt 1024 Samples / 12,5 Msps)(([[http://ww1.microchip.com/downloads/en/DeviceDoc/60001344D.pdf|PIC32 12 bit SAR ADC]])). 
-Im kontinuierlichen Betrieb ergibt eine Umsetzung ohne den „ADC DMA Buffer Full“-Interrupt mehr Sinn, hier können die Daten übertragen werden, sobald Daten im ADC DMA Buffer liegen. Damit reduziert sich allerdings die Sample Rate.+Im kontinuierlichen Betrieb ergibt eine Umsetzung ohne den „ADC DMA Buffer Full“-Interrupt mehr Sinn, hier können die Daten übertragen werden, sobald Daten im ADC DMA Buffer liegen. Damit reduziert sich allerdings die Sample-Rate.
  
-Eine weitere Überlegung kann sein, ob für das Handoszilloskop die restlichen ADC verwendet werden, um die Sample Rate weiter zu erhöhen, oder ob sie als weiterer separater Oszilloskop-Kanal verwendet werden sollen. ADC 2, 5 und 6 können nicht so konfiguriert werden, dass sie ebenfalls die Spannung an AN0 einlesen. Dadurch wäre es bei einer gewünschten Erhöhung der Sample Rate notwendig, mehrere analoge Eingänge miteinander zu verbinden.+Eine weitere Überlegung kann sein, ob für das Handoszilloskop die restlichen ADCs verwendet werden, um die Sample Rate weiter zu erhöhen, oder ob sie als weiterer separater Oszilloskop-Kanal verwendet werden sollen. ADC 2, 5 und 6 können nicht so konfiguriert werden, dass sie ebenfalls die Spannung an AN0 einlesen. Dadurch wäre es bei einer gewünschten Erhöhung der Sample Rate notwendig, mehrere analoge Eingänge miteinander zu verbinden.
  
  
Zeile 804: Zeile 804:
  
 **UART:**\\ **UART:**\\
-UART steht für Universal Asynchronous Receiver Transmitter. Es benötigt für die Kommunikation keine separate Bustaktung, die Synchronisierung zwischen Sender und Empfänger geschieht über vom Transmitter gesendete Start- und Stop-bits. So benötigt UART für die bidirektionele Kommunikation nur zwei Datenleitungen, wird nur in eine Richtung kommuniziert kann auch nur eine Leitung verwendet werden. <imgref Busaufbau_UART>(([[https://edistechlab.com/wie-funktioniert-uart/?v=3a52f3c22ed6|UART-Bus.png]])) zeigt eine typische UART-Kommunikation.(([[https://de.wikipedia.org/wiki/Universal_Asynchronous_Receiver_Transmitter|Wikipedia UART]]))+UART steht für Universal Asynchronous Receiver Transmitter. Es benötigt für die Kommunikation keine separate Bustaktung, die Synchronisierung zwischen Sender und Empfänger geschieht über vom Transmitter gesendete Start- und Stop-Bits. So benötigt UART für die bidirektionele Kommunikation nur zwei Datenleitungen, wird nur in eine Richtung kommuniziert kann auch nur eine Leitung verwendet werden. <imgref Busaufbau_UART>(([[https://edistechlab.com/wie-funktioniert-uart/?v=3a52f3c22ed6|UART-Bus.png]])) zeigt eine typische UART-Kommunikation.(([[https://de.wikipedia.org/wiki/Universal_Asynchronous_Receiver_Transmitter|Wikipedia UART]]))
  
 <imgcaption Busaufbau_UART | Busaufbau UART > <imgcaption Busaufbau_UART | Busaufbau UART >
Zeile 959: Zeile 959:
 [[https://sigrok.org/wiki/Supported_hardware|PulseView unterstützte Hardware]]\\ [[https://sigrok.org/wiki/Supported_hardware|PulseView unterstützte Hardware]]\\
 Die Umsetzung geschieht mit der [[https://sigrok.org/wiki/Developers|libsigrok API]]. Entwickler können für Geräte die Software für PulseView selbst einbinden. Generell sollten Geräte, welche auf dem Cypress FX2 µC basieren, oder das [[https://de.wikipedia.org/wiki/Standard_Commands_for_Programmable_Instruments|SCPI Protokoll]] verwenden, kompatibel sein. Mehr Informationen dazu im [[https://sigrok.org/doc/pulseview/0.4.1/manual.html|PulseView User Manual]]. PulseView bietet ebenfalls Unterstützung für den [[https://sigrok.org/wiki/Openbench_Logic_Sniffer|Openbench Logic Sniffer]], welcher einen PIC18 für die USB Kommunikation verwendet.\\ Die Umsetzung geschieht mit der [[https://sigrok.org/wiki/Developers|libsigrok API]]. Entwickler können für Geräte die Software für PulseView selbst einbinden. Generell sollten Geräte, welche auf dem Cypress FX2 µC basieren, oder das [[https://de.wikipedia.org/wiki/Standard_Commands_for_Programmable_Instruments|SCPI Protokoll]] verwenden, kompatibel sein. Mehr Informationen dazu im [[https://sigrok.org/doc/pulseview/0.4.1/manual.html|PulseView User Manual]]. PulseView bietet ebenfalls Unterstützung für den [[https://sigrok.org/wiki/Openbench_Logic_Sniffer|Openbench Logic Sniffer]], welcher einen PIC18 für die USB Kommunikation verwendet.\\
-Vor der Umsetzung im Handoszilloskop sollte die Möglichkeit der Implementierung mit den sigrok PulseView Entwicklern abgesprochen werden. Diese sind unter folgenden Links zu errreichen:+Vor der Umsetzung im Handoszilloskop sollte die Möglichkeit der Implementierung mit den sigrok PulseView Entwicklern abgesprochen werden. Diese sind unter folgenden Links zu erreichen:
   * https://lists.sourceforge.net/lists/listinfo/sigrok-devel   * https://lists.sourceforge.net/lists/listinfo/sigrok-devel
   * https://web.libera.chat/#sigrok   * https://web.libera.chat/#sigrok