『壹』 單片機C語言按鍵開關程序
#include<reg52.h>
#defineuintunsignedint
#defineucharunsignedchar
voiddelay_ms(uint);
sbitled0=P0^0;
sbitled1=P0^1;
sbitkey1=P3^2;
sbitkey2=P3^3;
voidmain()
{
uchari=0;
ucharj=0;
while(1)
{
if(key1==0)//按鍵1
{
delay_ms(10);
if(key1==0)
{
i++;
i=i%2;
switch(i)
{
case0:led0=1;break;//關小燈
case1:led0=0;break;//開小燈
default:break;
}
}
while(!key1);
}
if(key2==0)//按鍵2
{
delay_ms(10);
if(key2==0)
{
j++;
j=j%2;
switch(j)
{
case0:led1=1;break;//關小燈
case1:led1=0;break;//開小燈
default:break;
}
}
while(!key2);
}
}
}
voiddelay_ms(uintz)//延時子程序
{
uintx,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
『貳』 51單片機中按鍵程序用C怎麼寫
用一個定時器,先賦值一個num,當num=20的時候,LED亮的時間是1s,當按下鍵,讓num+20(12M的晶振)在定義一個a,判斷a是否與num相等。這樣試試呢....
『叄』 51單片機的按鍵控制小燈亮滅的問題(程序類型:c語言)
系統設置如下 p1.0 按鍵1 p1.1 按鍵2 p1.2按鍵3
p2.0 p2.1 p 2.2 分別接一個繼電器和LED
IO口 初始化均為高電平
程序
main()
{
while(1)
{
if(p1.0==0)
if(p1.1==0)
if(p1.2==0)
}
『肆』 51單片機1按鍵切換3種不同狀態的c程序
主程序大致是這樣的
flag=0;//記錄按鍵次數
While(1)
{
if(key==0){delayms(20);if(key==0)flag++;}//按鍵檢測
if(flag==3)flag=0;
if(flag==0){正向流水}
else if(flag==1){反向流水}
else {間隔流水}
}存在問題,由於流水燈執行時間較長,因此對按鍵響應緩慢,可以在流水燈之間加入按鍵檢測語句,當檢測到按鍵按下時,用break語句退出當前循環
『伍』 單片機按鍵觸發C程序
while(1)
{
if(keyflag==1) //有按下切出死循環
break;
else continue;
}
while(1)
{
..... //用戶自己的程序
}
這種方法是模擬按鍵按下啟動真正的應用程序,觸發的是自己的功能程序短。從效果上來還是可以的
『陸』 單片機 4x4鍵盤c程序
把 if(P1!=k) 該做 if(P1!==k) 其他的沒看了·
『柒』 51單片機 C語言按鍵多功能程序怎麼寫
長按或短按你可以用定時器來設定時間。時間一到就直接跳出來執行就可以了。想連續按1或2或3次的話你就直接用個變數來當計數器,按一下計數一次就可以了。
『捌』 C語言實現單片機按鍵
這個是曾經一個天才級的年輕人寫的語句
#define
reset()
((void
(code
*)
(void))
0x0000)
()
你在要復位的的時候,添加reset();就可以實現軟體復位了
『玖』 鍵盤 單片機程序C語言
哪有這樣寫的?
你說的也不清楚啊
P3.1串口輸出一個信號給電腦四個鍵帶便「上下左右」,...
這句什麼意思呢?