Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //PINS
- #define KV 9
- #define EN 8
- #define X_DIR 5
- #define X_STP 2
- //LENGTH OF ARRAY
- const int len=6;
- //OTHER VARS AND ARRAYS
- int j,m,p,h,q;
- int points[len]={0,10,35,5,75,24};
- int steps[len];
- void setup() {
- //PART OF DEBUGING
- Serial.begin(9600);
- //INIT
- pinMode(EN, OUTPUT);
- pinMode(X_DIR, OUTPUT);
- pinMode(X_STP, OUTPUT);
- pinMode(KV,INPUT_PULLUP);
- digitalWrite(EN, LOW);
- for (j=0;j<len;j++){
- steps[j]=points[j]*5;
- }
- //CALIBRATING
- cal();
- digitalWrite(X_DIR, 1);
- }
- void loop() {
- xMove();
- }
- void xMove(){
- for (j=1;j<len;j++){
- p=steps[j]-steps[j-1];
- Serial.println(p);
- if (p<0){
- digitalWrite(X_DIR, !digitalRead(X_DIR));
- p=abs(p);
- }
- for (q=0;q<p;q++) {
- digitalWrite(X_STP, LOW);
- delayMicroseconds(10);
- digitalWrite(X_STP, HIGH);
- delayMicroseconds(3000);
- }
- digitalWrite(X_DIR, 1);
- delay(2000);
- }
- }
- void cal(){
- int a;
- digitalWrite(X_DIR, 0);
- while(true){
- digitalWrite(X_STP, LOW);
- delayMicroseconds(10);
- digitalWrite(X_STP, HIGH);
- delayMicroseconds(2000);
- a=digitalRead(KV);
- Serial.println(a);
- if (a==0){
- break;
- }
- }
- delay(100);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement