欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機計數代碼問題困擾幾天了 [打印本頁]

作者: 勿忘我c    時間: 2019-9-2 21:20
標題: 單片機計數代碼問題困擾幾天了
本人利用ad轉換出兩個不同電壓,a電壓和b電壓。a是始終比b小的,現在我想,當a>b時,c加1,如果a一直大于b,c就會一直加,但是我不需要它一直加,只加了一開始a>b的一次。我現在代碼是這樣的。如果a>b是一瞬間的話,他就能實現加1功能,如果a>b時間比較久,我該怎么讓它不會一直加。不知道代碼該怎么寫,這個問題困擾我幾天了,求大家解答解答,謝謝了

1567430199(1).jpg (18.56 KB, 下載次數: 59)

1567430199(1).jpg

作者: tyrl800    時間: 2019-9-2 22:12
bit flag=0;
if((!flag)&&(a>b))
  {c++;
  flag=1;}
else flag=0;
作者: hantu    時間: 2019-9-2 22:40
加個標志變量就行了呀
作者: cjm82    時間: 2019-9-2 23:13
設置一個標志變量
例如

u8 flag = 0;              //0表示如果下次檢測到a>b則c++, 1表示上一次檢測到a>b,
if(a>b)
{
    if(flag = 0)
    {
        c++;
        flag = 1;      //c++后,將flag置1,用以防止下一次檢測到a>b時 再次執行c++
    }
}else                 //如果a>b不成立,即a<=b
{
     flag = 0;       //將flag清0,以便下一次檢測到a>b時執行c++
}
作者: xhaity    時間: 2019-9-3 10:03
加個標志位,a>b同時標志位為零條件滿足時c+1,標志位置位1; 當a<=b時,標志位清零
作者: f556    時間: 2019-9-3 10:19
較簡單的問題。樓上加flag的方法可行,如果不加標志,也可行。按樓主意思,發生a>b時,c加1,且只加一次,那就是C=1。
c=0;

//AD轉換.....

if(a>b)
{
  c=1;
  LED2=!LED2;
  delayms(50);
}
else
{
  c=0;
}

作者: yupengwei    時間: 2019-9-3 12:01

加個標志位,a>b同時標志位為零條件滿足時c+1,標志位置位1; 當a<=b時,標志位清零
作者: 勿忘我c    時間: 2019-9-3 12:05
cjm82 發表于 2019-9-2 23:13
設置一個標志變量
例如

兄弟,大哥謝謝,解決了
作者: 勿忘我c    時間: 2019-9-3 12:07
感謝各位大佬的分享,已經解決了。感謝大家。




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