Laden...

ascii an serialport schicken

Letzter Beitrag vor 20 Jahren 4 Posts 1.394 Views
ascii an serialport schicken

moin moin ...

ich hab wieder ne frage 🤔

ich knobel schon die ganze zeit rum ... bin auch aus der suche nich schlau geworden ...

ich bastel grad nen programm das auf den serialPort (.NET2) zugreift und an ein an der seriellen schnittstelle angeschlossenes gerät diverse steuerzeichen per ascii übergeben soll ...
mach ichs als string zuckt das angeschlossene gerät überhaupt nicht ... leider ...
mit char komm ich nich so recht klar weil der mir zum beispiel mein ascii5 (\0x05) nicht vom string zum char konvertieren mag ... hat irgendwer vielleicht ne idee wie´s ganz einfach ohne große mühen von statten geht ?
ich verzweifel grad ein kleinwenig ... vielleicht seh ich ja auch den wald vor lauter bäumen nicht 🙁

grüßle

frage die um rat ... die mehr wissen als du (kleines altägyptisches sprichwort)


mobile - 1.73er core2 ... 2048 mb
desktop - 3.0er prescott ... 1024 mb

Du kannst ASCII Codes direkt casten:

char deinZeichen = (char)5

Hilft Dir das weiter?

Meli

Gernot Melichar

An einzelne Zeichen im String kommt man so:

// Das erste Zeichen in s auslesen.
string s = "\\u0005";
char c0 = s[0];

Das Zeichen im String entspricht Ascii5 (denke ich doch, ist Unicode-Notation).
Aber char ist nicht Ascii, char ist 16 bit breit. Zur Umwandlung nimmt man am besten die System.Text.ASCIIEncoding-Klasse.

// Das erste Zeichen im String als Ascii-Code in b1 speichern.
byte[] b1 = new byte[1];
Encoding.ASCII.GetBytes("\\u0005", 0, 1, b1, 0);

Mit Casten, so wie Meli es macht, geht es aber auch.

// char nach Ascii.
byte b = (byte)'\\u0005';

Gruss
Pulpapex

danke für eure schnellen antworten ...werd mich gleich dransetzen und testen 🙂

grüßle

frage die um rat ... die mehr wissen als du (kleines altägyptisches sprichwort)


mobile - 1.73er core2 ... 2048 mb
desktop - 3.0er prescott ... 1024 mb