📄 md142as.c
字号:
}
break;
case 20:
if(_inp_bit(JIG_REMOVEBD))
{
_outp_bit(JIG_EJECT,OFF);
switch(sequ)
{
case 1:
_outp_bit(TRAN_HORN11,OFF);
_outp_bit(TRAN_HORN10,ON);
sequ++;
break;
case 2:
if(_inp_bit(TRAN_HORNFD))
{
_set_delay(10);
_outp_bit(ARM2,ON);
sequ++;
}
break;
case 3:
if(_inp_bit(ARM2DN))
{
_outp_bit(AIR_MAGNET2,OFF);
_set_delay(20);
_outp_bit(ARM2,OFF);
sequ++;
}
break;
case 4:
if(_inp_bit(INDUCTION2BD)&&!_inp_bit(ARMAT_FULL))
{
_set_delay(10);
_outp_bit(ARM3,ON);
while(!_inp_bit(ARM3DN));
if(_inp_bit(ARMAT_FULL)) //IF HAS ARMATURE
heat2_on=TRUE;
else
heat2_on=FALSE;
_outp_bit(AIR_CHUCK,OFF);
_set_delay(10);
_outp_bit(ARM3,OFF);
if(heat2_on)
{
_outp_bit(INDUCTION2,ON);
while(!_inp_bit(INDUCTION2FD));
_outp_bit(MAGFORCE2,ON); //heating
heat2_time=heat2_time_set+tick_clock;
}
sequ++;
}
break;
case 5:
if(_inp_bit(ARM2UP)&&_inp_bit(ARM3UP))
{
_outp_bit(TRAN_HORN11,ON);
_outp_bit(TRAN_HORN10,OFF);
sequ++;
}
break;
case 6:
if(_inp_bit(TRAN_HORNBD))
{
_outp_bit(ARM3,ON);
sequ++;
}
break;
case 7:
if(_inp_bit(ARM3DN))
{
_set_delay(15);
_outp_bit(AIR_CHUCK,ON);
_set_delay(15);
_outp_bit(AIR_CHUCK,OFF); //
_set_delay(15); //
_outp_bit(AIR_CHUCK,ON); //
_set_delay(15); //
_outp_bit(ARM3,OFF);
while(!_inp_bit(ARM3UP));
_set_delay(20);
_outp_bit(COMM_INSERT,ON);
_set_delay(60);
_outp_bit(COMM_INSERT,OFF);
sequ++;
}
break;
case 8:
if(_inp_bit(COMM_INSERTFD))
{
_set_delay(20);
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);
}
sequ=1;
proc++;
break;
}
}
} //case 20 if loop
break;
}
if(rece_com==Pause)
{
while(rece_com==Pause);
if(rece_com==Start)
rece_com=OFF;
}
if(rece_com==Manual)
{
_manual_operate();
while((rece_com!=Start)&&(rece_com!=Exit));
if(rece_com==Start)
rece_com=OFF;
}
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)
{
_outp_bit(VIBRATE,OFF);
}
if(heat1_end==1)
{
_outp_bit(INDUCTION1,OFF);
// if(_inp_bit(HEAT1)==0||_inp_bit(HEAT2)==0||_inp_bit(COOLANT1)==1||
// _inp_bit(COOLANT2)==1)
// {
// _outp_bit(MAGFORCE1,OFF);
// _outp_bit(MAGFORCE2,OFF);
// _trf_msge (ID_Panel,Trouble,0x00);
// while(rece_com!=Go_on);
// rece_com=OFF;
// }
_outp_bit(MAGFORCE1,OFF);
heat1_end=0;
}
if(heat2_end==1)
{
_outp_bit(INDUCTION2,OFF);
// if(_inp_bit(HEAT1)==0||_inp_bit(HEAT2)==0||_inp_bit(COOLANT1)==1||
// _inp_bit(COOLANT2)==1)
// {
// _outp_bit(MAGFORCE1,OFF);
// _outp_bit(MAGFORCE2,OFF);
// _trf_msge (ID_Panel,Trouble,0x00);
// while(rece_com!=Go_on);
// rece_com=OFF;
// }
_outp_bit(MAGFORCE2,OFF);
heat2_end=0;
while(!_inp_bit(INDUCTION2BD));
_set_delay(20);
_outp_bit(UNLOAD,ON);
while(!_inp_bit(UNLOADUP));
_set_delay(20);
_outp_bit(UNLOAD,OFF);
_set_delay(20);
}
if((proc==21)&&(_inp_bit(INDUCTION1BD))
&&(_inp_bit(INDUCTION2BD)))
proc=0;
} //while loop2
} //if loop
if(rece_com==Manual)
{
_manual_operate();
_set_delay(20);
rece_com=OFF;
}
} //while loop1
}
//-----------------------------------------------------
void _manual_operate()
{
while(rece_com!=Exit)
{
switch(rece_data[0])
{
case VALVE1: // LOAD_VERT out1
if(_inp_bit(INDUCTION1BD))
_outp_bit(LOAD_VERT,~_outp_stus(LOAD_VERT));
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
}
}
break;
case VALVE3: // INDUCTION1 out4
if(_inp_bit(LOAD_VERTDN)&&_inp_bit(ARM1UP) )
_outp_bit(INDUCTION1,~_outp_stus(INDUCTION1));
break;
case VALVE4: // ARM1 out6
_outp_bit(ARM1,~_outp_stus(ARM1) );
break;
case VALVE5: // ARM2 out7
if(_inp_bit(COMM_INSERTFD))
_outp_bit(ARM2,~_outp_stus(ARM2) );
break;
case VALVE6: //ARM3 out8
if(_inp_bit(COMM_INSERTFD)&&_inp_bit(INDUCTION2BD))
_outp_bit(ARM3,~_outp_stus(ARM3));
break;
case VALVE7: //AIR_MAGNET1 out9
_outp_bit(AIR_MAGNET1,~_outp_stus(AIR_MAGNET1) );
break;
case VALVE8: //AIR_MAGNET2 out11
_outp_bit(AIR_MAGNET2,~_outp_stus(AIR_MAGNET2) );
break;
case VALVE9: //AIR_CHUCK out13
_outp_bit(AIR_CHUCK,~_outp_stus(AIR_CHUCK) );
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);
}
}
break;
case VALVE11: //SHAFT_HOLD out17
_outp_bit(SHAFT_HOLD,~_outp_stus(SHAFT_HOLD));
break;
case VALVE12: //SPRAY_L out18
_outp_bit(SPRAY_L,~_outp_stus(SPRAY_L));
break;
case VALVE13: //SPRAY_R out20
_outp_bit(SPRAY_R,~_outp_stus(SPRAY_R));
break;
case VALVE14: //JIG_EJECT 21
_outp_bit(JIG_EJECT,~_outp_stus(JIG_EJECT) );
break;
case VALVE15: //JIG_REMOVE 22
_outp_bit(JIG_REMOVE,~_outp_stus(JIG_REMOVE));
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);
}
}
break;
case VALVE17: //COMM_INSERT 25
if(_inp_bit(ARM3UP)&&_inp_bit(ARM2UP))
_outp_bit(COMM_INSERT,~_outp_stus(COMM_INSERT));
break;
case VALVE18: //INDUCTION2 27
if(_inp_bit(UNLOADDN))
_outp_bit(INDUCTION2,~_outp_stus(INDUCTION2));
break;
case VALVE19: //UNLOAD: 29
if(_inp_bit(INDUCTION2BD))
_outp_bit(UNLOAD,~_outp_stus(UNLOAD));
break;
case VIBRATE:
_outp_bit(VIBRATE,~_outp_stus(VIBRATE)); //30
_outp_bit(SPRAY_L,_outp_stus(VIBRATE));
_outp_bit(SPRAY_R,_outp_stus(VIBRATE));
break;
case ROTATE:
_outp_bit(ROTATE,~_outp_stus(ROTATE)); //31
break;
case 35:
_outp_bit(MAGFORCE1,~_outp_stus(MAGFORCE1)); //10
break;
case 36:
_outp_bit(MAGFORCE2,~_outp_stus(MAGFORCE2)); //12
}
rece_data[0]=ReceStream.datablk[0]=0;
_set_delay(5); //???
}
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]);
_trf_msge (ID_Panel,Datatrans,0x05);
_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]);
}
}
}
//----------------------------------------------------
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 + -