void divide_data(char *buff)
{
int i;
uint8_t strain_buff[11];
uint8_t speed_buff[11];
uint8_t volref_buff[11];
for(i=0;i<DATA_LEN;i++)
{
strain_buff[i]=buff[i];
speed_buff[i]=buff[i+11];
volref_buff[i]=buff[i+22];
}
HMISendsRemote(strain_buff);
HMISendsRemote((char*)speed_buff);
HMISendsRemote((char*)volref_buff);
}
输出结果:
原因
定义的方式不对,造成不可预测的错误!!!!
最终:
void divide_data(char *buff)
{
int i;
uint8_t strain_buff[12]={'\0'};
uint8_t speed_buff[12]={'\0'};
uint8_t volref_buff[12]={'\0'};
for(i=0;i<DATA_LEN;i++)
{
strain_buff[i]=buff[i];
speed_buff[i]=buff[i+11];
volref_buff[i]=buff[i+22];
}
// strain_buff[12]='\0';
// speed_buff[12]='\0';
// volref_buff[12]='\0';
HMISendsRemote((char*)strain_buff);
HMISendsRemote((char*)speed_buff);
HMISendsRemote((char*)volref_buff);
}
结果