返回列表 发帖

防盗器---工厂内部---生产资料

以下是原程序(原码),不是乱码哦(就是编程的C语言)改的话就可改变程序
连c语言 附上
#include <AT89x051.H>
#define uint unsigned int
#define uchar unsigned char
void delay(uint z)
{
        uint x,y;
        for(x=z;x>0;x--)
                for(y=124;y>0;y--);        
}
uchar suo,kai,a,d,e,f,g;
sbit BIANMEN=P1^1;
sbit ZHENGDONG=P1^5;
sbit KEYON=P1^4;
sbit SUOINT=P3^3;
sbit KAIINT=P3^2;
sbit SHANSUO=P1^6;
sbit LABA=P1^7;
sbit XIHUO=P1^3;
void init();
void sanshuo(uchar b);
void main()
{

        init();
        while(1)
        {
                while(kai)
                {
                        d=0;
                        XIHUO=1;
                        if(BIANMEN==0)
                        {
                                f++;
                                SHANSUO=1;
                                delay(500);
                                SHANSUO=0;
                                delay(500);
                                if(f==6)
                                {
                                f=0;
                                while(!BIANMEN);
                                }
                        }
                                
                }
                while(suo)
                {
                        d=0;
                        XIHUO=0;
                        if(ZHENGDONG==0)
                        {
                                a++;
                                if(a==2)
                                {
                                        a=0;
                                        sanshuo(15);
                                        LABA=0;
                                        break;
                                }
                                LABA=1;
                                SHANSUO=1;
                                delay(500);
                                LABA=0;
                                SHANSUO=0;
                                delay(500);
                                LABA=1;
                                SHANSUO=1;
                                delay(500);
                                LABA=0;
                                SHANSUO=0;
                        }
                        if(KEYON==0)
                        {
                                        sanshuo(15);
                                        LABA=0;
                        }
                        if(BIANMEN==0)
                        {
                                        sanshuo(15);
                                        LABA=0;
                        }
                }
        }


}
void init()
{
        suo=1;
        kai=0;
        a=0;
        P3=0XFF;
        P1=0X37;
        IT0=0;
        IT1=0;
        IE=0X85;
}
void sanshuo(uchar b)
{
        for(e=b;e>0;e--)
{
        if(d==1)
        {
        d=0;
        break;
        }
        LABA=1;
        SHANSUO=1;
        delay(500);
        SHANSUO=0;
        delay(500);
}
        
}
void kai_int0() interrupt 0
{
        if(kai==0)
        {
        if(KEYON==1)
        {
                LABA=1;
                delay(100);
                LABA=0;
                delay(50);
                LABA=1;
                delay(100);
                LABA=0;
                SHANSUO=1;
                delay(500);
                SHANSUO=0;
                delay(500);
                SHANSUO=1;
                delay(500);
                SHANSUO=0;
                delay(500);
                kai=1;
                suo=0;
                d=1;
        }
        }
}
void suo_int2() interrupt 2
{
                if(suo==0)
                {
                if(KEYON==1)
                {
        
                LABA=1;
                delay(100);
                LABA=0;
                SHANSUO=1;
                delay(500);
                SHANSUO=0;
                delay(2000);
                suo=1;
                kai=0;
                d=1;
                }
                }
}
附件: 您需要登录才可以下载或查看附件。没有帐号?注册

是楼主自己做的吗?

TOP

返回列表