Hallo,
Ich habe hier einen µC, PIC18F4550 (MPLAB+ CCS), über die serielle
Schnittstelle an meinem PC angeschlossen. Dieser sendet alle paar
Sekunden sechs Int8-Werte.
So etwa:
1 |
|
2 | fputc(a,PC);
|
3 | fputc(value1,PC);
|
4 | fputc(b,PC);
|
5 | fputc(value2,PC);
|
6 | fputc(c,PC);
|
7 | fputc(v_raw,PC);
|
Im Terminalprogramm wird dies auch passend angezeigt (siehe Screenshot).
Meine Konsolenapplikation in C# gibt mir allerdings nur die Asciizeichen
aus (siehe Screenshot).
Hier ein Teil meines Codes:
1 | p.ReceivedBytesThreshold = 6;
|
1 | static void p_DataReceived(object sender, SerialDataReceivedEventArgs e)
|
2 | {
|
3 |
|
4 | a = Convert.ToString((sender as SerialPort).ReadExisting());
|
5 | Console.WriteLine(a);
|
6 | }
|
Hat jemand eine Idee wie ich den String in einzelne Variablen aufteile
und wieder in Integer-Werte konvertiere?
Um den String aufzuteilen hab ich bereits Split String probiert.
Allerdings teilt er mir die sechs Asciizeichen vom String nicht exakt
Zeichen für Zeichen auf.
danke,
mfg alex