Steuerzeichen

Begonnen von pic18, 02.07.2022, 00:30:24 CEST

Vorheriges Thema - Nächstes Thema

pic18

Hallo, ich möchte die Ausgabe mit der Funktion printOut auf meine LCD-Anzeige umleiten.
fct = &LCDOut;

Nun habe ich eine Frage zu den Steuerzeichen: "/r/n"
/r steht für carriage return
/n steht für line feed
soweit habe ich das verstanden.
meine Frage ersetzt der Compiler /r als ein Zeichen also als ASCII Zeichen 13 oder sind es zwei Zeichen also '/' und 'r'
wenn es ein Zeichen ist, so könnte ich dann schreiben
printOut('/r')
bei zwei Zeichen muß es heißen
printOut("/r")

ich benutze den alten C18 Compiler von Microchip

int printOut(const rom char *f, ...) {
    va_list ap;
    int n;
    put_t fct;
    va_start( ap, f );

#if TELNETD_SUPPORT == 1 && USB_SUPPORT == 1
    fct = (stdOut == source_usb) ? &transmitUSB : &telnetSendChar;
#elif TELNETD_SUPPORT == 1
    fct = &telnetSendChar;
#else
    fct = &transmitUSB;
#endif
    n = _print( fct, f, ap );

    va_end( ap );
    return n;
}

pic18

ich habe mal die Umleitung auf die LCD-Anzeige gemacht.
uint8_t testvar[]="Test";
printOut("%s/r/n",testvar);
Da gibt er die Zeichen "/n" als zwei Zeichen aus. Auf der Anzeige steht:
Test/n/r
void menu_auswerten(void){
    uint8_t i;
    uint8_t testvar[]="Test/n/r";
    //value_ausw_laeuft=1;
    writeLCDCmd(LCD_CLEARDISPLAY);
    writeLCDRomString(menu_txt[ausw_aktuell]);
    switch (ausw_aktuell) {
        case test:
            lcd_neu=1; LCD_ausw();
            LCD_clrhome;
            stdOut = source_lcd;
            printOut("%s/r/n",testvar);
            lcd_neu=0; LCD_ausw();
            break;
Übrigens, ich kann mit entspr. Kürzel auch Hexadezimal Zahlen und Fließkommazahlen darstellen. Somit kann ich auch ganz einfach rechnen.

pic18

ich hatte einen Fehler gemacht, ich hatte '/' mit '\' vertauscht. '\r' ist also nur ein Zeichen und gibt 0x0d, also CR zurück.

Schnellantwort

Achtung: In diesem Thema wurde seit 120 Tagen nichts mehr geschrieben.
Wenn Sie nicht absolut sicher sind, dass Sie hier antworten möchten, starten Sie ein neues Thema.

Name:
Tastenkürzel: Alt+S Beitrag schreiben oder Alt+P für Vorschau