void temp_hum_Set() { SetSelect=0; KeyNumber=Key(); if(KeyNumber==3) { _TH[4]=tm1668_get_digit(set[0]/10); display(_TH); } KeyNumber=Key(); if(KeyNumber==3) { SetSelect++; _HU[4]=tm1668_get_digit(set[1]/10); _HU[5]=tm1668_get_digit(set[1]%10); display(_HU); KeyNumber=Key(); if(KeyNumber==2) { set[SetSelect]++; if(set[1]>99){set[1]=0;} _HU[4]=tm1668_get_digit(set[1]/10); _HU[5]=tm1668_get_digit(set[1]%10); display(_HU); } KeyNumber=Key(); if(KeyNumber==1) { set[SetSelect]--; if(set[1]<1){set[1]=99;} _HU[4]=tm1668_get_digit(set[1]/10); _HU[5]=tm1668_get_digit(set[1]%10); display(_HU); } } else if(KeyNumber==2) { int oldValue = set[SetSelect]; set[SetSelect]++; if(set[0]>60){set[0]=0;} if(oldValue != set[SetSelect]) { display(_TH); } } else if(KeyNumber==1) { set[SetSelect]--; if(set[0]<1){set[0]=60;} display(_TH); } } 这段代码怎么修改才能使set[SetSelect]加或者减一次,display(_TH)就执行一次
时间: 2024-03-22 21:40:41 浏览: 36
你可以将 display(_TH) 的执行放在 set 值改变的 if 语句块里面,这样只有当 set 值改变时才会执行 display(_TH)。修改后的代码如下:
void temp_hum_Set() {
SetSelect=0;
KeyNumber=Key();
if(KeyNumber==3)
{
_TH[4]=tm1668_get_digit(set[0]/10);
display(_TH);
}
KeyNumber=Key();
if(KeyNumber==3)
{
SetSelect++;
_HU[4]=tm1668_get_digit(set[1]/10);
_HU[5]=tm1668_get_digit(set[1]%10);
display(_HU);
KeyNumber=Key();
if(KeyNumber==2)
{
int oldValue = set[SetSelect];
set[SetSelect]++;
if(set[1]>99){set[1]=0;}
if(oldValue != set[SetSelect])
{
display(_HU);
}
}
KeyNumber=Key();
if(KeyNumber==1)
{
int oldValue = set[SetSelect];
set[SetSelect]--;
if(set[1]<1){set[1]=99;}
if(oldValue != set[SetSelect])
{
display(_HU);
}
}
}
else if(KeyNumber==2)
{
int oldValue = set[SetSelect];
set[SetSelect]++;
if(set[0]>60){set[0]=0;}
if(oldValue != set[SetSelect])
{
display(_TH);
}
}
else if(KeyNumber==1)
{
int oldValue = set[SetSelect];
set[SetSelect]--;
if(set[0]<1){set[0]=60;}
if(oldValue != set[SetSelect])
{
display(_TH);
}
}
}
阅读全文