Damian Herman / Mbed 2 deprecated NetrunnerMain

Dependencies:   mbed

Committer:
overkiller
Date:
Tue Jun 23 08:32:15 2015 +0000
Revision:
2:09cc6b203fe4
Parent:
1:90d75436758b
Child:
4:cc391b3f3e57
Engine driver upgraded - states in array

Who changed what in which revision?

UserRevisionLine numberNew contents of line
overkiller 1:90d75436758b 1 #ifndef DRIVER_H
overkiller 1:90d75436758b 2 #define DRIVER_H
overkiller 1:90d75436758b 3 #include "mbed.h"
overkiller 1:90d75436758b 4 DigitalOut en1(D2);
overkiller 1:90d75436758b 5 DigitalOut en2(D4);
overkiller 1:90d75436758b 6 DigitalOut in1(D3);
overkiller 1:90d75436758b 7 DigitalOut in2(D5);
overkiller 1:90d75436758b 8 DigitalOut in3(D6);
overkiller 1:90d75436758b 9 DigitalOut in4(D10);
overkiller 2:09cc6b203fe4 10 int inState[4] = {0,0,0,0};
overkiller 2:09cc6b203fe4 11 void applyStates()
overkiller 2:09cc6b203fe4 12 {
overkiller 2:09cc6b203fe4 13 in1 = inState[0];
overkiller 2:09cc6b203fe4 14 in2 = inState[1];
overkiller 2:09cc6b203fe4 15 in3 = inState[2];
overkiller 2:09cc6b203fe4 16 in4 = inState[3];
overkiller 2:09cc6b203fe4 17 }
overkiller 2:09cc6b203fe4 18 void resetEngines()
overkiller 2:09cc6b203fe4 19 {
overkiller 2:09cc6b203fe4 20 for(int i = 0; i < 4; ++i)
overkiller 2:09cc6b203fe4 21 {
overkiller 2:09cc6b203fe4 22 inState[i] = 0;
overkiller 2:09cc6b203fe4 23 }
overkiller 2:09cc6b203fe4 24 applyStates();
overkiller 2:09cc6b203fe4 25 }
overkiller 2:09cc6b203fe4 26
overkiller 1:90d75436758b 27 void testEngines()
overkiller 1:90d75436758b 28 {
overkiller 2:09cc6b203fe4 29 int i = 0;
overkiller 2:09cc6b203fe4 30 while(i < 4)
overkiller 2:09cc6b203fe4 31 {
overkiller 2:09cc6b203fe4 32 if(i % 2 == 0)
overkiller 2:09cc6b203fe4 33 {
overkiller 2:09cc6b203fe4 34 inState[i] = 1;
overkiller 2:09cc6b203fe4 35 }
overkiller 2:09cc6b203fe4 36 i++;
overkiller 2:09cc6b203fe4 37 }
overkiller 2:09cc6b203fe4 38 applyStates();
overkiller 2:09cc6b203fe4 39 wait(5);
overkiller 2:09cc6b203fe4 40 resetEngines();
overkiller 2:09cc6b203fe4 41 int j = 0;
overkiller 2:09cc6b203fe4 42 while(j < 4)
overkiller 2:09cc6b203fe4 43 {
overkiller 2:09cc6b203fe4 44 if(j % 2 != 0)
overkiller 2:09cc6b203fe4 45 {
overkiller 2:09cc6b203fe4 46 inState[j] = 1;
overkiller 2:09cc6b203fe4 47 }
overkiller 2:09cc6b203fe4 48 j++;
overkiller 2:09cc6b203fe4 49 }
overkiller 2:09cc6b203fe4 50 applyStates();
overkiller 2:09cc6b203fe4 51 wait(5);
overkiller 2:09cc6b203fe4 52 resetEngines();
overkiller 1:90d75436758b 53 }
overkiller 2:09cc6b203fe4 54
overkiller 1:90d75436758b 55 void enableAll()
overkiller 1:90d75436758b 56 {
overkiller 1:90d75436758b 57 en1 = 1;
overkiller 1:90d75436758b 58 en2 = 1;
overkiller 1:90d75436758b 59 }
overkiller 1:90d75436758b 60 void enableOne(int which)
overkiller 1:90d75436758b 61 {
overkiller 1:90d75436758b 62 if(which == 0)
overkiller 1:90d75436758b 63 {
overkiller 1:90d75436758b 64 en1 = 1;
overkiller 1:90d75436758b 65 }else if(which == 1)
overkiller 1:90d75436758b 66 {
overkiller 1:90d75436758b 67 en2 = 1;
overkiller 1:90d75436758b 68 }
overkiller 1:90d75436758b 69 }
overkiller 1:90d75436758b 70 void disableAll()
overkiller 1:90d75436758b 71 {
overkiller 1:90d75436758b 72 en1 = 0;
overkiller 1:90d75436758b 73 en2 = 0;
overkiller 1:90d75436758b 74 }
overkiller 1:90d75436758b 75 void disableOne(int which)
overkiller 1:90d75436758b 76 {
overkiller 1:90d75436758b 77 if(which == 0)
overkiller 1:90d75436758b 78 {
overkiller 1:90d75436758b 79 en1 = 0;
overkiller 1:90d75436758b 80 }else if(which == 1)
overkiller 1:90d75436758b 81 {
overkiller 1:90d75436758b 82 en2 = 0;
overkiller 1:90d75436758b 83 }
overkiller 1:90d75436758b 84 }
overkiller 1:90d75436758b 85 #endif //DRIVER_H