標(biāo)題: 請(qǐng)大神指點(diǎn)我第一次寫的51單片機(jī)的程序,會(huì)不會(huì)有問題 [打印本頁]

作者: miao22457    時(shí)間: 2019-3-21 14:31
標(biāo)題: 請(qǐng)大神指點(diǎn)我第一次寫的51單片機(jī)的程序,會(huì)不會(huì)有問題
STC89C52RC,說明一下兩個(gè)任務(wù)沒有關(guān)連,只是想放在一個(gè)單片機(jī)上實(shí)現(xiàn),
初學(xué)51,如果有大神有更好的,請(qǐng)指點(diǎn),謝謝
目地:1.單片機(jī)(1-10分鐘)開關(guān)一次6個(gè)繼電器控制的LE);2.6個(gè)單獨(dú)按鍵控制一個(gè)LED,一個(gè)或者多個(gè)按鍵按下就開燈。
P0^0連接LED
P1^0-P1^5連接按鍵
P2連接的繼電器
#include <reg52.h>
unsigned long i;
sbit led=P0^0;
sbit k1=P1^0;
sbit k2=P1^1;
sbit k3=P1^2;
sbit k4=P1^3;
sbit k5=P1^4;
sbit k6=P1^5;
void main(void)
{
        while(1)
        {
                led=1;
                P1=0XFF;
                if(k1==0)
                        led=0;
                else if(k2==0)
                        led=0;
                else if(k3==0)
                        led=0;
                else if(k4==0)
                        led=0;
                else if(k5==0)
                        led=0;
                else if(k6==0)
                        led=0;
                else
                        led=1;
                P2=0x00;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
                i=1500000;
                while(i--);
                P2=0xff;
                i=30000;
                while(i--);                                                                                       
        }
}


作者: 15667079525    時(shí)間: 2019-3-21 14:31
第一點(diǎn):按鍵是需要消抖的,你每次是直接判斷不太準(zhǔn)確;第二點(diǎn):你把led=1;放在循環(huán)里面,但是你每次按鍵之后沒有延時(shí),就會(huì)導(dǎo)致燈會(huì)變得很暗。




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