欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1601|回復: 3
收起左側

一上電他就不停的開關門,想實現(xiàn)按鍵后開關門執(zhí)行對應次數(shù),單片機程序問題

[復制鏈接]
ID:580835 發(fā)表于 2019-7-9 13:30 | 顯示全部樓層 |閱讀模式
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit old=P1^0;//開左門
sbit cld=P1^1;//關左門
sbit ord=P1^2;//開右門
sbit crd=P1^3;//關右門
sbit k1=P2^0;//開關門3次
sbit k2=P2^1;//開關門5次
sbit k3=P2^2;//開關門8次
void delay(uint x);//延時
void test();//左門開關一次右門開關一次
int keypros();//設置開關門次數(shù)
void main()//主函數(shù)        
{
        int a,y,b=0;
        keypros();//調用按鍵處理函數(shù)
        a=y;//將上面函數(shù)返回值y賦予a
        do
        {        
        test();
                b++;
        }
        while(b<a);
}
int keypros()//按鍵處理函數(shù)
{
        int y;
        if(k1==0)                  //檢測按鍵K1是否按下
        {        
                delay(10);   //消除抖動
                if(k1==0)         //再次判斷按鍵是否按下
                {
                y=3;
                }
                while(!k1);         //檢測按鍵是否松開
        }        
  if(k2==0)             //檢測按鍵K2是否按下
        {        
                delay(10);   //消除抖動
                if(k2==0)         //再次判斷按鍵是否按下
                {
                y=5;
                }
                while(!k2);         //檢測按鍵是否松開
        }        
        if(k3==0)                  //檢測按鍵K3是否按下
        {        
                delay(10);   //消除抖動
                if(k3==0)         //再次判斷按鍵是否按下
                {
                y=8;
                }
                while(!k3);         //檢測按鍵是否松開
        }        
        return(y);
}

void test()//左門開關一次 右門開關一次
{
        old=0;
        delay(1000);
        old=1;
        cld=0;
        delay(1000);
        cld=1;
        ord=0;
        delay(1000);
        ord=1;
        crd=0;
        delay(1000);
        crd=1;
}

void delay(uint x)//延時子函數(shù)
{        
uint i,j;
for(i=x;i>0;i--)
for(j=110;j>0;j--);
}
回復

使用道具 舉報

ID:123289 發(fā)表于 2019-7-9 17:12 | 顯示全部樓層
先畫出流軟件程圖,走通流程圖你就明白了。
回復

使用道具 舉報

ID:277948 發(fā)表于 2019-7-9 17:37 來自觸屏版 | 顯示全部樓層
while(!k3);你這個應該放在判斷語句外邊啊if
回復

使用道具 舉報

ID:332444 發(fā)表于 2019-7-9 20:07 | 顯示全部樓層
int keypros()//按鍵處理函數(shù) {         int y=0;
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表