Gast
#1791176
Hallo! Ich benutze den 8051 F330 und Keil µVision3 (C). Der µC kommuniziert über die Serielle Schnittstelle mit einem PC, genauer gesagt mit einem C# Programm. Ich möchte nun zwischen µC und C# double Werte austauschen, doch irgendwie werde ich das gfühl nicht los, dass C# und µVisions C andere Formatierungen für double verwenden? Beipsiel µC: double test = 26; char* test2; char asugabe_buffer[8]; int i; test2 = (char*)&test; for(i=0;i<8;i++) ausgabe_buffer[i] = test2[i]; //ausgabe_buffer enthält der reihe nach von 0 beginnend: //0x41 0xD0 0x00 0x00 0x00 0x00 0x00 0x00 //(= 65 208 0 0 0 0 0 0) Beispiel C#: double test_value = 26; byte[] test_data2 = new byte[8]; test_data2 = BitConverter.GetBytes(test_value); Console.WriteLine("{0} | {1} | {2} | {3} | {4} | {5} | {6} | {7}", test_data2[0], test_data2[1], test_data2[2], test_data2[3], test_data2[4], test_data2[5], test_data2[6], test_data2[7]); //Ausgabe: 0 | 0 | 0 | 0 | 0 | 0 | 58 | 64 Stimmt irgend etwas mit meiner Umwandlung nicht oder werden hier unterschiedliche Formate verwendet? Danke für eure Hilfe!