Ich erstelle ein C++ - Programm für die Kommunikation mit einem Greifer an einer seriellen Schnittstelle.unsigned char Verkettung
Ich muss einen Puffer vom Typ "unsigned char [8]" senden, aber von diesen 8 Bytes, 4 sind über die Tastatur eingegeben, und 2 sind die CRC, berechnet zu der Zeit.
Also, wie kann ich mehrere Stücke in einem einzigen Puffer von 8 Bytes unsigned char verketten?
Zum Beispiel:
unsigned char buffer[8];
----
unsigned char DLEN[1]={0x05};
----
unsigned char CMD[1]={0x01};
----
unsigned char data[4]={0x00,0x01,0x20,0x41};
----
unsigned char CRC[2]={0xFF,0x41};
----
wie kann ich diesen Puffer: {0x05,0x01,0x00,0x01,0x20,0x41,0xFF,0x41}
, dass die Vereinigung von DLEN
ist, CMD
, data
und CRC
?
Oder 'buffer [0] = DLEN [0]; Puffer [1] = CMD [0]; std :: copy (Beginn (Daten), Ende (Daten), Puffer + Größe von DLEN + Größe von CMD); std :: copy (Beginn (CRC), Ende (CRC), Puffer + Größe von DLEN + Größe von CMD + sizeof Daten); '(Auf separate Zeilen aufgeteilt, natürlich) – bames53