Visual Studio C++ COM-Port / Seriell: 8Bit in einem Byte direkt übertragen

#1238041
Lesenswert?

Hallo,

ich habe schon eine nahezu fertige PC-Anwendung, die Daten über die 
serielle Schnittstelle an einen µC senden soll. Es ist mit Microsoft 
Visual Studio C++ 2008 (mit Windows Forms) programmiert.

Nun folgenedes Problem: Ich habe:
int byte0, byte1;
Da stehen jeweils Daten zwischen 0x00 und 0xFF (0...255) drin, ich nutze 
also genau 8Bit pro (zu übertragenes) Byte.

Der µC wertet sie auch genauso wieder aus (0x00 bis 0xFF pro Byte).

Ich verstehe aber nicht, wie ich meine int's an den µC übertragen kann. 
Es scheint nur folgende Funktionen zu geben:

serialPort->Write(String^ text);
serialPort->Write(array<unsigned char>^ buffer, int offset, int count);
serialPort->Write(array<wchar_t>^ buffer, int offset, int count);

Bsp. der zu sendenden Daten:
byte1 = (kanal<<4) | (data>>4); //kanal, data: int
(byte1 also z.B. 0b01010101)

Wie kann ich meine 8Bit-Daten übertragen? Mit z.B. ASCII (also String!?) 
kann man doch maximal 7 Bit übertragen!?
-> Muss ich noch eine Einstellung wie z.B. folgende ändern?
serialPort->Encoding->CodePage; //oder
serialPort->Encoding->UTF8;

Und mit String komme ich in dem Fall doch sowieso nicht weiter, da bei
int byte0 = 56;
serialPort->Write(byte0.toString());
der String "56" übertragen wird...
Bei den beiden anderen Funktionen verstehe ich die Nutzung nicht:
array<unsigned char>^ bzw. array<wchar_t>^

Ich hoffe ihr könnt mir helfen, denn hier im Forum und mit google konnte 
ich nichts für meinen Fall, also für VS C++, finden.

Kirill

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren