㈠ 單片機如何判斷4個按鍵正反依次按下後狀態
計數啊。如果是先按1或是4 就進入去。中間注意循環等待時間。
if(key1 == 0x00)
{
if(key2 == 0x00)
{
順向。
}
else
{
不是順向,單獨動作。
}
}
㈡ 51單片機用四個按鍵做程序
//假設晶振12MHZ,其餘都是假設低電平有效
#include "reg51.h"
sbit KEY1=P1^0;前進鍵
sbit KEY0=P1^1;後退鍵
sbit KEYL=P1^2;
sbit KEYR=P1^3;
sbit CON1=P2^0;前進控制
sbit CON0=P2^1;後退控制
sbit CONL=P2^2;
sbit CONR=P2^3;
void main(void)
{
P1=P1 | 0X0F;
P2=P1 | 0X0F;
while(1)
{
if(KEY1==0)
{
CON1=0;
}
else CON1=1;
if(KEY0==0)
{
CON0=0;
}
else CON0=1;
if(KEYL==0)
{
CONL=0;
}
else CONL=1;
if(KEYR==0)
{
CONR=0;
}
else CONR=1;
}
}
㈢ 要用單片機連接4個獨立按鍵,需要用幾個I/0引腳
簡單的的連接方法需要用4個I/O引腳,就是每一個按鍵接一個引腳。按鍵一端接IO口,另外一端可以接地。通過IO口直接讀取電平是否有變化來判斷按鍵是否按下。
㈣ 用51單片機用4個獨立按鍵控制8個數碼管的加減和
用4個獨立按鍵控制8個數碼管的加減和,你這是實物開發板吧,數碼管電路中8個數碼管的位控制端LED1~LED8接哪啦,還應該有位控電路的,估計是用一片74HC138(或74LS138)控制的,這位控未知,不能寫程序。要求第三位數碼管顯示 + 號,這實現不了,數碼管是無法顯示 + 號的。
㈤ 要用單片機鏈接4個獨立按鍵,需要幾個I/O引腳
要用單片機連接四個獨立按鍵,需要4個。
㈥ 51單片機 c語言 如何用4個按鍵控制4個流水燈
不用中斷一樣的實現,而且可以有多少個按鍵就可以有多少種流水燈方式。你使用的鍵盤函數直接調用流水燈函數就可以。比如使用獨立鍵盤,if(P1.1==0) light_water(); 然後:
void light_water()
{
num=1;
for(a=0;a<8;a++)
{
P1.1=num<<1;
delay(1000); //延時;
keyboard();//執行時又不停掃描鍵盤函數;
}
}
這樣就會有一個LED從右往左移動8次;那麼當第一次流水未完時,又調用第二個流水函數light_water1就能中斷當前執行的流水函數又去執行第二個流水燈函數了。
希望我的回答能幫助到你。
㈦ 單片機2個埠控制4個按鍵怎樣實現
單片機IO口如果識別更多的按鍵,簡單的方法就是通過控制按鍵按下,識別電流的流向。這說可能不是很理解,下面就來介紹下,如下圖按鍵識別電路:
歡迎評論交流,也歡迎大家關注我:單片機嵌入式愛好者。會有源源不斷的干貨分享,能真正快速幫大家解決實際工作中遇到的問題哦!
㈧ 用51單片機寫程序,4個按鍵控制8個小燈切換四種燈光效果
P1口接8個LED燈,P3口接4個按鍵K1~K4,用於控制流水燈的四種效果,模擬圖如下。
㈨ 用51單片機寫程序,4個按鍵燈控制8個彩燈切換九種燈光效果
P1口接8個LED燈,P3口接4個按鍵K1~K4,用於控制流水燈的四種效果,模擬圖如下。
㈩ 51單片機識別四個獨立按鍵是短按還是長
是少打一個字吧 ,最後應該有一個按字吧?
判斷按鍵是長按,可以設定為按3秒以上為長按,那就是當有按鍵按下時,就計時,當按鍵松開後,計時結束,然後再判斷時間,大於3秒為長按,否則為短按。