![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Program for controlling stepper motors with threads.
Fork of L298N_Stepper_4wire_example by
main.cpp
- Committer:
- mjhaugsdal
- Date:
- 2016-04-07
- Revision:
- 1:a3287196a9b3
- Parent:
- 0:bd78e433db61
File content as of revision 1:a3287196a9b3:
#include "mbed.h" #include "rtos.h" //Analog Pins DigitalOut IN1(D3); DigitalOut IN2(D4); DigitalOut IN3(D5); DigitalOut IN4(D6); Mutex stdio_mutex; static int fart = 1000; static char global_direction; static int global_counter; void step4Right() { IN1=0; IN2=1; IN3=0; IN4=1; wait_us(fart); //legg som global variabel "fart" IN1=0; IN2=1; IN3=1; IN4=0; wait_us(fart); IN1=1; IN2=0; IN3=1; IN4=0; wait_us(fart); IN1=1; IN2=0; IN3=0; IN4=1; wait_us(fart); } void step4Left() { IN1=1; IN2=0; IN3=0; IN4=1; wait_us(fart); IN1=1; IN2=0; IN3=1; IN4=0; wait_us(fart); IN1=0; IN2=1; IN3=1; IN4=0; wait_us(fart); IN1=0; IN2=1; IN3=0; IN4=1; wait_us(fart); } void input(void const *args) { while(true) { scanf(" %c", &global_direction); } } int main() { //Thread 1 has constant feed from usb //Thread t1(input); while (true) { step4Left(); /* if (global_direction == '0') { step4Left(); printf("%c \n" + global_direction); } */ /*else if (global_direction == '1') { step4Right(); //printf("RIGHT \n"); } */ /* else { //Do nothing }*/ } } //END Main