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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3843|回復: 15
打印 上一主題 下一主題
收起左側

單片機C語言程序最后的這個while起什么作用?

  [復制鏈接]
跳轉到指定樓層
樓主
ID:761819 發表于 2020-5-26 17:48 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式



它這里的while起什么作用啊?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:761819 發表于 2020-5-26 17:50 | 只看該作者

回復

使用道具 舉報

板凳
ID:213173 發表于 2020-5-26 18:22 | 只看該作者
等你松手
回復

使用道具 舉報

地板
ID:761825 發表于 2020-5-26 18:35 | 只看該作者
您好,意思是當K1=0(!k1=1)的時候程序會在這里無限循環,原地等待;當k1=1時跳出循環,返回主程序。
回復

使用道具 舉報

5#
ID:94031 發表于 2020-5-26 18:39 | 只看該作者
回復

使用道具 舉報

6#
ID:155507 發表于 2020-5-26 18:58 | 只看該作者
按鍵松手檢查  按鍵已抬起
回復

使用道具 舉報

7#
ID:282850 發表于 2020-5-26 19:23 | 只看該作者
當kl口線為1時,什么都不做。沒有什么意義。
回復

使用道具 舉報

8#
無效樓層,該帖已經被刪除
9#
ID:342911 發表于 2020-5-26 19:57 | 只看該作者
等待用戶松開按鍵

keypress是按鍵檢測函數,k1 == 0時代表按鍵按下

while中判斷條件是“!k1”,也就是按鍵抬起k1 == 1時,!k為假,才會退出循環,否則一直死循環等待用戶松開按鍵,沒有這個處理當按下不放時就會造成不斷觸發。
回復

使用道具 舉報

10#
ID:239611 發表于 2020-5-26 20:15 | 只看該作者
等待按鍵釋放,當按鍵一直按下,K1==0,循環等待;當按鍵釋放,K1==1, 結束循環。
回復

使用道具 舉報

11#
ID:307407 發表于 2020-5-26 21:00 | 只看該作者
按鍵在按下的時候有大約幾個毫秒的抖動,
回復

使用道具 舉報

12#
ID:760179 發表于 2020-5-26 21:19 來自觸屏版 | 只看該作者
當k1值不為零時,跳出循環
回復

使用道具 舉報

13#
無效樓層,該帖已經被刪除
14#
ID:307407 發表于 2020-5-26 21:24 | 只看該作者
樓主你這應該是獨立按鍵防抖動程序,我首先講一下獨立按鍵掃描原理:
  當按鍵k1按下時會有幾個毫秒的抖動,也就是不會立馬為低電平,只有過了這個時間段才會徹底穩定在低電平,當按鍵松開時k1又會回到高電平。
我再啰嗦一下while語句用法:
  while是一個循環語句,如 while(1); 就是一個死循環語句,程序在里面出不來,我們知道在c語言里規定“0”為假,非“0”為真,這里括號里是“1”,也就是真,那么就相當于 while(真); ,程序是出不來的。
while起什么作用?
  回到樓主的程序,假設程序從21行語句開始,當按鍵k1按下時,k1為低電平,滿足if條件語句,程序進而調到22行,這里的delay語句延時消抖,前面也講過為什么消抖,程序進而到23行,這里又是一個if語句,但這個if語句不能少。此時按鍵還沒松開,但是已趨于穩定,穩定在低電平,運行的24行……然后到26行,由于此時K1為低電平,我用“0”代替,那么 !k1 為“1”,while(!k1)相當于while(真),程序跳不出去,只有當松開按鍵改變k1的電平才能跳出這個循環。如果不在這里設置while(!k1),那么程序會一直跑,24行的led會一直閃。
回復

使用道具 舉報

15#
ID:452950 發表于 2020-5-26 21:28 | 只看該作者
當K1等于0時循環,當K1等于1時跳出循環。
回復

使用道具 舉報

16#
ID:579397 發表于 2020-5-26 21:31 | 只看該作者
等待按鍵釋放
回復

使用道具 舉報

17#
ID:761989 發表于 2020-5-26 21:34 | 只看該作者
最后這個while就是 檢測按鍵k1是否被釋放 的作用
回復

使用道具 舉報

18#
ID:761989 發表于 2020-5-26 21:36 | 只看該作者
最后這個while就是 檢測按鍵k1是否被釋放 的作用
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

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