Motor a pasos bipolar
Dependents: RampaDiscapacitados
MotorAPasos.cpp@1:34a6a7784d9e, 2016-03-07 (annotated)
- Committer:
- DiegoRivera
- Date:
- Mon Mar 07 04:37:11 2016 +0000
- Revision:
- 1:34a6a7784d9e
- Parent:
- 0:40987d1d44d7
Ad dc
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
DiegoRivera | 0:40987d1d44d7 | 1 | #include "MotorAPasos.h" |
DiegoRivera | 0:40987d1d44d7 | 2 | #include "mbed.h" |
DiegoRivera | 0:40987d1d44d7 | 3 | |
DiegoRivera | 0:40987d1d44d7 | 4 | MotorAPasos::MotorAPasos (PinName pin1, PinName pin2, PinName pin3, PinName pin4) : motor (pin1, pin2, pin3, pin4) |
DiegoRivera | 0:40987d1d44d7 | 5 | { |
DiegoRivera | 1:34a6a7784d9e | 6 | // pos=0b0110; |
DiegoRivera | 1:34a6a7784d9e | 7 | pos=0b0001; |
DiegoRivera | 0:40987d1d44d7 | 8 | motor=0; |
DiegoRivera | 0:40987d1d44d7 | 9 | vel=.1; |
DiegoRivera | 0:40987d1d44d7 | 10 | } |
DiegoRivera | 0:40987d1d44d7 | 11 | |
DiegoRivera | 0:40987d1d44d7 | 12 | void MotorAPasos::derecha() |
DiegoRivera | 0:40987d1d44d7 | 13 | { |
DiegoRivera | 1:34a6a7784d9e | 14 | /* |
DiegoRivera | 0:40987d1d44d7 | 15 | if (pos==0b0110) |
DiegoRivera | 0:40987d1d44d7 | 16 | pos=0b0101; |
DiegoRivera | 0:40987d1d44d7 | 17 | else |
DiegoRivera | 0:40987d1d44d7 | 18 | if (pos==0b0101) |
DiegoRivera | 0:40987d1d44d7 | 19 | pos=0b1001; |
DiegoRivera | 0:40987d1d44d7 | 20 | else |
DiegoRivera | 0:40987d1d44d7 | 21 | if (pos==0b1001) |
DiegoRivera | 0:40987d1d44d7 | 22 | pos=0b1010; |
DiegoRivera | 0:40987d1d44d7 | 23 | else |
DiegoRivera | 0:40987d1d44d7 | 24 | if (pos==0b1010) |
DiegoRivera | 1:34a6a7784d9e | 25 | pos=0b0110;*/ |
DiegoRivera | 1:34a6a7784d9e | 26 | /* if (pos==0b0001) |
DiegoRivera | 1:34a6a7784d9e | 27 | pos=0b0010; |
DiegoRivera | 1:34a6a7784d9e | 28 | else |
DiegoRivera | 1:34a6a7784d9e | 29 | if (pos==0b0010) |
DiegoRivera | 1:34a6a7784d9e | 30 | pos=0b0100; |
DiegoRivera | 1:34a6a7784d9e | 31 | else |
DiegoRivera | 1:34a6a7784d9e | 32 | if (pos==0b0100) |
DiegoRivera | 1:34a6a7784d9e | 33 | pos=0b1000; |
DiegoRivera | 1:34a6a7784d9e | 34 | else |
DiegoRivera | 1:34a6a7784d9e | 35 | if (pos==0b1000) |
DiegoRivera | 1:34a6a7784d9e | 36 | pos=0b0001;*/ |
DiegoRivera | 1:34a6a7784d9e | 37 | |
DiegoRivera | 0:40987d1d44d7 | 38 | |
DiegoRivera | 1:34a6a7784d9e | 39 | // motor=pos; |
DiegoRivera | 1:34a6a7784d9e | 40 | // wait(vel); |
DiegoRivera | 0:40987d1d44d7 | 41 | // motor=0; |
DiegoRivera | 1:34a6a7784d9e | 42 | motor=0b0001; |
DiegoRivera | 0:40987d1d44d7 | 43 | } |
DiegoRivera | 0:40987d1d44d7 | 44 | |
DiegoRivera | 0:40987d1d44d7 | 45 | void MotorAPasos::izquierda() |
DiegoRivera | 0:40987d1d44d7 | 46 | { |
DiegoRivera | 1:34a6a7784d9e | 47 | /* |
DiegoRivera | 0:40987d1d44d7 | 48 | if (pos==0b1010) |
DiegoRivera | 0:40987d1d44d7 | 49 | pos=0b1001; |
DiegoRivera | 0:40987d1d44d7 | 50 | else |
DiegoRivera | 0:40987d1d44d7 | 51 | if (pos==0b1001) |
DiegoRivera | 0:40987d1d44d7 | 52 | pos=0b0101; |
DiegoRivera | 0:40987d1d44d7 | 53 | else |
DiegoRivera | 0:40987d1d44d7 | 54 | if (pos==0b0101) |
DiegoRivera | 0:40987d1d44d7 | 55 | pos=0b0110; |
DiegoRivera | 0:40987d1d44d7 | 56 | else |
DiegoRivera | 0:40987d1d44d7 | 57 | if (pos==0b0110) |
DiegoRivera | 1:34a6a7784d9e | 58 | pos=0b1010;*/ |
DiegoRivera | 1:34a6a7784d9e | 59 | /* if (pos==0b0001) |
DiegoRivera | 1:34a6a7784d9e | 60 | pos=0b1000; |
DiegoRivera | 1:34a6a7784d9e | 61 | else |
DiegoRivera | 1:34a6a7784d9e | 62 | if (pos==0b1000) |
DiegoRivera | 1:34a6a7784d9e | 63 | pos=0b0100; |
DiegoRivera | 1:34a6a7784d9e | 64 | else |
DiegoRivera | 1:34a6a7784d9e | 65 | if (pos==0b0100) |
DiegoRivera | 1:34a6a7784d9e | 66 | pos=0b0010; |
DiegoRivera | 1:34a6a7784d9e | 67 | else |
DiegoRivera | 1:34a6a7784d9e | 68 | if (pos==0b0010) |
DiegoRivera | 1:34a6a7784d9e | 69 | pos=0b0001;*/ |
DiegoRivera | 0:40987d1d44d7 | 70 | |
DiegoRivera | 1:34a6a7784d9e | 71 | // motor=pos; |
DiegoRivera | 1:34a6a7784d9e | 72 | // wait(vel); |
DiegoRivera | 0:40987d1d44d7 | 73 | // motor=0; |
DiegoRivera | 1:34a6a7784d9e | 74 | motor=0b0010; |
DiegoRivera | 0:40987d1d44d7 | 75 | } |
DiegoRivera | 0:40987d1d44d7 | 76 | |
DiegoRivera | 0:40987d1d44d7 | 77 | void MotorAPasos::stop() |
DiegoRivera | 0:40987d1d44d7 | 78 | { |
DiegoRivera | 0:40987d1d44d7 | 79 | motor=0; |
DiegoRivera | 0:40987d1d44d7 | 80 | } |
DiegoRivera | 0:40987d1d44d7 | 81 | |
DiegoRivera | 0:40987d1d44d7 | 82 | void MotorAPasos::pasosPorSegundo(int v) |
DiegoRivera | 0:40987d1d44d7 | 83 | { |
DiegoRivera | 0:40987d1d44d7 | 84 | vel=1.0/v; |
DiegoRivera | 0:40987d1d44d7 | 85 | } |