typedef union { unsigned int D32; volatile unsigned char state_val[4]; struct { volatile unsigned int take_charge : 2; /* [0] */ volatile unsigned int feedback : 2; /* [1] */ volatile unsigned int start_delay : 2; /* [2] */ volatile unsigned int start : 2; /* [3] */ volatile unsigned int mute : 2; /* [4] */ volatile unsigned int fault : 2; /* [5] */ volatile unsigned int alarm : 2; /* [6] */ volatile unsigned int rsv1 : 2; /* [7] */ volatile unsigned int linkage : 2; /* [8] */ volatile unsigned int rx : 2; /* [9] */ volatile unsigned int tx : 2; /* [10] */ volatile unsigned int self_check : 2; /* [11] */ volatile unsigned int alarm_fault : 2; /* [12] */ volatile unsigned int alarm_start : 2; /* [13] */ volatile unsigned int shield : 2; /* [14] */ volatile unsigned int rsv2 : 2; /* [15] */ }state; }Sys_State_Struct; extern void uart_task(void); extern void uart_interval_send(void);