Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
main.cpp@0:c93bfd3fdede, 2020-05-12 (annotated)
- Committer:
- henriquer
- Date:
- Tue May 12 19:28:09 2020 +0000
- Revision:
- 0:c93bfd3fdede
step_motor_rpm
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
henriquer | 0:c93bfd3fdede | 1 | #include "mbed.h" |
henriquer | 0:c93bfd3fdede | 2 | |
henriquer | 0:c93bfd3fdede | 3 | DigitalOut IN1(D6); |
henriquer | 0:c93bfd3fdede | 4 | DigitalOut IN2(D7); |
henriquer | 0:c93bfd3fdede | 5 | DigitalOut IN3(D8); |
henriquer | 0:c93bfd3fdede | 6 | DigitalOut IN4(D9); |
henriquer | 0:c93bfd3fdede | 7 | |
henriquer | 0:c93bfd3fdede | 8 | |
henriquer | 0:c93bfd3fdede | 9 | #define steprevo 4096 |
henriquer | 0:c93bfd3fdede | 10 | #define us 70000000 |
henriquer | 0:c93bfd3fdede | 11 | |
henriquer | 0:c93bfd3fdede | 12 | //*****************Rotina Cálculo rpm*****************\\ |
henriquer | 0:c93bfd3fdede | 13 | |
henriquer | 0:c93bfd3fdede | 14 | void set_rpm (int rpm) |
henriquer | 0:c93bfd3fdede | 15 | { |
henriquer | 0:c93bfd3fdede | 16 | |
henriquer | 0:c93bfd3fdede | 17 | wait_us(us/steprevo/rpm); // 70us/4096 ---> 18 rev/min valor máximo |
henriquer | 0:c93bfd3fdede | 18 | } |
henriquer | 0:c93bfd3fdede | 19 | |
henriquer | 0:c93bfd3fdede | 20 | |
henriquer | 0:c93bfd3fdede | 21 | //*****************Rotina Half Drive*****************\\ |
henriquer | 0:c93bfd3fdede | 22 | |
henriquer | 0:c93bfd3fdede | 23 | void stepper_half (int step) |
henriquer | 0:c93bfd3fdede | 24 | |
henriquer | 0:c93bfd3fdede | 25 | { |
henriquer | 0:c93bfd3fdede | 26 | |
henriquer | 0:c93bfd3fdede | 27 | switch(step) { |
henriquer | 0:c93bfd3fdede | 28 | |
henriquer | 0:c93bfd3fdede | 29 | case 0: IN1 = 1; IN2 = 0; IN3 = 0; IN4 = 0; break; |
henriquer | 0:c93bfd3fdede | 30 | |
henriquer | 0:c93bfd3fdede | 31 | case 1: IN1 = 1; IN2 = 1; IN3 = 0; IN4 = 0; break; |
henriquer | 0:c93bfd3fdede | 32 | |
henriquer | 0:c93bfd3fdede | 33 | case 2: IN1 = 0; IN2 = 1; IN3 = 0; IN4 = 0; break; |
henriquer | 0:c93bfd3fdede | 34 | |
henriquer | 0:c93bfd3fdede | 35 | case 3: IN1 = 0; IN2 = 1; IN3 = 1; IN4 = 0; break; |
henriquer | 0:c93bfd3fdede | 36 | |
henriquer | 0:c93bfd3fdede | 37 | case 4: IN1 = 0; IN2 = 0; IN3 = 1; IN4 = 0; break; |
henriquer | 0:c93bfd3fdede | 38 | |
henriquer | 0:c93bfd3fdede | 39 | case 5: IN1 = 0; IN2 = 0; IN3 = 1; IN4 = 1; break; |
henriquer | 0:c93bfd3fdede | 40 | |
henriquer | 0:c93bfd3fdede | 41 | case 6: IN1 = 0; IN2 = 0; IN3 = 0; IN4 = 1; break; |
henriquer | 0:c93bfd3fdede | 42 | |
henriquer | 0:c93bfd3fdede | 43 | case 7: IN1 = 1; IN2 = 0; IN3 = 0; IN4 = 1;break; |
henriquer | 0:c93bfd3fdede | 44 | } |
henriquer | 0:c93bfd3fdede | 45 | |
henriquer | 0:c93bfd3fdede | 46 | } |
henriquer | 0:c93bfd3fdede | 47 | |
henriquer | 0:c93bfd3fdede | 48 | |
henriquer | 0:c93bfd3fdede | 49 | int main() |
henriquer | 0:c93bfd3fdede | 50 | { |
henriquer | 0:c93bfd3fdede | 51 | |
henriquer | 0:c93bfd3fdede | 52 | while(1) { |
henriquer | 0:c93bfd3fdede | 53 | |
henriquer | 0:c93bfd3fdede | 54 | for(int i=0; i<512; i++) { |
henriquer | 0:c93bfd3fdede | 55 | |
henriquer | 0:c93bfd3fdede | 56 | for(int i=0; i<8; i++) { |
henriquer | 0:c93bfd3fdede | 57 | |
henriquer | 0:c93bfd3fdede | 58 | stepper_half(i); |
henriquer | 0:c93bfd3fdede | 59 | set_rpm(18); |
henriquer | 0:c93bfd3fdede | 60 | |
henriquer | 0:c93bfd3fdede | 61 | } |
henriquer | 0:c93bfd3fdede | 62 | |
henriquer | 0:c93bfd3fdede | 63 | } |
henriquer | 0:c93bfd3fdede | 64 | |
henriquer | 0:c93bfd3fdede | 65 | } |
henriquer | 0:c93bfd3fdede | 66 | |
henriquer | 0:c93bfd3fdede | 67 | } |
henriquer | 0:c93bfd3fdede | 68 | |
henriquer | 0:c93bfd3fdede | 69 | |
henriquer | 0:c93bfd3fdede | 70 |