hi
jo, das ist schon möglich.
bekommst du vom gps immer gleichviele daten?
wenn ja, würde ich das etwa so machen:
Code:
#define HEADER_SIZE xBytes
#define GPS_DATA_SIZE yBytes
#define CRC_SIZE zBytes
unsigned char frame[HEADER_SIZE + GPS_DATA_SIZE + CRC_SIZE];
=> du baust dir ein array, welches so gross ist, dass Header, GPS-Daten sowie CRC darin platz haben.
während dem initialisieren kopierst du dir die immer gleichen header-daten rein
Code:
unsigned char i;
for(i=0;i<HEADER_SIZE; i++){
frame[i] = header_data[i];
}
die gps-daten kannst du jetzt auch gerade reinkopieren:
Code:
unsigned char i;
for(i=HEADER_SIZE;i<GPS_DATA_SIZE + HEADER_SIZE; i++){
frame[i] = get_gps_byte()
}
und am schluss nach analog die checksumme ...
cu
chris
Lesezeichen