Cześć,
kontynuuję przygodę z zapisem danych sensorycznych na kartę pamięci.
W przypadku czujników inercyjnych odczytywałem 8-bitowe rejestry, dzięki czemu w dość łatwy sposób mogłem przerobić te dane na char (fragment kodu poniżej).
uint8_t my_string[(ASCII_char_No)*rounds];
uint8_t MPU9250_Data_A[14];
sprintf(&my_string[(ASCII_char_No)*(round_No-1)],
"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x\n",
MPU9250_Data_A[0],MPU9250_Data_A[1],MPU9250_Data_A[2],MPU9250_Data_A[3],MPU9250_Data_A[4],MPU9250_Data_A[5],MPU9250_Data_A[8],MPU9250_Data_A[9],MPU9250_Data_A[10],MPU9250_Data_A[11],MPU9250_Data_A[12],MPU9250_Data_A[13]);
Teraz do konwersji mam dane typu int16_t zapisane w tablicy o 16384 elementach i nie bardzo radzę sobie z nimi. W związku z rozmiarem nie wchodzi w grę ręczne wypisywanie elementów, jak poprzednim razem.
Pomożecie, jak taką tablicę danych zapisać do tablicy char? W nowej tablicy dane mogą być stałej długości, ale nie muszą. Wystarczy mi ich oddzielenie przecinkiem.
Każdy element muszę konwertować osobno w pętli, czy można to zrobić prościej?