Motor a pasos bipolar

Dependents:   RampaDiscapacitados

MotorAPasos.cpp

Committer:
DiegoRivera
Date:
2016-03-07
Revision:
1:34a6a7784d9e
Parent:
0:40987d1d44d7

File content as of revision 1:34a6a7784d9e:

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

MotorAPasos::MotorAPasos (PinName pin1, PinName pin2, PinName pin3, PinName pin4) : motor (pin1, pin2, pin3, pin4)
    {
//        pos=0b0110;
        pos=0b0001;
        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;*/
/*        if (pos==0b0001)
            pos=0b0010;
        else
            if (pos==0b0010)
                pos=0b0100;
            else
                if (pos==0b0100)
                    pos=0b1000;
                else
                    if (pos==0b1000)
                        pos=0b0001;*/

        
//        motor=pos;
//        wait(vel);
//        motor=0;
        motor=0b0001;
    }

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;*/
/*        if (pos==0b0001)
            pos=0b1000;
        else
            if (pos==0b1000)
                pos=0b0100;
            else
                if (pos==0b0100)
                    pos=0b0010;
                else
                    if (pos==0b0010)
                        pos=0b0001;*/
        
//        motor=pos;
//        wait(vel);
//        motor=0;
        motor=0b0010;
    }

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

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