rampscenario
Dependencies: MODSERIAL QEI mbed
Fork of check_motoren_buttons by
main.cpp
- Committer:
- sivuu
- Date:
- 2016-09-30
- Revision:
- 10:06d0fe6b3bcf
- Parent:
- 9:4870f0e789f8
File content as of revision 10:06d0fe6b3bcf:
#include "mbed.h" //#include "MODSERIAL.h" //DigitalOut led(LED_RED); //DigitalOut led2(LED_BLUE); InterruptIn sw3(SW3); Serial pc(USBTX, USBRX); DigitalOut motor1(D4); PwmOut pwm_motor1(D5); DigitalOut motor2(D7); PwmOut pwm_motor2(D6); int n = 0; void SwitchN() { // maakt simpele functie die 1 bij n optelt n++; } int main() { pc.baud(115200); // zorgt voor de link voor putty 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 char c = pc.getc(); // zorgt ervoor dat er in het toetsenboard characters gebruikt kunnen worden if (c=='s') // als s ingedrukt wordt gebeurd het volgende { if (n%2==0) // als s ingedrukt wordt en het getal is even gebeurd het onderstaande { pc.printf("n is even \n\r"); // print lijn "n is even" pc.printf("up \n\r"); // print lijn "up" motor1 = 1; // zegt dat motor 1 clockwise draaid pwm_motor1 = 1; // zegt dat motor 1 op maximale snelheid draaid wait (0.03); // wacht van 0.03 seconde pwm_motor1 = 0; // zorgt er voor dat de snelheid van motor 1 uitgaat. } 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; // zegt dat motor 2 clockwise draaid pwm_motor2 = 1; // zorgt er voor dat motor 2 maximale snelheid draaid wait (0.03); // wacht van 0.03 seconde pwm_motor2 = 0; // zorgt er voor dat de snelheid van motor 2 weer 0 wordt } } else if (c=='d') // als d ingedrukt wordt gebeurd het volgende { if (n%2==0) // als d is ingedrukt en n is even dan gebeurd het volgende { pc.printf("n is even \n\r"); // print lijn "n is even" pc.printf("down \n\r"); // print lijn "down" motor1 = 0; // zorgt er voor dat motor 1 counter clockwise gaat draaien pwm_motor1 = 1; // zorgt er voor dat motor 1 maximale snelheid gaat draaien wait (0.03); // wacht van 0.03 seconde pwm_motor1 = 0; // zorgt er voor dat de snelheid van motor 1 nul wordt als de knop wordt losgelaten } 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; // zorgt erg voor dat motor 2 counterclockwise draaid pwm_motor2 = 1; // zorgt er voor dat motor 2 maximale snelheid draaid wait (0.03); // wacht van 0.03 seconde pwm_motor2=0; // zorgt er voor dat de snelheid van motor 2 nul wordt als de knop wordt losgelaten } } } }