问题描述
早上好,
我正在尝试创建这种样式的日期结构:
//结构体1
union{
struct{
union{
struct{
bool interrupt_receive;
bool fifo_mode;
bool enable;
bool bits_14_mode;
bool int_source_readed;
bool void6;
bool void7;
bool void8;
};
unsigned char registro;
}REG_CTRL_FLG;
union{
struct{
unsigned int REG_CTRL_TIMEH;
unsigned int REG_CTRL_TIMEL;
};
unsigned short REG_CTRL_TIME;
};
unsigned int threshold; //Para pruebas pendiente de eliminar
//AXIS_STRUCT data_axis;
//AXIS_EXTEND_STRUCT data_full_axis;
}registros_acelerometro;
unsigned int registro[3];
}ACELEROMETRO;
//结构体2
typedef union{
struct{
unsigned char dlc_0;
union{
struct{
unsigned char p15:1;
unsigned char p14:1;
unsigned char p13:1;
unsigned char p12:1;
unsigned char p11:1;
unsigned char p10:1;
unsigned char p9:1;
unsigned char p8:1;
unsigned char p7:1;
unsigned char p6:1;
unsigned char p5:1;
unsigned char p4:1;
unsigned char p3:1;
unsigned char p2:1;
unsigned char p1:1;
unsigned char p0:1;
};
unsigned short p;
}pulsadores;
union{
struct{
unsigned char lb0:1;
unsigned char lb1:1;
unsigned char ls0:1;
unsigned char ls1:1;
unsigned char iluminacion:1;
unsigned char completo:1;
unsigned char sobrecarga:1;
unsigned char void7:1;
}registro_cabina;
unsigned char estado_cabina;
};
unsigned char dlc_4;
}registros_can_data;
unsigned char can_data[5];
}TRESA_PULS;
struct 1,我用过 STM32F7、ARM Compiler 6.11 和 Keil MDK 5.21,没有任何问题,但是我在 struct 2 中使用的配置却给我带来了一些问题
包含 int 结构的联合,似乎需要额外的内存空间才能工作,这会扭曲结构。
我一直在想,但我没有发现错误
你知道有什么变化吗? 是否有应该使用的预处理顺序? 你们中有人发生过吗? 你看到什么问题了吗?
感谢您的帮助和时间。 亲切的问候。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)