Примерно так:
Код
typedef union //rx_tx_packet_union
{
unsigned char buffer[SIZE_RX_TX_BUFFER];
/// принимаемые короткие
short_rx_input sh_rx; // короткая посылка приема
tag_packet_check_struct tag_check;
tag_packet_prog_struct tag_prog; //
tag_packet_password_struct tag_password;
/// принимаемые длинные
long_rx_input lg_rx; // длинная посылка приема
/// передаваемые короткие
short_tx_output sh_tx; // короткая посылка передачи
master_packet_struct master_send; //
/// передаваемые длинные
// long_tx_output lg_tx; // длинная посылка передачи
}rx_tx_packet_union;
Ну и пример парочки структур:
Код
typedef struct // short_rx_input
{
unsigned char data[2][3]; //
unsigned char parity[2][3]; //
}short_rx_input;
typedef struct //tag_packet_check_struct
{
unsigned long rnd :8; //
unsigned long low_bat :1; //
unsigned long button :1; //
unsigned long cnt :22; //
unsigned int signature; //
}tag_packet_check_struct;