mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Ascii werte einer Zeichenkette zuweisen


Autor: Lukas Honsell (lukasrau)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich habe folgendes Problem:

Ich schreibe gerade ein Programm um Werte auf einem EA eDip Display 
auszugeben und da werden Ascii Werte wie 0x1B und 0xFC benötigt.
Um Platz zu spaaren möchte ich bei der Ausgabe verschiedener Daten nur 
eine Zeichenkette verwenden.

Bsp:

unsigned char xdata ausgabeString[40]; // globale Variable


{0x1B,0x5A,0x4C,0x00,0x00}
{0x1B,0x5A,0x4C,0x21,0x78}

// Ascii Zeichen/Werte,die ich in Hex die ich in Funktionen zuweisen 
möchte


ich habe schon in verschiedenen Foren gesucht aber nichts gefunden wie 
ich dem array ausgabeString die oben genannten werte zuweisen kann.

mit

strcpy(ausgabeString,"Text")

kann man keine Ascii Werte wie zb 0x1B zuweisen also fals jemand eine 
idee hat wäre ich sehr dankbar.

mfg Lukas Honsell

Autor: us73 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
memcpy(...) vielleicht ?

Ein C-Buch hilft.

google brachte das hier als ein mögliches Beispiel:
http://www.c-plusplus.de/forum/p1861200

Aber nicht nur abschreiben, sondern verstehen.

Uwe

Autor: us73 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach, und der Einfachheit halber kann man ja den einzelnen Feldern eines 
arrays auch Werte direkt zuweisen.....

ausgabestring[0] = 0x1b;
ausgabestring[1] = 0x5a;

Aber wenn ich dich richtig verstehe, willst Du ja komplett vorbereitete 
Datenblöcke an das Display schicken, sodass die erste Antwort dir sicher 
schon weiter hilft.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lukas Honsell schrieb:

> unsigned char xdata ausgabeString[40]; // globale Variable
>
>
> {0x1B,0x5A,0x4C,0x00,0x00}
> {0x1B,0x5A,0x4C,0x21,0x78}
>
> // Ascii Zeichen/Werte,die ich in Hex die ich in Funktionen zuweisen
> möchte
>
>
> ich habe schon in verschiedenen Foren gesucht aber nichts gefunden wie
> ich dem array ausgabeString die oben genannten werte zuweisen kann.

Dann schau mal in deinem C-Buch unter Escape Sequenzen nach. Es gibt 
eine mit der man auch Hex-Werte mitten in einem String direkt schreiben 
kann.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.