標(biāo)題: 為啥我的程序初始化之后,燈還會(huì)亮 [打印本頁(yè)]

作者: 風(fēng)案件快遞    時(shí)間: 2017-12-5 12:05
標(biāo)題: 為啥我的程序初始化之后,燈還會(huì)亮
這是我的代碼

#include<STC15F2K60S2.H>

void delay(int a);
void keyscan();
int s1=16;

void main()
{P2=0XA0;P0=0X00;P2=0X80;P0=0XFF;
        keyscan();
        if(s1==0)
        {
        P0=0X55;}
}


void delay(int a)
{  int i; int b;for(i=a;a>0;a--)

        for(b=845;b>=0;b--);
}
void keyscan()
{if (        P30==0)
        {delay(5);
        if(P30==0)
        {s1=0;
        }
        while(P30!=1)
        {}
        }
  else if (        P31==0)
{delay(5);
        if(P31==0)
        {s1=1;
        }
        while(P31!=1)
        {}
        }
        else        if (        P32==0)
                {delay(5);
        if(P32==0)
        {s1=2;
        }
        while(P32!=1)
        {}
        }
                else if (        P33==0)
                {delay(5);
        if(P33==0)
        {s1=3;
        }
        while(P33!=1)
        {}
        }
}

程序上電之后,八個(gè)led燈還會(huì)亮,但是亮的程度和正常led燈量滅不太一樣,

作者: wulin    時(shí)間: 2017-12-5 13:48
因?yàn)槟愕膍ain程序沒(méi)有主循環(huán),一直不斷的初始化。改這樣試試。
void main()
{
//        P2=0XA0;
//        P0=0X00;
        P2=0X80;
        P0=0XFF;
        while(1)
        {
                keyscan();
                if(s1==0)
                {
                        P0=0X55;
                }
        }
}
作者: zhnyong    時(shí)間: 2017-12-5 14:40
謝謝了。高見(jiàn)。
作者: ggyl    時(shí)間: 2017-12-5 14:43
幫忙頂
作者: dfhiwueh    時(shí)間: 2017-12-5 14:48
主程序的問(wèn)題,加入一個(gè)死循環(huán)
作者: 我QQ翁群    時(shí)間: 2017-12-5 14:54
可能單片機(jī)里面已經(jīng)寫入程序了
作者: 風(fēng)案件快遞    時(shí)間: 2017-12-5 15:04
wulin 發(fā)表于 2017-12-5 13:48
因?yàn)槟愕膍ain程序沒(méi)有主循環(huán),一直不斷的初始化。改這樣試試。
void main()
{

可以了,但是為啥呢,程序在主函數(shù)里一直走,走完之后再?gòu)念^再執(zhí)行一遍嗎?
作者: 風(fēng)案件快遞    時(shí)間: 2017-12-5 15:12
wulin 發(fā)表于 2017-12-5 13:48
因?yàn)槟愕膍ain程序沒(méi)有主循環(huán),一直不斷的初始化。改這樣試試。
void main()
{

可以了,但是為啥會(huì)這樣,他走完主程序之后不就停了嗎
作者: 奮斗之路    時(shí)間: 2017-12-5 15:40
你的程序可能有錯(cuò)誤  好好看看  
作者: HC6800-ES-V2.0    時(shí)間: 2017-12-5 15:45
風(fēng)案件快遞 發(fā)表于 2017-12-5 15:12
可以了,但是為啥會(huì)這樣,他走完主程序之后不就停了嗎

單片機(jī)在執(zhí)行完主函數(shù)后,如果沒(méi)有其它設(shè)置,會(huì)再次從頭執(zhí)行主函數(shù),不會(huì)停下來(lái)的。
作者: jjjjjj4455666    時(shí)間: 2017-12-5 15:50
程序可能有錯(cuò)誤
作者: www76307    時(shí)間: 2017-12-5 16:12
主程序的問(wèn)題,加入一個(gè)死循環(huán)
作者: 風(fēng)案件快遞    時(shí)間: 2017-12-5 17:09
HC6800-ES-V2.0 發(fā)表于 2017-12-5 15:45
單片機(jī)在執(zhí)行完主函數(shù)后,如果沒(méi)有其它設(shè)置,會(huì)再次從頭執(zhí)行主函數(shù),不會(huì)停下來(lái)的。

好的懂了




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