日本欧美一区-日本欧美一区二区三区片-日本强好片久久久久久AAA-日本-区一区二区三区A片-日本人伦一区二区三区-日本人妻A片成人免费看

電子開發網

電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 電子開發網 >> 電子開發 >> 單片機 >> 正文

51單片機按鍵程序中 while(!key)的作用

作者:佚名    文章來源:本站原創    點擊數:    更新時間:2013-4-14

我相信大家也是常常遇到過這一句代碼while(!key);,那么大家知道這句代碼是有什么用嗎?在這我就和大家分享一下,還是用代碼來說話吧:

#include <reg52.h>

typedef unsigned int uint;

typedef unsigned char uchar;

sbit key=P1^0;

void delay(uint x)

{

   uchar i;

   while(x--)for(i=0;i<120;i++);

}

void scan_key(void)

{

   uchar j;

   if(key==0)//判斷按鍵是否被按下

   delay(10);//按鍵消抖

   if(key==0)//再次判斷是否被下

   {

        while(!key);//等待按鍵釋放

        j++;//J加1

   }

}

     大家不難看出程序中while(!key);的作用吧,在這起到是等待按鍵按開的作用,防止一直不按開按鍵判斷錯誤。當你的按鍵一直沒有釋放,key=0;那么while(!key);中的!key就為1,它這個語句一直為真,永遠地循環下去。當你松開按鍵,key=1,那么 while(!key);中的!key為0,這個語句為假,執行j++;。 所以while(!key);一般用在當按一下,松開才執行一下面的動作的應用中。

Tags:51單片機,while,語句  
責任編輯:admin
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網友評論
關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢