Motor a pasos bipolar

Dependents:   RampaDiscapacitados

MotorAPasos.cpp

Committer:
DiegoRivera
Date:
2016-03-04
Revision:
0:40987d1d44d7
Child:
1:34a6a7784d9e

File content as of revision 0:40987d1d44d7:

#include "MotorAPasos.h"
#include "mbed.h"

MotorAPasos::MotorAPasos (PinName pin1, PinName pin2, PinName pin3, PinName pin4) : motor (pin1, pin2, pin3, pin4)
    {
        pos=0b0110;
        motor=0;
        vel=.1;
    }

void MotorAPasos::derecha()
    {
        if (pos==0b0110)
            pos=0b0101;
        else
            if (pos==0b0101)
                pos=0b1001;
            else
                if (pos==0b1001)
                    pos=0b1010;
                else
                    if (pos==0b1010)
                        pos=0b0110;
        
        motor=pos;
        wait(vel);
//        motor=0;
    }

void MotorAPasos::izquierda()
    {
        if (pos==0b1010)
            pos=0b1001;
        else 
            if (pos==0b1001)
               pos=0b0101;
            else
                if (pos==0b0101)
                    pos=0b0110;
                else
                    if (pos==0b0110)
                        pos=0b1010;
        
        motor=pos;
        wait(vel);
//        motor=0;
    }

void MotorAPasos::stop()
    {
        motor=0;
    }

void MotorAPasos::pasosPorSegundo(int v)
    {
        vel=1.0/v;
    }