main()
{
for (;
//loop forever
{
WaitNextTimeSlice();
// if ESTOP present disable any enabled Axis ??
if (!ReadBit(ESTOP_BIT))
{
if (ch0->Enable) DisableAxis(0); // axis still enabled? - Disable it
if (ch1->Enable) DisableAxis(1); // axis still enabled? - Disable it
if (ch2->Enable) DisableAxis(2); // axis still enabled? - Disable it
if (ch3->Enable) DisableAxis(3); // axis still enabled? - Disable it
if (ch4->Enable) DisableAxis(4); // axis still enabled? - Disable it
if (ch5->Enable) DisableAxis(5); // axis still enabled? - Disable it
}
//Watches for probe inputs and set IO_BIT(48) according to probe Status
if (ReadBit(27) || !ReadBit(28)) SetBit(48);
else ClearBit(48);
//Watches for Soft Limits, slow down and stop axis
if (InLimit()) // check for any limit
{
DisableAxis(0);
DisableAxis(1);
DisableAxis(2);
DisableAxis(3);
DisableAxis(4);
DisableAxis(5);
//Delay_sec(0.5);
EnableAxisDest(0,ch0->Dest);
EnableAxisDest(1,ch1->Dest);
EnableAxisDest(2,ch2->Dest);
EnableAxisDest(3,ch3->Dest);
EnableAxisDest(4,ch4->Dest);
EnableAxisDest(5,ch5->Dest);
}
}
}