rampscenario

Dependencies:   MODSERIAL QEI mbed

Fork of check_motoren_buttons by Daniqe Kottelenberg

Committer:
daniQQue
Date:
Fri Nov 04 07:37:06 2016 +0000
Revision:
19:9e87d4f9fbc4
Parent:
18:75ced8c04eee
rampscenario

Who changed what in which revision?

UserRevisionLine numberNew contents of line
daniQQue 12:20b8999018df 1 #include "mbed.h" //standaard bieb mbed
daniQQue 12:20b8999018df 2 #include "QEI.h" //bieb voor encoderfuncties in c++
daniQQue 12:20b8999018df 3 #include "MODSERIAL.h" //bieb voor modserial
sivuu 2:4dcdf7755a04 4 InterruptIn sw3(SW3);
daniQQue 12:20b8999018df 5 DigitalIn encoder1A(D13);
daniQQue 12:20b8999018df 6 DigitalIn encoder1B(D12);
daniQQue 19:9e87d4f9fbc4 7 DigitalIn button_cw(PTC12);
daniQQue 19:9e87d4f9fbc4 8 DigitalIn button_ccw(D9);
daniQQue 17:828683efceee 9 //DigitalOut ledcw(D10);
daniQQue 17:828683efceee 10 //DigitalOut ledccw(D2);
daniQQue 12:20b8999018df 11 MODSERIAL pc(USBTX, USBRX);
sivuu 6:e6a048f541ee 12 DigitalOut richting_motor1(D4);
sivuu 4:2b3fbd7ef1cf 13 PwmOut pwm_motor1(D5);
sivuu 6:e6a048f541ee 14 DigitalOut richting_motor2(D7);
sivuu 4:2b3fbd7ef1cf 15 PwmOut pwm_motor2(D6);
sivuu 6:e6a048f541ee 16 int n = 0; //start van de teller wordt op nul gesteld
sivuu 2:4dcdf7755a04 17
sivuu 3:34f7c16a6a7f 18 void SwitchN() { // maakt simpele functie die 1 bij n optelt
sivuu 2:4dcdf7755a04 19 n++;
sivuu 2:4dcdf7755a04 20 }
sivuu 11:757787c47d3c 21
sivuu 2:4dcdf7755a04 22
sivuu 0:b7cb5d3978b5 23 int main()
sivuu 0:b7cb5d3978b5 24 {
sivuu 6:e6a048f541ee 25 pc.baud(115200); // zorgt voor de link voor putty, 115200 is snelheid
daniQQue 14:091953e55c1d 26 const float a=1.0;
daniQQue 16:611d2eb213e2 27 const float b=10.0;
daniQQue 14:091953e55c1d 28
sivuu 3:34f7c16a6a7f 29 while (true) { // zorgt er voor dat de code oneindig doorgelopen wordt
sivuu 2:4dcdf7755a04 30
sivuu 6:e6a048f541ee 31 sw3.fall(&SwitchN); // zorgt er voor dat void switch wordt gedaan als switch 3 wordt ingedrukt
sivuu 0:b7cb5d3978b5 32
sivuu 11:757787c47d3c 33
daniQQue 12:20b8999018df 34
daniQQue 12:20b8999018df 35 if (button_cw==0) // als s ingedrukt wordt gebeurd het volgende
sivuu 3:34f7c16a6a7f 36 {
sivuu 3:34f7c16a6a7f 37 if (n%2==0) // als s ingedrukt wordt en het getal is even gebeurd het onderstaande
sivuu 3:34f7c16a6a7f 38 {
sivuu 3:34f7c16a6a7f 39 pc.printf("n is even \n\r"); // print lijn "n is even"
sivuu 4:2b3fbd7ef1cf 40 pc.printf("up \n\r"); // print lijn "up"
sivuu 6:e6a048f541ee 41 richting_motor1 = 1;
daniQQue 14:091953e55c1d 42 pwm_motor1 = a;
daniQQue 19:9e87d4f9fbc4 43 // ledcw=1; ledccw=0;
daniQQue 12:20b8999018df 44
sivuu 3:34f7c16a6a7f 45 }
sivuu 6:e6a048f541ee 46
sivuu 3:34f7c16a6a7f 47 else // als s is ingedrukt maar het getal is niet even (dus oneven) gebeurdt het onderstaande
sivuu 3:34f7c16a6a7f 48 {
sivuu 3:34f7c16a6a7f 49 pc.printf("n is odd \n\r"); // print lijn "n is odd"
sivuu 3:34f7c16a6a7f 50 pc.printf("left \n\r"); // print lijn "left"
sivuu 6:e6a048f541ee 51 richting_motor2 = 1;
daniQQue 14:091953e55c1d 52 pwm_motor2 = b;
daniQQue 19:9e87d4f9fbc4 53 //ledcw=1;
daniQQue 19:9e87d4f9fbc4 54 //ledccw=1;
sivuu 6:e6a048f541ee 55 }
sivuu 6:e6a048f541ee 56
sivuu 3:34f7c16a6a7f 57 }
daniQQue 12:20b8999018df 58 else if (button_ccw==0) // als d ingedrukt wordt gebeurd het volgende
sivuu 3:34f7c16a6a7f 59 {
sivuu 3:34f7c16a6a7f 60 if (n%2==0) // als d is ingedrukt en n is even dan gebeurd het volgende
sivuu 3:34f7c16a6a7f 61 {
sivuu 3:34f7c16a6a7f 62 pc.printf("n is even \n\r"); // print lijn "n is even"
sivuu 3:34f7c16a6a7f 63 pc.printf("down \n\r"); // print lijn "down"
sivuu 6:e6a048f541ee 64 richting_motor1 = 0;
daniQQue 14:091953e55c1d 65 pwm_motor1 = a;
daniQQue 19:9e87d4f9fbc4 66 //ledccw=1; ledcw=0;
daniQQue 12:20b8999018df 67
sivuu 6:e6a048f541ee 68
sivuu 3:34f7c16a6a7f 69 }
sivuu 3:34f7c16a6a7f 70 else // als d is ingedrukt maar het getal is niet even (dus oneven) gebeurdt het onderstaande
sivuu 3:34f7c16a6a7f 71 {
sivuu 3:34f7c16a6a7f 72 pc.printf("n is odd \n\r"); // print lijn "n is odd"
sivuu 3:34f7c16a6a7f 73 pc.printf("right \n\r"); // print lijn "right"
sivuu 6:e6a048f541ee 74 richting_motor2 = 0;
daniQQue 14:091953e55c1d 75 pwm_motor2 = b;
daniQQue 19:9e87d4f9fbc4 76 //ledccw=1; ledcw=0;
daniQQue 12:20b8999018df 77
sivuu 8:432dc3ed8ea3 78 }
sivuu 11:757787c47d3c 79 }
sivuu 11:757787c47d3c 80 else{
sivuu 11:757787c47d3c 81 pc.printf("motor staat stil \n\r");
sivuu 11:757787c47d3c 82 pwm_motor2=0;
sivuu 8:432dc3ed8ea3 83 pwm_motor1=0;
daniQQue 19:9e87d4f9fbc4 84 //ledccw=0; ;ledcw=0;
sivuu 6:e6a048f541ee 85 }
daniQQue 19:9e87d4f9fbc4 86
sivuu 0:b7cb5d3978b5 87 }
sivuu 3:34f7c16a6a7f 88 }
sivuu 3:34f7c16a6a7f 89