请教大家:
下面是一个参数菜单设置代码,set5这个参数需要显示负数,现在正数显示正常,负数显示乱码,应该怎么调整一下,请哪位指点一下。谢谢大家。
char set5;
while(state==6)//设置状态
{
if(setplace==0)
{
writeData(0xc3,SEGData1[1]);
writeData(0xc4,SEGData1[10]);
writeData(0xc5,SEGData1[10]);
writeData(0xc6,SEGData1[10]);
writeData(0xc7,SEGData1[set1/10%10]);
writeData(0xc8,SEGData1[set1%10]);
}
if(setplace==1)
{
writeData(0xc3,SEGData1[2]);
writeData(0xc4,SEGData1[10]);
writeData(0xc5,SEGData1[10]);
writeData(0xc6,SEGData1[set2/100]);
writeData(0xc7,SEGDataDp[set2%100/10]);
writeData(0xc8,SEGData1[set2%10]);
}
if(setplace==2)
{
writeData(0xc3,SEGData1[3]);
writeData(0xc4,SEGData1[10]);
writeData(0xc5,SEGData1[10]);
writeData(0xc6,SEGData1[10]);
writeData(0xc7,SEGDataDp[set3/10]);
writeData(0xc8,SEGData1[set3%10]);
}
if(setplace==3)
{
writeData(0xc3,SEGData1[4]);
writeData(0xc4,SEGData1[10]);
writeData(0xc5,SEGData1[10]);
writeData(0xc6,SEGData1[10]);
writeData(0xc7,SEGData1[10]);
writeData(0xc8,SEGData1[set4]);
}
if(setplace==4)
{
writeData(0xc3,SEGData1[5]);
writeData(0xc4,SEGData1[10]);
writeData(0xc5,SEGData1[10]);
if(fuflag==1){set5 = -set5;
writeData(0xc6,0x40);//显示负号-}
else {writeData(0xc6,SEGData1[10]);}
writeData(0xc7,SEGDataDp[set5/10]);
writeData(0xc8,SEGData1[set5%10]);
}
if(setplace==5)
{
writeData(0xc3,SEGData1[6]);
writeData(0xc4,SEGData1[10]);
writeData(0xc5,SEGData1[10]);
writeData(0xc6,SEGData1[10]);
writeData(0xc7,SEGData1[10]);
writeData(0xc8,SEGData1[set6]);
}
if(setplace==6)
{
writeData(0xc3,SEGData1[7]);
writeData(0xc4,SEGData1[10]);
writeData(0xc5,SEGData1[10]);
writeData(0xc6,SEGData1[10]);
writeData(0xc7,SEGData1[10]);
writeData(0xc8,SEGData1[set7]);
}
if(up == 0) //K1+按键设置
{
while(up == 0);
if(setplace==0)
{
set1++;
if(set1>20)
set1=1;
}
if(setplace==1)
{
set2++;
if(set2>180)
set2=1;
}
if(setplace==2)
{
set3++;
if(set3>10)
set3=1;
}
if(setplace==3)
{
set4=1;
}
if(setplace==4)
{
set5++;
if(set5>99)
set5=0;
if(set5>=0)fuflag=0;
}
if(setplace==5)
{
set6=1;
}
if(setplace==6)
{
set7++;
if(set7>2) set7=0;
}
save();
}
if(down == 0) //K2-按键设置
{
while(down == 0);
if(setplace==0)
{
set1--;
if(set1<1)
set1=20;
}
if(setplace==1)
{
set2--;
if(set2<1)
set2=180;
}
if(setplace==2)
{
set3--;
if(set3<1)
set3=1;
}
if(setplace==3)
{
set4=0;
}
if(setplace==4)
{
set5--;
if(set5<-99)
set5=0;
if(set5<0) fuflag=1;
}
if(setplace==5)
{
set6=0;
}
if(setplace==6)
{
set7--;
if(set7<0) set7=2;
}
save();
}
if(set == 0)
{
while(set == 0);
setplace++;
if(setplace>=7)
{
setplace=0;
state=0;//返回
}
}
} //参数设置结束
|