Skip to content
Snippets Groups Projects
Select Git revision
  • b3beec40adfcfb23f5e9b9ffa0a3e433fce693f6
  • master default protected
2 results

getinput.ino

Blame
  • getinput.ino 1.87 KiB
    
    void getinputs()
    {
    
    
    bool tlimitXM=digitalRead(limitXMpin);
    bool tlimitXP=!digitalRead(limitXPpin);
    bool tlimitYM=!digitalRead(limitYMpin);
    bool tlimitYP=!digitalRead(limitYPpin);
    bool tlimitZM=!digitalRead(limitZMpin);
    bool tlimitZP=digitalRead(limitZPpin);
    
    delayMicroseconds(8000);
    
    if (tlimitXM==digitalRead(limitXMpin)) limitXM=digitalRead(limitXMpin);
    if (tlimitXP==!digitalRead(limitXPpin)) limitXP=!digitalRead(limitXPpin);
    if (tlimitYM==!digitalRead(limitYMpin)) limitYM=!digitalRead(limitYMpin);
    if (tlimitYP==!digitalRead(limitYPpin)) limitYP=!digitalRead(limitYPpin);
    if (tlimitZM==!digitalRead(limitZMpin)) limitZM=!digitalRead(limitZMpin);
    if (tlimitZP==digitalRead(limitZPpin)) limitZP=digitalRead(limitZPpin);
    
    
    //conveniance array:
    limitM[0]=limitXM;
    limitM[1]=limitYM;
    limitM[2]=limitZM;
    
    limitP[0]=limitXP;
    limitP[1]=limitYP;
    limitP[2]=limitZP;
    
    
    readyX=digitalRead(readyXpin);
    readyY=digitalRead(readyYpin);
    readyZ=digitalRead(readyZpin);
    
    //conveniance array:
    machineready[0]=readyX;
    machineready[1]=readyY;
    machineready[2]=readyZ;
    
    bool limitchanged=false;
    error=-1;
    
    for (int ax=0;ax<max_ax;ax++)
    {
      if (!machineready[ax]) {error=ax;}
      if (limitM[ax]!=lastlimitM[ax]) {limitchanged=true;}
      if (limitP[ax]!=lastlimitP[ax]) {limitchanged=true;}
    }
    
    if (limitchanged) 
      reportinputs();
    
    for (int ax=0;ax<max_ax;ax++)
    {
      lastlimitM[ax]=limitM[ax];
      lastlimitP[ax]=limitP[ax];
      
    }
    }
    
    
    
    void reportinputs()
    {
      Serial.println("limitXM\tlimitXP\tlimitYM\tlimitYP\tlimitZM\tlimitZP\treadyX\treadyY\treadyZ");
      Serial.print(limitXM);Serial.print("\t");
      Serial.print(limitXP);Serial.print("\t");
      Serial.print(limitYM);Serial.print("\t");