请大家帮忙看一下 0X200001C3中的数据 在0X2000018A中 也会出现 但是0X2000018A是一个标志结构体 里面的数据只能等于0或者1 一到有通讯的时候 revTempBuffer 字符串中的数据 就会传到 0X2000018A地址中
够用 没有溢出 我特意看了一下
typedef struct
{
uint8_t Flag_Switch;
uint8_t Flag_SwitchAnswer;
uint8_t Flag_Waddr;
uint8_t Flag_Wthistime;
uint8_t Flag_Rstatus;
uint8_t Flag_Raddr;
uint8_t Flag_Rthistime;
uint8_t Flag_Ropentime_random;
uint8_t Flag_Heatcyclestart;//Flag_Apportioncyclestart
uint8_t Flag_Heatcycleend;
uint8_t Flag_Apportioncycle_Wheat;
.
.
.
.
}Flag_InitTypeDef;
使用的时候
if(.....)
Flag_InitStructure.Flag_Heatcycleend=0
if(Flag_InitStructure.Flag_Heatcycleend==0)
{
.
.
.
.
}
这种结构
检查数组 指针之类的 有没有溢出吧 或者贴上代码
2.修改标志结构体限定取值范围 typedef struct xx{uint32 flag_xxx:1;...}yy;来避开异常的产生。
我的结构体也是全局的!
RAM全局变量 没有溢出
不好用
没解决。现在这个问题 为什么会把结构体去掉 改成全局变量就可以呢??
按照你现在的描述,应该还是内存不够引起的问题。
可能内存中没有足够的连续空间(块)来分配给这个struct。
-------------------------------------------------------------------
我的理解是:结构体变量必定是一组连续的内存地址;单独的全局变量他们的地址不要求连续。