Turning function

Dependencies:   mbed-rtos mbed

Committer:
vceyssens3
Date:
Mon May 01 01:03:22 2017 +0000
Revision:
0:84070c2a9436
turning;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
vceyssens3 0:84070c2a9436 1 #include "mbed.h"
vceyssens3 0:84070c2a9436 2 #include "rtos.h"
vceyssens3 0:84070c2a9436 3
vceyssens3 0:84070c2a9436 4 Serial pc(USBTX, USBRX);
vceyssens3 0:84070c2a9436 5 DigitalOut start(p30,1);
vceyssens3 0:84070c2a9436 6 DigitalOut right(p29,1);
vceyssens3 0:84070c2a9436 7 DigitalOut left(p28,1);
vceyssens3 0:84070c2a9436 8 DigitalOut up(p27,1);
vceyssens3 0:84070c2a9436 9 DigitalOut down(p26,1);
vceyssens3 0:84070c2a9436 10 DigitalOut on_switch(p25,0);
vceyssens3 0:84070c2a9436 11 DigitalOut myled(LED1);
vceyssens3 0:84070c2a9436 12 DigitalOut led2(LED2);
vceyssens3 0:84070c2a9436 13 DigitalOut led3(LED3);
vceyssens3 0:84070c2a9436 14 DigitalOut led4(LED4);
vceyssens3 0:84070c2a9436 15 DigitalIn encoder(p20);
vceyssens3 0:84070c2a9436 16
vceyssens3 0:84070c2a9436 17
vceyssens3 0:84070c2a9436 18 void starting_commands(){ // toggles the button to start the cop car
vceyssens3 0:84070c2a9436 19 start = 0;
vceyssens3 0:84070c2a9436 20 wait(0.1);
vceyssens3 0:84070c2a9436 21 start = 1;
vceyssens3 0:84070c2a9436 22 wait(0.1);
vceyssens3 0:84070c2a9436 23 }
vceyssens3 0:84070c2a9436 24
vceyssens3 0:84070c2a9436 25
vceyssens3 0:84070c2a9436 26 void start_func() // sequence that gets the cop car into no noise run mode
vceyssens3 0:84070c2a9436 27 {
vceyssens3 0:84070c2a9436 28 on_switch =1;
vceyssens3 0:84070c2a9436 29 starting_commands();
vceyssens3 0:84070c2a9436 30 starting_commands();
vceyssens3 0:84070c2a9436 31 starting_commands();
vceyssens3 0:84070c2a9436 32 starting_commands();
vceyssens3 0:84070c2a9436 33 starting_commands();
vceyssens3 0:84070c2a9436 34 }
vceyssens3 0:84070c2a9436 35
vceyssens3 0:84070c2a9436 36 int first_time = 0;
vceyssens3 0:84070c2a9436 37 int last_time = 0;
vceyssens3 0:84070c2a9436 38
vceyssens3 0:84070c2a9436 39 void drive(){
vceyssens3 0:84070c2a9436 40
vceyssens3 0:84070c2a9436 41
vceyssens3 0:84070c2a9436 42 right = 0;
vceyssens3 0:84070c2a9436 43 wait(0.1);
vceyssens3 0:84070c2a9436 44 up = 0;
vceyssens3 0:84070c2a9436 45 wait(0.4);
vceyssens3 0:84070c2a9436 46 up = right = 1;
vceyssens3 0:84070c2a9436 47 wait(0.2);
vceyssens3 0:84070c2a9436 48
vceyssens3 0:84070c2a9436 49 }
vceyssens3 0:84070c2a9436 50
vceyssens3 0:84070c2a9436 51 void reverse(){
vceyssens3 0:84070c2a9436 52
vceyssens3 0:84070c2a9436 53 left = 0;
vceyssens3 0:84070c2a9436 54 wait(0.1);
vceyssens3 0:84070c2a9436 55 down = 0;
vceyssens3 0:84070c2a9436 56 wait(0.4);
vceyssens3 0:84070c2a9436 57 down= left=1;
vceyssens3 0:84070c2a9436 58 wait(0.2);
vceyssens3 0:84070c2a9436 59 }
vceyssens3 0:84070c2a9436 60
vceyssens3 0:84070c2a9436 61 int main() {
vceyssens3 0:84070c2a9436 62 start_func();
vceyssens3 0:84070c2a9436 63 drive();
vceyssens3 0:84070c2a9436 64 reverse();
vceyssens3 0:84070c2a9436 65 drive();
vceyssens3 0:84070c2a9436 66 reverse();
vceyssens3 0:84070c2a9436 67 drive();
vceyssens3 0:84070c2a9436 68 reverse();
vceyssens3 0:84070c2a9436 69 drive();
vceyssens3 0:84070c2a9436 70 reverse();
vceyssens3 0:84070c2a9436 71 drive();
vceyssens3 0:84070c2a9436 72 reverse();
vceyssens3 0:84070c2a9436 73 drive();
vceyssens3 0:84070c2a9436 74 reverse();
vceyssens3 0:84070c2a9436 75 drive();
vceyssens3 0:84070c2a9436 76 reverse();
vceyssens3 0:84070c2a9436 77 drive();
vceyssens3 0:84070c2a9436 78 reverse();
vceyssens3 0:84070c2a9436 79 drive();
vceyssens3 0:84070c2a9436 80 reverse();
vceyssens3 0:84070c2a9436 81
vceyssens3 0:84070c2a9436 82
vceyssens3 0:84070c2a9436 83 }