導航:首頁 > 操作系統 > 單片機按鍵釋放檢測程序

單片機按鍵釋放檢測程序

發布時間:2024-06-01 16:05:44

『壹』 at89c51單片機等待鍵釋放的程序怎麼寫

樓上的都是使用等待按鍵鬆手的方法,比較容易理解,還有一種等待按鍵釋放的程序段思路大概是這樣的:設置一個標志位,然後,有按鍵按下置位標志位,按鍵松開清空標志位,去判斷標志位,就知道按鍵松開了沒,這樣不用讓cpu等待按鍵松開,在等待的時間里,cpu還可以做其他的事情

『貳』 璋佽兘甯鎴戝啓涓涓綆鍗曠殑鎸夐敭媯嫻媍璇璦紼嬪簭 鍔熻兘錛屾垜鎯崇敤鍗曠墖鏈哄幓媯嫻嬫寜閿鍦ㄤ竴縐掗挓鍐呮寜閿琚鎸変笅浜嗗氬皯嬈★紝

#include<reg51.h>

#defineucharunsignedchar

#defineuintunsignedint


sbitled1=P2^0;//瀹氫箟綆¤剼錛

sbitled2=P2^1;

sbitled3=P2^2;

sbitled4=P2^3;

sbitled5=P2^4;

sbitled6=P2^5;

sbitkey=P1^0;


uchartcount=0,count=0;//瀹氫箟鏃墮棿鍙橀噺鍜屾寜閿璁℃暟鍙橀噺錛


voidDelay(uchari)//鏈烘板歡鏃訛紱

{

while(--i);

}


voidLedLight(void)//LED鎺у埗鍑芥暟錛

{

switch(count)

{

case3:led1=0;break;//3涓嬫椂,LED1浜錛

case5:led2=0;break;//5涓嬫椂,LED2浜錛

case7:led3=0;break;//7涓嬫椂,LED3浜錛

case9:led4=0;break;//9涓嬫椂,LED4浜錛

case11:led5=0;break;//11涓嬫椂,LED5浜錛

case13:led6=0;break;//13涓嬫椂,LED6浜錛

default:P2=0xff;break;//鍏朵綑鐨勯兘涓嶄寒錛

}

}


voidInitTimer0(void)//瀹氭椂鍣0鍒濆嬪寲錛

{

TMOD=0x00;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

TR0=1;

}


voidmain(void)//涓誨嚱鏁

{

InitTimer0();

while(1)//鏃犻檺寰鐜;

{

if(key==0)//媯鏌ユ寜閿鏄鍚︽寜涓嬶紱

{

Delay(10);//鏈烘板歡鏃;

if(key==0){count++;}//鎸夐敭璁℃暟;

while(key==0);

}

if(TF0==1)//澶嶄綅瀹氭椂鍣0;

{

TF0=0;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

tcount++;

if(tcount==20)//1縐掔殑鏃墮棿;

{

LedLight();

Delay(100);

count=0;//澶嶄綅鎸夐敭璁℃暟鍙橀噺;

}

}

}

}

閱讀全文

與單片機按鍵釋放檢測程序相關的資料

熱點內容
老師程序員輕松 瀏覽:953
女程序員理發視頻 瀏覽:35
網盤源碼系統商業 瀏覽:466
php網路工程師崗位職責 瀏覽:998
土豆伺服器風險怎麼樣 瀏覽:990
win11怎麼安裝安卓游戲 瀏覽:555
程序員報考內容 瀏覽:302
su3維文本命令 瀏覽:871
單片機存儲器類型 瀏覽:13
unix查看埠命令 瀏覽:21
程序員團建活動有哪些 瀏覽:67
libzip壓縮解壓 瀏覽:943
廣州銀行app如何導流水 瀏覽:385
什麼是寫命令 瀏覽:687
程序員眼中的道德 瀏覽:506
文件解壓後亂碼是什麼原因 瀏覽:730
php路徑轉換 瀏覽:188
php中flag 瀏覽:183
當程序員要做什麼准備 瀏覽:284
pinctrllinux 瀏覽:901