Frage:
Was bedeutet es für SBUS, ein invertiertes Protokoll zu sein?
ifconfig
2020-04-15 02:28:31 UTC
view on stackexchange narkive permalink

Ich habe gehört, dass F4-basierte Flugsteuerungen das SBUS-Empfängerprotokoll ohne spezielle Schaltkreise nicht nativ unterstützen können. Was bedeutet das und welche Hardware wird benötigt, um ein invertiertes Protokoll wie SBUS zu invertieren?

Zwei antworten:
tavis
2020-04-15 02:42:40 UTC
view on stackexchange narkive permalink

Ein serielles Signal besteht aus einer Reihe von hohen und niedrigen elektrischen Signalen, die über einen Draht gesendet werden. Im seriellen Standardprotokoll ist ein hohes Signal 0 und ein niedriges Signal 1. In einem invertierten Signal ist dies umgekehrt, so dass ein hohes 1 und ein niedriges 0 ist. Sie könnten denken, dass es sinnvoller ist, dass niedrig immer 0 und hoch sein sollte 1, aber die Elektronikingenieure entschieden, dass das serielle Standardprotokoll das erstere sein sollte.

Um ein serielles Standardsignal in ein invertiertes Signal umzuwandeln, führen Sie es durch einen Inverterchip (der so einfach wie ein einzelner Transistor sein kann) ändert einfach alle hohen Signale in niedrige und umgekehrt.

F3- und F7-Chips haben eingebaute Wechselrichter auf ihren Hardware-Uarts, die es ihnen ermöglichen, serielle Signale in beliebiger Polarität zu senden oder zu empfangen. Aus irgendeinem Grund wurden F4 ohne diese Funktion entwickelt und unterstützen daher keine invertierten Signale auf ihren Uarts.

Der Grund, warum F4s es nicht haben, aber F3- und F7-Mikrocontroller haben es, weil F3- und F7-Chips neuer sind.
Die STM32 F4-Variante wurde 2011 und F3 2012 eingeführt. Die Nummer ist also ein Name und keine Versionsnummer, die mit jeder Version erhöht wird. Die vollständige Liste finden Sie auf Wikipedia: https://en.wikipedia.org/wiki/STM32#STM32_F3
Um klar zu sein, verwendet UART / Serial die NRZ-Codierung, wobei SBUS NRZ-I verwendet.
Kralc
2020-04-15 02:44:33 UTC
view on stackexchange narkive permalink

In der digitalen Elektronik wird ein Signal als eine Reihe von Einsen und Nullen gesendet. In einfachen seriellen Implementierungen werden diese durch Null Volt und eine andere Spannung dargestellt, typischerweise 3,3 V oder 5 V, abhängig von der Spannung des Systems. Einige Systeme verwenden die höhere Spannung als Eins und Null Volt als Null, andere sind umgekehrt - daher "invertiert", und für die Interoperabilität ist ein Konverter erforderlich.



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 4.0-Lizenz, unter der er vertrieben wird.
Loading...