Вопрос меня тревожит не по граблям ли я хожу и как это вобще лучше сделать? Допустим имеется вот такой массив:
typedef enum {ONE, TWO, THREE} order_t;
typedef struct {
ordet_t order;
uint8_t* name;
uint16_t lenght;
} data_t;
data_t arr[];
который необходимо передавать на другое устройство. И что бы избежать всяких возможных проблем при передачи есть мысль упаковать структуру (для сокращения данных для передачи), а при передаче передать указатель на массив приведя его к uint8_t
void data_trasfer((uint8_t*)arr);
Ну и соответсвующая сторона соответсвенно будет обратно кастовать к data_t. Такая своеобразная сериализация данных.