📄 md142asn.c
字号:
else
if(run_time==tick_clock)
_outp_bit(ALARM,ON);
break;
case 13:
if(sprayok)
{
sprayok=FALSE;
proc++;
}
break;
case 14:
if(blowstop)
{
// _outp_bit(SPRAY_L,OFF);
// _outp_bit(SPRAY_R,OFF);
// _outp_bit(ROTATE,OFF);
blowstop=FALSE;
run_time=tick_clock+time_out;
proc++;
}
break;
case 15:
if(_inp_bit(TRAN_HORNBD)&&_inp_bit(AIR_MAGNET2UP))
{
_outp_bit(AIR_MAGNET2,ON);
_outp_bit(ARM2,ON);
run_time=tick_clock+time_out;
proc++;
}
else
if(run_time==tick_clock)
_outp_bit(ALARM,ON);
break;
case 16:
if(_inp_bit(TRAN_HORNBD)&&_inp_bit(ARM2DN))
{
_outp_bit(SHAFT_HOLD,OFF);
_outp_bit(JIG_REMOVE,ON);
run_time=tick_clock+time_out;
proc++;
}
else
if(run_time==tick_clock)
_outp_bit(ALARM,ON);
break;
case 17:
if(_inp_bit(JIG_REMOVEFD))
{
_set_delay(10);
_outp_bit(ARM2,OFF);
run_time=tick_clock+time_out;
proc++;
}
else
if(run_time==tick_clock)
_outp_bit(ALARM,ON);
break;
case 18:
if(_inp_bit(ARM2UP))
{
_set_delay(10);
_outp_bit(JIG_EJECT,ON);
run_time=tick_clock+time_out;
proc++;
}
else
if(run_time==tick_clock)
_outp_bit(ALARM,ON);
break;
case 19:
if(_inp_bit(JIG_EJECTFD))
{
_set_delay(20);
_outp_bit(JIG_REMOVE,OFF);
_set_delay(20);
run_time=tick_clock+time_out;
proc++;
}
else
if(run_time==tick_clock)
_outp_bit(ALARM,ON);
break;
case 20:
if(_inp_bit(JIG_REMOVEBD))
{
_outp_bit(JIG_EJECT,OFF);
run_time=tick_clock+time_out;
proc++;
} //case 20 if loop
else
if(run_time==tick_clock)
_outp_bit(ALARM,ON);
break;
}
current_step=proc;
if(previous_step!=current_step)
{
previous_step=current_step;
_outp_bit(ALARM,OFF);
}
if(rece_com==Pause)
{
// _reserve_outpbuf();
while(rece_com==Pause);
if(rece_com==Start)
{
rece_com=OFF;
// _reload_outpbuf();
_set_delay(80);
}
}
if(rece_com==Manual)
{
_reserve_outpbuf();
_manual_operate();
while((rece_com!=Start)&&(rece_com!=Exit));
if(rece_com==Start)
{
rece_com=OFF;
_reload_outpbuf();
_set_delay(80);
}
}
if(proc<4)
{
heat1_time=heat1_time_set+tick_clock;
heat2_time=heat2_time_set+tick_clock;
spray_time=spray_time_set+tick_clock;
heat1_end=0;
heat2_end=0;
spray_end=0;
}
if(spray_end==1)
{
spray_end=0;
sprayok=TRUE;
_outp_bit(VIBRATE,OFF);
blow_time=blow_time_set+tick_clock;
}
if(blow_end==1)
{
_outp_bit(SPRAY_L,OFF);
_outp_bit(SPRAY_R,OFF);
_outp_bit(ROTATE,OFF);
blow_end=0;
blowstop=TRUE;
}
if(heat1_end==1)
{
_outp_bit(INDUCTION1,OFF);
_outp_bit(MAGFORCE1,OFF);
heat1_end=0;
}
if(heat2_end==1)
{
_outp_bit(INDUCTION2,OFF);
_outp_bit(MAGFORCE2,OFF);
heat2_end=0;
while(!_inp_bit(INDUCTION2BD));
_set_delay(10);
_outp_bit(UNLOAD,ON);
while(!_inp_bit(UNLOADUP));
_outp_bit(DELIVER,ON);
while(!_inp_bit(DELIVERFD));
_outp_bit(UNLOAD,OFF);
_outp_bit(DELIVER,OFF);
}
if((proc==21)&&(_inp_bit(INDUCTION1BD))
&&(_inp_bit(INDUCTION2BD)))
proc=0;
} //while loop2
} //if loop
if(rece_com==Manual)
{
_reserve_outpbuf();
_manual_operate();
_reload_outpbuf();
_set_delay(50);
rece_com=OFF;
}
} //while loop1
}
//-----------------------------------------------------
void _manual_operate()
{
char port;
while(rece_com!=Exit)
{
if(rece_com==Datatrans)
{
rece_com=0;
switch(rece_data[0])
{
case VALVE1: // LOAD_VERT out1
if(_inp_bit(INDUCTION1BD))
_outp_bit(LOAD_VERT,~_outp_stus(LOAD_VERT));
port=1;
break;
case VALVE2: // LOAD_HORN out2
if(_inp_bit(LOAD_VERTUP)&&_inp_bit(INDUCTION1BD)&&_inp_bit(ARM1UP))
{
if(_inp_bit(LOAD_HORNBD))
{
_outp_bit(LOAD_HORN11,OFF);
_outp_bit(LOAD_HORN10,ON); //forward
}
}
if(_inp_bit(LOAD_VERTDN)&&_inp_bit(INDUCTION1BD))
{
if(_inp_bit(LOAD_HORNFD))
{
_outp_bit(LOAD_HORN10,OFF);
_outp_bit(LOAD_HORN11,ON); //backward
}
}
port=2;
break;
case VALVE3: // INDUCTION1 out4
if(_inp_bit(LOAD_VERTDN)&&_inp_bit(ARM1UP) )
_outp_bit(INDUCTION1,~_outp_stus(INDUCTION1));
port=4;
break;
case VALVE4: // ARM1 out6
port=6;
_outp_bit(ARM1,~_outp_stus(ARM1) );
break;
case VALVE5: // ARM2 out7
if(_inp_bit(COMM_INSERTFD))
_outp_bit(ARM2,~_outp_stus(ARM2) );
port=7;
break;
case VALVE6: //ARM3 out8
if(_inp_bit(COMM_INSERTFD)&&_inp_bit(INDUCTION2BD))
_outp_bit(ARM3,~_outp_stus(ARM3));
port=8;
break;
case VALVE7: //AIR_MAGNET1 out9
_outp_bit(AIR_MAGNET1,~_outp_stus(AIR_MAGNET1) );
port=9;
break;
case VALVE8: //AIR_MAGNET2 out11
_outp_bit(AIR_MAGNET2,~_outp_stus(AIR_MAGNET2) );
port=11;
break;
case VALVE9: //AIR_CHUCK out13
_outp_bit(AIR_CHUCK,~_outp_stus(AIR_CHUCK) );
port=13;
break;
case VALVE10: //TRAN_HORN out15
if( _inp_bit(ARM1UP)&&_inp_bit(ARM2UP)&&_inp_bit(ARM3UP) )
{
if(_inp_bit(TRAN_HORNFD))
{
_outp_bit(TRAN_HORN10,OFF);
_outp_bit(TRAN_HORN11,ON);
}
if(_inp_bit(TRAN_HORNBD))
{
_outp_bit(TRAN_HORN11,OFF);
_outp_bit(TRAN_HORN10,ON);
}
}
port=15;
break;
case VALVE11: //SHAFT_HOLD out17
_outp_bit(SHAFT_HOLD,~_outp_stus(SHAFT_HOLD));
port=17;
break;
case VALVE12: //SPRAY_L out18
_outp_bit(SPRAY_L,~_outp_stus(SPRAY_L));
port=18;
break;
case VALVE13: //SPRAY_R out20
_outp_bit(SPRAY_R,~_outp_stus(SPRAY_R));
port=20;
break;
case VALVE14: //JIG_EJECT 21
_outp_bit(JIG_EJECT,~_outp_stus(JIG_EJECT) );
port=21;
break;
case VALVE15: //JIG_REMOVE 22
_outp_bit(JIG_REMOVE,~_outp_stus(JIG_REMOVE));
port=22;
break;
case VALVE16: //COMM_LOAD 23
if(_inp_bit(COMM_INSERTFD))
{
if(_inp_bit(COMM_LOADFD))
{
_outp_bit(COMM_LOAD10,OFF);
_outp_bit(COMM_LOAD11,ON);
}
if(_inp_bit(COMM_LOADBD))
{
_outp_bit(COMM_LOAD11,OFF);
_outp_bit(COMM_LOAD10,ON);
}
}
port=23;
break;
case VALVE17: //COMM_INSERT 25
if(_inp_bit(ARM3UP)&&_inp_bit(ARM2UP))
_outp_bit(COMM_INSERT,~_outp_stus(COMM_INSERT));
port=25;
break;
case VALVE18: //INDUCTION2 27
if(_inp_bit(UNLOADDN))
_outp_bit(INDUCTION2,~_outp_stus(INDUCTION2));
port=27;
break;
case VALVE19: //UNLOAD: 29
if(_inp_bit(INDUCTION2BD))
_outp_bit(UNLOAD,~_outp_stus(UNLOAD));
port=29;
break;
case VALVE20:
_outp_bit(DELIVER,~_outp_stus(DELIVER)); //32
port=32;
break;
case 37:
_outp_bit(ALARM,~_outp_stus(ALARM)); //5
port=5;
break;
case VIBRATE:
_outp_bit(VIBRATE,~_outp_stus(VIBRATE)); //30
_outp_bit(SPRAY_L,_outp_stus(VIBRATE));
_outp_bit(SPRAY_R,_outp_stus(VIBRATE));
port=30;
break;
case ROTATE:
_outp_bit(ROTATE,~_outp_stus(ROTATE)); //31
port=31;
break;
case 35:
_outp_bit(MAGFORCE1,~_outp_stus(MAGFORCE1)); //10
port=10;
break;
case 36:
_outp_bit(MAGFORCE2,~_outp_stus(MAGFORCE2)); //12
port=12;
break;
default:port=0x7f; //invalid number
}
_set_delay(5);
if(port==0x7f)
TranStream.datablk[1] = 0x7f;
else
TranStream.datablk[1] = _outp_stus(port);
_trf_msge (ID_Panel,Datatrans,0x02);
} // if loop
} // while loop
if(rece_com==Exit)
rece_com=OFF;
}
//-------------------------------------------------------
//-----------------------------------------------------
void _setup(void)
{
TranStream.datablk[2] = _read_eepbyte(&datalist[2]);
TranStream.datablk[3] = _read_eepbyte(&datalist[3]);
TranStream.datablk[4] = _read_eepbyte(&datalist[4]);
TranStream.datablk[5] = _read_eepbyte(&datalist[5]);
_trf_msge (ID_Panel,Datatrans,0x06);
_set_delay(10);
while(rece_com!=Exit)
{
if(rece_com==Datatrans)
{
rece_com=OFF;
if(rece_data[2]!=_read_eepbyte(&datalist[2]));
_write_eepbyte(&datalist[2],rece_data[2]);
if(rece_data[3]!=_read_eepbyte(&datalist[3]));
_write_eepbyte(&datalist[3],rece_data[3]);
if(rece_data[4]!=_read_eepbyte(&datalist[4]));
_write_eepbyte(&datalist[4],rece_data[4]);
if(rece_data[5]!=_read_eepbyte(&datalist[5]));
_write_eepbyte(&datalist[5],rece_data[5]);
}
}
}
//----------------------------------------------------
void _init_machine()
{
_outp_port (0x88,0x00);
_outp_port (0x89,0x00);
_outp_port (0x8a,0x00);
_outp_port (0x8b,0x00);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -