標(biāo)題: 新手請(qǐng)教一個(gè)問題,請(qǐng)高手幫忙 [打印本頁]

作者: abeyond    時(shí)間: 2012-4-11 12:42
標(biāo)題: 新手請(qǐng)教一個(gè)問題,請(qǐng)高手幫忙

新手請(qǐng)教大家一個(gè)問題,我做了一個(gè)溫度下限報(bào)警的程序,現(xiàn)在現(xiàn)在想在程序里加點(diǎn)功能,當(dāng)temp<set的時(shí)候,num加1就不在加了,然后等待下次temp<set的時(shí)候再加1,如此循環(huán)。可是怎么也想不出來該怎么加,麻煩大家?guī)兔纯磻?yīng)該怎么寫這部分程序。
#define uint unsigned int
#define uchar unsigned char
#define ms 4
#define set 30  //設(shè)定溫度下限

sbit beep=P1^5;

uchar code table1[]= {0x28,0xEB,0x32,0xA2,0xE1,0xA4,0x24,0xEA,0x20,0xA0,0x60,0x25,0x3C,0x23,0x34,0x74};  
//                    0    1    2    3    4    5    6    7    8    9    A    B    C    D    E    F
uchar code table2[]= {0x08,0xcb,0x12,0x82,0xc1,0x84,0x04,0xca,0x00,0x80};

uchar flag=0,temp;
uchar num;

void disp(uint x)
{
  P0=table1[num/10];
  P2=0x7f;
  delayms(ms);

  P0=table1[num%10];
  P2=0xbf;
  delayms(ms);

  P0=table1[x/10];
  P2=0xdf;
  delayms(ms);

  P0=table1[x%10];
  P2=0xef;
  delayms(ms);
}

void dete()     //想在這里加個(gè)功能,當(dāng)temp<set的時(shí)候,蜂鳴器響的同時(shí),num加1(只加個(gè)   1),然后就等待下一次temp<set的時(shí)候再加1,就是這里怎么也想不出來該怎么寫。
{
 
  if(temp<set)
   {
     beep=!beep;
     num        (這里下面不知道該怎么寫了,如果直接寫成num++;的話,條件一成立num就不停的加,請(qǐng)大家指點(diǎn)一下,謝謝。
   }
  else
   {
     beep=1;
  flag=0;
   }   
}

void main()
{
  delayms(1);
  sendChangeCmd();
  while(1)
   {
     temp=getTmpValue();
     disp(getTmpValue());
     sendChangeCmd();
  dete();
   }
}






歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1