-
        

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: Liste aller Escape-Sequenzen und Formatierungszeichen

  1. #1
    Erfahrener Benutzer Robotik Einstein Avatar von Felix G
    Registriert seit
    29.06.2004
    Ort
    49°32'N 8°40'E
    Alter
    34
    Beiträge
    1.780

    Liste aller Escape-Sequenzen und Formatierungszeichen

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Hallo Leute,

    wie man vielleicht am Threadtitel schon erkennen kann, Suche ich eine vollständige(!!) Liste aller in C verwendbaren Escape-Sequenzen und Formatierungszeichen. Und das erstmal unabhängig davon ob sie vom AVR-GCC unterstützt werden oder nicht. Ich stelle diese Frage, weil ich schon Konstrukte wie \033[2J in C-Programmen gesehen habe, die in keiner von mir bisher gefundenen Liste auch nur ansatzweise erwähnt werden.


    Achja...
    außerdem wüsste ich gern, ob es in der C-Standardbibliothek auch eine Funktion gibt mit der ich den Cursor auf eine bestimmte Position setzen kann.


    Gruß,
    Felix
    So viele Treppen und so wenig Zeit!

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.801
    Du kannst alle Zeichen angeben, und zwar als oktal. \033 ist zB eine 27, die 255 wäre ein \377.

    Ob die jeweiligen Sequenzen von einem Display/Terminal oder was auch immer implementiert/interpretiert werden, ist keine Sache des C-Standarts, gleiches gilt für Cursorpositionierungen.

    Du kannst dir jedoch prinf-Ähnliche Ausgabefunktionen schreiben, die Cursorpositionierung unterstützen und in gewissem Grad von der Hardware abstrahieren.

    Beispielcode wie das aussehen kann findest du im Modul vfd-put in
    http://freenet-homepage.de/gjl/pub/ebook/index.html

    Bei Fragen, fragen.

    Für die Codes, die GCC unterstützt, müsste ich jetzt auch in die Quellen schauen... Es genügt jedoch nicht, daß der Compiler es unterstützt. Ein "Hallo\n" wird wohl in ein "Hallo\n" übersetzt, also besser in die Assembler-Quellen schauen
    Disclaimer: none. Sue me.

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von Felix G
    Registriert seit
    29.06.2004
    Ort
    49°32'N 8°40'E
    Alter
    34
    Beiträge
    1.780
    Naja,
    momentan geht es mir eher darum meine LCD-Funktionen (die auch Cursorpositionierung unterstützen) am PC nachzubilden, um eine Menübibliothek die ich gerade schreibe leichter/schneller testen zu können.

    So kann ich meine Bibliothek einfach in VisualStudio in einer Win32-Konsolenanwendung wunderschön debuggen, und dann später in meinen AVR-Projekten weiterverwenden.


    Daß 033 eine Oktalzahl ist war mir übrigens durchaus bewusst...
    aber ein Blick in eine ASCII-Tabelle verrät: es ist das Zeichen "ESC"
    und in Kombination mit dem darauffolgenden [2J tut das irgendwas.
    So viele Treppen und so wenig Zeit!

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.801
    Oder mal gurgeln:

    http://www.asphelper.de/referenz/ASCIIANSI.asp
    http://www.tfh-berlin.de/~kempfer/skript_c/Kap07.html
    http://www.ta7.de/txt/dos/dos0018.htm

    Spätestens bei ANSi-Sequqnzen zur Farbumsteling oder Beep (CTRL-g) macht dein LCD aber schlapp, oder? *fg*
    Disclaimer: none. Sue me.

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von Felix G
    Registriert seit
    29.06.2004
    Ort
    49°32'N 8°40'E
    Alter
    34
    Beiträge
    1.780
    Danke für die links, damit sollte sich was anfangen lassen...
    zumindest sobald ich herausgefunden habe wieso bei VisualStudio das ESC-Zeichen als "←" angezeigt wird wenn ich es mit printf ausgebe. (falls da nix zu sehen sein sollte: es ist ein Pfeil nach links)


    Spätestens bei ANSi-Sequqnzen zur Farbumsteling oder Beep (CTRL-g) macht dein LCD aber schlapp, oder? *fg*
    hast du etwa kein Farb-LCD mit eingebautem Lautsprecher?
    So viele Treppen und so wenig Zeit!

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.801
    Nö, das nicht. Aber dafür gibt es ANSI-Sequenzen.

    Was ich da geschrieben habe liest sich echt wie aus einer üblen taiwanesischen Bedienungsanleitung

    Damit die Console die ANSI-Sequenzen interpretiert musst man früher glaub irgendwo was drehen in autoexec.bat oder config.sys.

    Aber du brauchst doch diese Kommandos garnicht. Nimm dir einfach 4 Textfelder oder eine TextArea und gib die Codes dahin aus. Auf dem µC will man ja auch nicht mühsam erst diese langen Sequenzen decodieren.
    Von der GUI bzw TUI-Abhängigkeit parametrisierst du eh durch #ifdef oder Bibliotheken.

    Oder du arbeitest direkt aufm µC. Scheint mir enifacher zu sein als erst VisualStudio bauchpinseln zu müssen.
    Disclaimer: none. Sue me.

  7. #7
    Erfahrener Benutzer Robotik Einstein Avatar von Felix G
    Registriert seit
    29.06.2004
    Ort
    49°32'N 8°40'E
    Alter
    34
    Beiträge
    1.780
    Natürlich könnte ich direkt auf dem µC arbeiten, aber wie soll ich den Code dann debuggen?
    Simulieren geht nicht, da ich ja auf das Display zugreife, und einen ICE habe ich nicht.
    (und Notlösungen wie z.B. Ausgaben über RS232 sind nicht wirklich effizient)

    Außerdem soll meine Menübibliothek möglichst universell einsetzbar sein,
    also mit so ziemlich jedem denkbaren LCD funktionieren (egal welche Größe das Display hat).
    bzw. einfach mit jedem beliebigen "Ding" auf dem man irgendwie Text ausgeben, und den Cursor positionieren kann.


    Daher wollte ich das ja im VisualStudio machen, und da erschien mir ein Konsolenprojekt die einfachste Variante zu sein.
    (aber vielleicht ist eine grafische Oberfläche doch besser geeignet, mal sehen)
    So viele Treppen und so wenig Zeit!

  8. #8
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    Da gibt's Beispiele.

    http://www.roboternetz.de/wissen/ind...teuerung_ANSII

    AAAABER Ansii-Sequencen muß das TERMINAL (Emulation) verstehen, der Programmiersprache gehen die am A... vorbei

    Ein Escape-Zeichen ohne nix hinten nach kann aber jedenfalls keiner.

    Eine funzende terminal-Emulation ist Hyperterm, im ANSII-Mode, natürlich
    (VT100 und aufwärts)
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  9. #9
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.801
    Zitat Zitat von Felix G
    [...] aber wie soll ich den Code dann debuggen?
    Garnicht

    Ich hab noch nie nen Debugger gebraucht, zumindest nicht für Software, die ich selber geschrieben habe. Die funktioniert einfach...

    Einmal hatte ich wirklich ein Problem und mir dafür extra AVR-Studio gezogen und simuliert und viel Zeit reingehangen und so, aber in vitro bringt das nix und bei Debuggen ist die Echtzeit eh über'n Jordan. Also: hinsetzen, Brain v0.9b bemühen und es geht.

    Debuggen ist IMHO eine Technik, die man nicht braucht.

    Wenn man sie braucht, dann läuft es meist in Richtung reverse engineering komplexer Software, die nicht von einem selbst geschrieben ist (zB GCC debuggen).
    Disclaimer: none. Sue me.

  10. #10
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    die ich selber geschrieben habe. Die funktioniert einfach...
    Na, ist doch schön, endlich mal wer ohne Komplexe
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •