Zum Inhalt

Arinc429SpecialChars.MapSpecialChar

Eigenschaft Wert
Modul Inet
Klasse Arinc429SpecialChars
Typ Function
Sichtbarkeit Public
Datei Inet/Arinc429Constants.vb

Beschreibung

Wandelt ein einzelnes Zeichen in seinen ARINC 429 Byte-Wert um. Sonderzeichen-Kuerzel aus den MCDU-Seitenstrings werden auf ihre entsprechenden Symbolbyte-Werte gemappt: "a"=29 (Quadrat), "b"=28 (Grad), "i"=110 (Flyover-Waypoint), "c"=95 (Linkspfeil), "d"=31 (Rechtspfeil), "e"=94 (Aufwaertspfeil), "f"=30 (Abwaertspfeil). Alle anderen Zeichen werden als ihr ASCII-Byte-Wert durchgereicht.

Signatur

Public Function MapSpecialChar(c As Char) As Byte

Parameter

Name Typ Beschreibung Standard
c Char Eingabezeichen aus dem MCDU-Seitenstring --

Rueckgabewert

Typ Beschreibung
Byte ARINC 429 Byte-Wert fuer den Arinc429ScreenBuffer; Sonderzeichen werden auf Symbolbytes gemappt, alle anderen auf ihren ASCII-Wert

Ablaufdiagramm

flowchart TD
    A[Start] --> B{"Select Case c"}
    B -- "'a'" --> C1["Return 29 (Quadrat)"]
    B -- "'b'" --> C2["Return 28 (Grad)"]
    B -- "'i'" --> C3["Return 110 (Flyover)"]
    B -- "'c'" --> C4["Return 95 (Linkspfeil)"]
    B -- "'d'" --> C5["Return 31 (Rechtspfeil)"]
    B -- "'e'" --> C6["Return 94 (Aufwaertspfeil)"]
    B -- "'f'" --> C7["Return 30 (Abwaertspfeil)"]
    B -- "Else" --> C8["Return AscW(c) And 0xFF"]
    C1 --> D[Ende]
    C2 --> D
    C3 --> D
    C4 --> D
    C5 --> D
    C6 --> D
    C7 --> D
    C8 --> D

Aufgerufen von

Modul Sub/Function Kontext
Inet Arinc429ScreenBuffer.WriteString Fuer jedes Zeichen im Text
Mcdu McduCommandParser.ParseAndRender Fuer regulaere Zeichen im Kommando-Body

Ruft auf

Modul Sub/Function Kontext
Microsoft.VisualBasic AscW ASCII-Wert fuer Nicht-Sonderzeichen ermitteln

Beispiel

' Normales Zeichen
Dim byteA As Byte = Arinc429SpecialChars.MapSpecialChar("A"c) ' 65

' Gradzeichen (Sonderzeichen "b")
Dim byteDeg As Byte = Arinc429SpecialChars.MapSpecialChar("b"c) ' 28

' Linkspfeil (Sonderzeichen "c")
Dim byteLeft As Byte = Arinc429SpecialChars.MapSpecialChar("c"c) ' 95

Aenderungshistorie

Version Datum Aenderung
1.0 2026-04-16 Erstdokumentation