❶ 請問51單片機如何用一個獨立按鍵控製程序的暫停和繼續
1.你的程序並不能實現顯0~9,1357,0246,亮燈和響鈴是可以。
2.用P1.1按鍵是可以實現暫停和繼續的,並不需要中斷。不是什麼事都需要中斷,好像離開中斷就什麼也不能做了?
3.你想暫停,是隨時暫停,還是什麼時候暫停?
❷ 51單片機按鍵控制
#include<reg52.h>
sbit key=你接按鈕的埠;
sbit led=你接LED的埠;
void delay(unsigned int ms)
{
unsigned int x,y;
for(x=ms;x>0:x--)
for(y=100;y>0;y--);
}
void main()
{
while(1)
{
if(key==0)//判斷鍵是否按下
{
delay(10);//10ms延遲
if(key==0)//消抖
{
led=1;//如果共陽極led=0;
delay(500);
led=0;
}
}
}
}
❸ 獨立按鍵與51單片機相連為什麼有的需要接電源,有的則不用
一般不需接電源,將獨立按鍵接於單片機IO管腳和地(電源負極)之間,讓單片機管腳輸出高電平,當有按鍵按下時,讀得結果為低電平 如下圖中 S2 S3 S4
如果想讓平時讀得為低電平,按鍵按下為高電平,需外接一下拉電阻(阻值小於10K),將單片機輸出的高電平拉低,按鍵接於正電源和IO口之間,當按鍵按下時又讀出高電平 如下圖中S5
顯然這種方法比較麻煩,並且如果程序不小心錯誤地讓該IO口輸出0,恰巧又按下按鍵就會損壞單片機
❹ 51單片機如何控制按鈕。
什麼單片機按鍵原理都差不多的,准確來說不是控制,而是識別。識別到按下就行
❺ 51單片機按鍵
#include<reg51.h>
#define uchar unsigned char
uchar num,time,limit=2;
sbit led1=P1^0;
sbit key1=P2^0;
bit flag=0;
void t0isr() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
time++;
if(time>=60)
{
TR0=0;
time=0;
flag=1;
}
}
void t1isr() interrupt 3
{
TH1=(65536-10000)/256;
TL1=(65536-10000)%256;
num++;
if(num>limit)
{
num=0;
led1=~led1;
}
}
main()
{
TMOD=0x11;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TH1=(65536-10000)/256;
TL1=(65536-10000)%256;
ET0=1;
ET1=1;
EA=1;
while(1)
{
if(key1==0)
{
time=0;
num=0;
TR1=1;
TR0=1;
flag=0;
while(key1==0);
if(flag==1)limit++;
}
}
}
❻ 51單片機片P1口接按鍵需接多大電阻
由於內部已有上拉電阻,所以不用接。如果為了增強抗干擾,可以接。10K就可以。電阻小了會對增加電路的功耗。
大家普遍學習的都是MCS-51的單片機。此類單片機除P0口外,其他口線都是自帶上拉電阻的。P0口因為沒有內部上拉,所以,其驅動能力會較好。實際應用的時候,P0口都是作為數碼管的段選來使用的。
P1/P2/P3口都有內部上拉。
❼ 51單片機哪些介面可以接按鍵開關
51單片機所有的lO口都可以作為輸入或者輸出,按鍵作為輸入可以接任何lO口
為了簡單獨立按鍵一般直接接於IO引腳和地之間,利用內部上拉電阻
如果接於IO和電源VCC之間,還要加下拉電阻,並且還要保證該引腳不要誤操作,例如你讓該引腳輸出低電平,這時按下按鍵,就會有很大電流灌入單片機,損壞該IO口
❽ 單片機按鈕4腳個怎麼焊接啊
可以根據按鈕型號查一下,一般4個腳的按鈕是對角線連接的,也就是焊接兩個對角線上的腳就可以了