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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

單片機計數代碼問題困擾幾天了

查看數: 2084 | 評論數: 8 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2019-9-2 21:20

正文摘要:

本人利用ad轉換出兩個不同電壓,a電壓和b電壓。a是始終比b小的,現在我想,當a>b時,c加1,如果a一直大于b,c就會一直加,但是我不需要它一直加,只加了一開始a>b的一次。我現在代碼是這樣的。如果a>b是一瞬間 ...

回復

ID:573664 發表于 2019-9-3 12:07
感謝各位大佬的分享,已經解決了。感謝大家。
ID:573664 發表于 2019-9-3 12:05
cjm82 發表于 2019-9-2 23:13
設置一個標志變量
例如

兄弟,大哥謝謝,解決了
ID:606788 發表于 2019-9-3 12:01

加個標志位,a>b同時標志位為零條件滿足時c+1,標志位置位1; 當a<=b時,標志位清零
ID:282850 發表于 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;
}
ID:373388 發表于 2019-9-3 10:03
加個標志位,a>b同時標志位為零條件滿足時c+1,標志位置位1; 當a<=b時,標志位清零
ID:388197 發表于 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++
}
ID:462827 發表于 2019-9-2 22:40
加個標志變量就行了呀
ID:275826 發表于 2019-9-2 22:12
bit flag=0;
if((!flag)&&(a>b))
  {c++;
  flag=1;}
else flag=0;

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表