Predrag Simanić

Dependencies:   mbed sMotor

Committer:
tim004
Date:
Mon May 12 15:59:56 2014 +0000
Revision:
0:4fd50fc0dbd7
LV9_Grupa3_Tim004_PAI_Zadatak2

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tim004 0:4fd50fc0dbd7 1 #include "mbed.h"
tim004 0:4fd50fc0dbd7 2 #include "sMotor.h"
tim004 0:4fd50fc0dbd7 3
tim004 0:4fd50fc0dbd7 4
tim004 0:4fd50fc0dbd7 5 Serial pc(USBTX, USBRX);
tim004 0:4fd50fc0dbd7 6 sMotor motor(dp9, dp10, dp11, dp13); // creates new stepper motor: IN1, IN2, IN3, IN4
tim004 0:4fd50fc0dbd7 7
tim004 0:4fd50fc0dbd7 8 int step_speed = 1200 ; // set default motor speed
tim004 0:4fd50fc0dbd7 9 int numstep = 512 ; // defines full turn of 360 degree
tim004 0:4fd50fc0dbd7 10 int direction = 0;
tim004 0:4fd50fc0dbd7 11 bool on=true;
tim004 0:4fd50fc0dbd7 12 //you might want to calibrate this value according to your motor
tim004 0:4fd50fc0dbd7 13
tim004 0:4fd50fc0dbd7 14
tim004 0:4fd50fc0dbd7 15 int main() {
tim004 0:4fd50fc0dbd7 16 l1:
tim004 0:4fd50fc0dbd7 17 pc.printf("1- Izbor polozaja motora\n\r");
tim004 0:4fd50fc0dbd7 18 pc.printf("2- Izbor smjera kretanja motora\n\r");
tim004 0:4fd50fc0dbd7 19 pc.printf("3- Promjena brzine kretanja motora\n\r");
tim004 0:4fd50fc0dbd7 20 pc.printf("4- Pokretanje/zaustavljanje motora\n\r");
tim004 0:4fd50fc0dbd7 21
tim004 0:4fd50fc0dbd7 22 while (1) {
tim004 0:4fd50fc0dbd7 23 if (pc.readable()) { // checks for serial
tim004 0:4fd50fc0dbd7 24
tim004 0:4fd50fc0dbd7 25 if (pc.getc()=='1'){
tim004 0:4fd50fc0dbd7 26 if(on)
tim004 0:4fd50fc0dbd7 27 {
tim004 0:4fd50fc0dbd7 28 int angle;
tim004 0:4fd50fc0dbd7 29 pc.printf("Navedite ugao pomjeranja motora: \n\r");
tim004 0:4fd50fc0dbd7 30 pc.scanf("%d", &angle);
tim004 0:4fd50fc0dbd7 31 if ( angle > 0 )
tim004 0:4fd50fc0dbd7 32 motor.step(numstep / 360 * (angle % 360), direction, step_speed);
tim004 0:4fd50fc0dbd7 33 else
tim004 0:4fd50fc0dbd7 34 motor.step(numstep / 360 * (angle % 360), 1 - direction, step_speed);
tim004 0:4fd50fc0dbd7 35 }
tim004 0:4fd50fc0dbd7 36 else
tim004 0:4fd50fc0dbd7 37 pc.printf("Motor je zaustavljen. \n\r");
tim004 0:4fd50fc0dbd7 38 goto l1;
tim004 0:4fd50fc0dbd7 39 }else
tim004 0:4fd50fc0dbd7 40 if (pc.getc()=='2'){
tim004 0:4fd50fc0dbd7 41 pc.printf("\n Doslo je do promjene smjera. \n\r");
tim004 0:4fd50fc0dbd7 42 direction=1-direction;
tim004 0:4fd50fc0dbd7 43 goto l1;
tim004 0:4fd50fc0dbd7 44 }else
tim004 0:4fd50fc0dbd7 45 if (pc.getc()=='3'){
tim004 0:4fd50fc0dbd7 46 pc.printf("Trenutna brzina: %d\n\r", step_speed);
tim004 0:4fd50fc0dbd7 47 pc.printf("Nova brzina: \n\r");
tim004 0:4fd50fc0dbd7 48 pc.scanf("%d",&step_speed);
tim004 0:4fd50fc0dbd7 49 goto l1;
tim004 0:4fd50fc0dbd7 50 }else
tim004 0:4fd50fc0dbd7 51 if (pc.getc()=='4'){
tim004 0:4fd50fc0dbd7 52 on=!on;
tim004 0:4fd50fc0dbd7 53 if(on){
tim004 0:4fd50fc0dbd7 54 pc.printf("Motor je pokrenut.\n\r");
tim004 0:4fd50fc0dbd7 55
tim004 0:4fd50fc0dbd7 56 }
tim004 0:4fd50fc0dbd7 57 else{
tim004 0:4fd50fc0dbd7 58 pc.printf("Motor je zaustavljen. \n\r");}
tim004 0:4fd50fc0dbd7 59 goto l1;
tim004 0:4fd50fc0dbd7 60 }
tim004 0:4fd50fc0dbd7 61 else goto l1;
tim004 0:4fd50fc0dbd7 62 }
tim004 0:4fd50fc0dbd7 63 }
tim004 0:4fd50fc0dbd7 64 }