標(biāo)題: 這是我自己做的個(gè)檔位顯示程序,求大神指教 [打印本頁]

作者: 新手,請(qǐng)賜教    時(shí)間: 2017-6-18 21:00
標(biāo)題: 這是我自己做的個(gè)檔位顯示程序,求大神指教
     是摩托車的國(guó)際檔1-N-2-3-4-5,一檔和二檔之間,空檔往下踩半格為一檔,往上勾半格為二檔,一檔往上勾一格為二檔,二檔往上勾為三檔以此類推,往下踩為降檔。其余的還好,就是空檔狀態(tài)下加檔本該是2檔的,但是卻顯示3檔,有時(shí)后接觸一下對(duì)應(yīng)傳感器他還是顯示0(空擋),再接觸下跳成3。想了好久也改了些,還是不知道哪里出了問題,,,求大神們幫忙看下啦



/************************************************************
控制名稱:檔位檢測(cè)與顯示
控制要求:1、用數(shù)碼管顯示各個(gè)檔位。
          2、利用4個(gè)接近傳感器。
輸入信號(hào):脈沖信號(hào)(離散)。
檢測(cè)方式:檢測(cè)動(dòng)作,來區(qū)分不同的檔位。
*************************************************************/
#include<reg52.h>
//sbit key=P2^7;//右
//sbit key1=P2^6;//左
//sbit key2=P3^6;//中間
sbit key=P3^4;//右+
sbit key1=P3^7;//左-
sbit key2=P3^5;//中右(+)
sbit key3=P3^6;//中左(-)
sbit key4=P3^0;//檔位歸空
sbit kaiguan=P3^1;//總開關(guān)
sbit k1=P2^0;
sbit k2=P2^1;
sbit k3=P2^2;
sbit k4=P2^3;
sbit k5=P2^4;
sbit k6=P2^5;
void delay3(unsigned char a)
{
unsigned char b,c;
for(a;a>0;a--)
for(b=100;b>0;b--)
for(c=100;c>0;c--);
}
void delay(unsigned char a)
{
unsigned char b,c;
for(a;a>0;a--)
for(b=100;b>0;b--)
for(c=100;c>0;c--);
}

void main()
{
unsigned char i,a,d,n;
while(1)
{
if(kaiguan==0)
{
if(a==1)k1=0;else k1=1;
if(a==2)k2=0;else k2=1;
if(a==3)k3=0;else k3=1;
if(a==4)k4=0;else k4=1;
if(a==5)k5=0;else k5=1;
if(a==r)k6=0;else k6=1;
}
else
{
if(a==0)a=0;
else a=a;
P3=0xff;
P2=0xff;
P1=0xf0;
if(key4==0){delay(10);k6=0;}
else
{
if(key2==0){delay(10);if(key==0){delay(10);if(a<5)a=a+1;else a=5;}else{if(a==1)delay(10);a=n;}else a=a;}else a=a;
if(key3==0){delay(10);if(key1==0){delay(10);if(a>1)a=a-1;else a=1;}else{if(a==2)delay(10);a=n}else a=a;}else a=a;
if(a=n){delay(10);if(key==0)delay(10);a=2;else a=a}}else a=a;//空擋下加檔
if(a=n){delay(10);if(key==1)delay(10);a=1;else a=a}}else a=a;//空擋下減檔
if(a==1)k1=0;else k1=1;//1檔
if(a==2)k2=0;else k2=1;//2檔
if(a==3)k3=0;else k3=1;//3檔
if(a==4)k4=0;else k4=1;//4擋
if(a==5)k5=0;else k5=1//5檔
if(a==n)k6=0;else k6=1;//0空擋
}
}
}


作者: yzwzfyz    時(shí)間: 2017-6-18 22:56
先畫個(gè)邏輯框圖吧。
作者: cjjcjj1    時(shí)間: 2017-6-18 23:28
提示: 作者被禁止或刪除 內(nèi)容自動(dòng)屏蔽




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1