Phlebot's onboard code

Dependencies:   mbed

Fork of HelloWorld by Simon Ford

main.cpp

Committer:
gardamerinos
Date:
2017-02-24
Revision:
4:1070977b83e9
Parent:
3:ce96e87c0c53
Child:
5:9f6830d1db7b

File content as of revision 4:1070977b83e9:

#include "mbed.h"
#include <vector>

vector<DigitalOut*> motors;
vector<int> steps;

void step(DigitalOut stepsPin,int voltage){
    stepsPin = voltage;
}

int main() {
    DigitalOut stepperX_DIR(p30);
    DigitalOut stepperY_DIR(p29);
    DigitalOut stepperZ_DIR(p28);
    DigitalOut stepperRot_DIR(p27);
    motors.push_back(new DigitalOut(p21));
    motors.push_back(new DigitalOut(p22));
    motors.push_back(new DigitalOut(p23));
    motors.push_back(new DigitalOut(p24));
    steps.push_back(5000);
    steps.push_back(5000);
    steps.push_back(5000);
    steps.push_back(100);
    
    stepperX_DIR = 1;
    stepperY_DIR = 1;
    stepperZ_DIR = 1;
    stepperRot_DIR = 1;
    
    while(1) {
        for (int i = 0; i<motors.size();i++){
            if (steps.at(i) == int(0)){
                motors.erase(motors.begin() + i);
                steps.erase(steps.begin()+i);
            }
        }
        for (int i = 0; i<motors.size();i++){
            step(*motors[i],1);
        }
        wait_us(100);
        for (int i = 0; i<motors.size();i++){
            step(*motors.at(i),0);
        }
        wait_us(80);
    }
}