![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
check Dit is basis, en wordt uitgebreid door sieb
Dependencies: MODSERIAL QEI mbed
Fork of check_motoren_buttons_emg by
Diff: main.cpp
- Revision:
- 6:e6a048f541ee
- Parent:
- 5:d1d65e16fd9e
- Child:
- 8:432dc3ed8ea3
--- a/main.cpp Fri Sep 30 09:31:26 2016 +0000 +++ b/main.cpp Fri Sep 30 09:33:47 2016 +0000 @@ -5,11 +5,11 @@ DigitalOut led2(LED_BLUE); InterruptIn sw3(SW3); Serial pc(USBTX, USBRX); -DigitalOut motor1(D4); +DigitalOut richting_motor1(D4); PwmOut pwm_motor1(D5); -DigitalOut motor2(D7); +DigitalOut richting_motor2(D7); PwmOut pwm_motor2(D6); -int n = 0; +int n = 0; //start van de teller wordt op nul gesteld void SwitchN() { // maakt simpele functie die 1 bij n optelt n++; @@ -17,11 +17,11 @@ int main() { - pc.baud(115200); // zorgt voor de link voor putty - + pc.baud(115200); // zorgt voor de link voor putty, 115200 is snelheid + while (true) { // zorgt er voor dat de code oneindig doorgelopen wordt - sw3.fall(&SwitchN); // zorrgt er voor dat void switch wordt gedaan als switch 3 wordt ingedrukt + sw3.fall(&SwitchN); // zorgt er voor dat void switch wordt gedaan als switch 3 wordt ingedrukt char c = pc.getc(); // zorgt ervoor dat er in het toetsenboard characters gebruikt kunnen worden @@ -31,32 +31,20 @@ { pc.printf("n is even \n\r"); // print lijn "n is even" pc.printf("up \n\r"); // print lijn "up" - motor1 = 1; - pwm_motor1 = 1; + richting_motor1 = 1; + pwm_motor1 = 1; wait (0.05); - pwm_motor1 = 0.75; - wait (0.01); - pwm_motor1 = 0.5; - wait (0.01); - pwm_motor1 = 0.25; - wait (0.01); - pwm_motor1 = 0; } + else // als s is ingedrukt maar het getal is niet even (dus oneven) gebeurdt het onderstaande { pc.printf("n is odd \n\r"); // print lijn "n is odd" pc.printf("left \n\r"); // print lijn "left" - motor2 = 1; + richting_motor2 = 1; pwm_motor2 = 1; wait (0.05); - pwm_motor2 = 0.75; - wait (0.01); - pwm_motor2 = 0.5; - wait (0.01); - pwm_motor2 = 0.25; - wait (0.01); - pwm_motor2 = 0; - } + } + } else if (c=='d') // als d ingedrukt wordt gebeurd het volgende { @@ -64,32 +52,23 @@ { pc.printf("n is even \n\r"); // print lijn "n is even" pc.printf("down \n\r"); // print lijn "down" - motor1 = 0; + richting_motor1 = 0; pwm_motor1 = 1; wait (0.05); - pwm_motor1 = 0.75; - wait (0.01); - pwm_motor1 = 0.5; - wait (0.01); - pwm_motor1 = 0.25; - wait (0.01); - pwm_motor1 = 0; + } else // als d is ingedrukt maar het getal is niet even (dus oneven) gebeurdt het onderstaande { pc.printf("n is odd \n\r"); // print lijn "n is odd" pc.printf("right \n\r"); // print lijn "right" - motor2 = 0; + richting_motor2 = 0; pwm_motor2 = 1; - wait (0.05); - pwm_motor2 = 0.75; - wait (0.01); - pwm_motor2 = 0.5; - wait (0.01); - pwm_motor2 = 0.25; - wait (0.01); - pwm_motor2 = 0; - } + wait (0.05); + } + else + {pwm_motor2=0; + pwm_motor=0; + } } }