if((fstep&0x01)&&(PB0==GPIO_PIN_0))
{
fstep &=(~0x01);
Gtime_out = TIMT_OUT; //设置超时检测
}
if((fstep&0x02)&&(PB3==0)) //下位机要板
{
fstep &=(~0x02);
Gfmot_open=1;//电机开始转
fstep|=0x04;
}
if((fstep&0x04)&&(PB1==GPIO_PIN_1)) //尾传感器检测到无板
{
fstep &=(~0x04);
Gfmot_open=0;
}
if(PB1==0 && ((fstep&0x04)!=0x04)) //检测到低电平
{
Gfmot_open=0;//电机stop
Gtime_out = 0;//取消超时检测
Gftime_out=0; //超时标志位清0
fstep|=0x02;
fstep &=(~0x01);
if(PB2==0) K1_OPEN; //上位机不要板,上位机皮带停;上位机传感器有板,尾传感器有板;
}
else if(PB0==0 && (PB1==GPIO_PIN_1)) //仅S1有板,尾传感器无板
{
K1_CLOSE;//k1初始化就要闭合;
fstep|=0x01;
fstep &=(~0x02);
Gfmot_open=1;//电机开始转
}
else if(Gftime_out==1) //检测到超时标志
{
K1_CLOSE;//k1初始化就要闭合;
Gtime_out = 0;//取消超时检测
Gftime_out=0;//超时标志位清0
Gfmot_open=0;//电机stop
}
else
{
K1_CLOSE;//k1初始化就要闭合;
}