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
Und was gefällt Dir an dieser Variante hier nicht? serialPort->Write(array<unsigned char>^ buffer, int offset, int count);
Was heißt array<unsigned char>^ buffer ? Wie erstelle ich buffer? Also z.B. unsigned char buffer[1]; ???
Was hältst Du davon, mal ein bisschen Dokumentation zur von Dir verwendeten Programmiersprache zu lesen? Kleiner Tip: Das ist nicht C++, sondern eine Microsoft-Perversion namens "Managed C++".
Prinzipiell eine gute Idee, mache ich eigentlich auch. ;) Aber ich dachte, dass mir in dem Fall einfach jemand eine Zeile hinschreibt und das wars ;)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.