Alan Simms / threeAxis
Committer:
magiwarriorx
Date:
Thu Dec 16 10:51:37 2021 +0000
Revision:
3:09abcf461dc2
Parent:
2:5206484275e3
Initial public commit;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
magiwarriorx 0:603f46a29b61 1 class threeAxis{
magiwarriorx 0:603f46a29b61 2 public:
magiwarriorx 0:603f46a29b61 3 threeAxis(PinName xStep, PinName yStep, PinName zStep, PinName xDir, PinName yDir, PinName zDir, PinName xEnable, PinName yEnable, PinName zEnable, float stepRatio, float xBound, float yBound, float zBound, PinName xLimit, PinName yLimit, PinName zLimit);
magiwarriorx 1:43d856fad23a 4 void goTo(float xVal, float yVal, float zVal);
magiwarriorx 2:5206484275e3 5
magiwarriorx 2:5206484275e3 6 void addToBuffer(float xVal, float yVal, float zVal);
magiwarriorx 2:5206484275e3 7 void runBuffer();
magiwarriorx 0:603f46a29b61 8
magiwarriorx 0:603f46a29b61 9 void stepBackX();
magiwarriorx 0:603f46a29b61 10 void stepBackY();
magiwarriorx 0:603f46a29b61 11 void stepBackZ();
magiwarriorx 0:603f46a29b61 12
magiwarriorx 0:603f46a29b61 13 void setZero();
magiwarriorx 0:603f46a29b61 14
magiwarriorx 0:603f46a29b61 15 void setZeroX();
magiwarriorx 0:603f46a29b61 16 void setZeroY();
magiwarriorx 0:603f46a29b61 17 void setZeroZ();
magiwarriorx 0:603f46a29b61 18
magiwarriorx 0:603f46a29b61 19 void zeroX();
magiwarriorx 0:603f46a29b61 20 void zeroY();
magiwarriorx 0:603f46a29b61 21 void zeroZ();
magiwarriorx 0:603f46a29b61 22
magiwarriorx 0:603f46a29b61 23 void setWait(int waitPer);
magiwarriorx 0:603f46a29b61 24
magiwarriorx 0:603f46a29b61 25 void setXdir(bool val);
magiwarriorx 0:603f46a29b61 26 void setYdir(bool val);
magiwarriorx 0:603f46a29b61 27 void setZdir(bool val);
magiwarriorx 0:603f46a29b61 28
magiwarriorx 0:603f46a29b61 29 void invertX();
magiwarriorx 0:603f46a29b61 30 void invertY();
magiwarriorx 0:603f46a29b61 31 void invertZ();
magiwarriorx 0:603f46a29b61 32
magiwarriorx 0:603f46a29b61 33 void setLimits(bool val);
magiwarriorx 3:09abcf461dc2 34 bool getLimitsEn();
magiwarriorx 0:603f46a29b61 35
magiwarriorx 0:603f46a29b61 36 protected:
magiwarriorx 0:603f46a29b61 37 int toX;
magiwarriorx 0:603f46a29b61 38 int toY;
magiwarriorx 0:603f46a29b61 39 int toZ;
magiwarriorx 0:603f46a29b61 40
magiwarriorx 0:603f46a29b61 41 int currX;
magiwarriorx 0:603f46a29b61 42 int currY;
magiwarriorx 0:603f46a29b61 43 int currZ;
magiwarriorx 0:603f46a29b61 44
magiwarriorx 0:603f46a29b61 45 DigitalOut _xStep;
magiwarriorx 0:603f46a29b61 46 DigitalOut _yStep;
magiwarriorx 0:603f46a29b61 47 DigitalOut _zStep;
magiwarriorx 0:603f46a29b61 48
magiwarriorx 0:603f46a29b61 49 DigitalOut _xDir;
magiwarriorx 0:603f46a29b61 50 DigitalOut _yDir;
magiwarriorx 0:603f46a29b61 51 DigitalOut _zDir;
magiwarriorx 0:603f46a29b61 52
magiwarriorx 0:603f46a29b61 53 DigitalOut _xEnable;
magiwarriorx 0:603f46a29b61 54 DigitalOut _yEnable;
magiwarriorx 0:603f46a29b61 55 DigitalOut _zEnable;
magiwarriorx 0:603f46a29b61 56
magiwarriorx 0:603f46a29b61 57 DigitalIn _xLimit;
magiwarriorx 0:603f46a29b61 58 DigitalIn _yLimit;
magiwarriorx 0:603f46a29b61 59 DigitalIn _zLimit;
magiwarriorx 0:603f46a29b61 60
magiwarriorx 0:603f46a29b61 61 float _stepRatio;
magiwarriorx 0:603f46a29b61 62
magiwarriorx 0:603f46a29b61 63 float _xMax;
magiwarriorx 0:603f46a29b61 64 float _yMax;
magiwarriorx 0:603f46a29b61 65 float _zMax;
magiwarriorx 0:603f46a29b61 66
magiwarriorx 0:603f46a29b61 67 bool limitsEnabled;
magiwarriorx 0:603f46a29b61 68
magiwarriorx 0:603f46a29b61 69 bool defaultXdir;
magiwarriorx 0:603f46a29b61 70 bool defaultYdir;
magiwarriorx 0:603f46a29b61 71 bool defaultZdir;
magiwarriorx 0:603f46a29b61 72
magiwarriorx 0:603f46a29b61 73 int wait;
magiwarriorx 2:5206484275e3 74
magiwarriorx 2:5206484275e3 75 int bufferIndex;
magiwarriorx 2:5206484275e3 76 float buffer[][3];
magiwarriorx 0:603f46a29b61 77 };