• 赞助网站
  • 您的位置:  首页 >> 技术交流区 >> MCU技术 >> 单片机小程序,求大神指点
    单片机小程序,求大神指点
    2015年01月22日 点击: 编辑: qzq51
    //#include <absacc.h>
      #include<reg52.h>
    //#define uint unsigned int;

    sbit jishu=P0^0;
    sbit gongzuo=P0^1;
    sbit m1=P1^0;
    sbit m2=P1^1;
    sbit q=P1^2;


    void ms(char ms)
    {char b,d;
    for(b=ms;b>0;b--)
    for(d=110;d>0;d--);
    }

    void s(char s)
    { char f;
    unsigned int e;
    for(f=s;f>0;f--)
    for(e=1100;e>0;e--)    ;
    }

    void shezhi( )
    {
    // F0=0;

    while(!jishu)
    {TMOD=0x55;
    TR1=1;
    m1=0;
    m2=1;
    }
    m2=0;
    q=0;
    }

    void gonzuo(a)
    {
    unsigned int r0,r1;
    //F0=1;
    r0=0;
    r0=a;
    q=1;
    TMOD=0X55;
    TL1=0;
    TH1=0;
    mada1=0;
    for(r1;r1<r0;)
    {TR1=1;
    m1=1;
    r1=TH1<<8;
    r1=r1+TL1;
    }
    m1=0;
    q=0;

    }

    void main()
    { unsigned int a;
    P0=255;
    P3=255;
    P1=0;
    P2=0;
    /*switch(PSW^5)
    {
    case 0:shezhi();break;
    case 1:gonzuo(a);break;
    //default:break;
    }
    P1=0 ;*/

    while(1)
    {
    if(jishu==0)

    { q=1;
    s(100);
    if(jishu==0)
    { //TL1=0;
    //TH1=0;
    shezhi();}
    q=0;
    a=0;
    a=TH1<<8;
    a=a+TL1;
    }

    else {if(gongzuo==0)
    {ms(50);
    if(gongzuo==0)
    {
    gonzuo(a);
    //TL1=0;
    //TH1=0;

    //F0=0;
    }}
    else break;}

    }
    }
    我是单片机初学者,求大神给指点一下吧,怎么加软件陷阱啊,这个程序实在经不起干扰,碳刷电机一转,继电器就不闲着了,啪嗒啪嗒跳个不停,没办法工作
    赞助网站 | 关于我们 | 版权声明 | 站点导航 | 收藏本站 | 设为首页
    LCDHOME - LCD之家
    LCDHOME - LCD之家
    html/201501/284134.html
    欢迎来访LCDHOME论坛网