Micromouse / Mbed 2 deprecated Main-codetest

Dependencies:   mbed

Committer:
x58alex41
Date:
Wed Nov 22 02:18:07 2017 +0000
Revision:
0:9c49bdc7e402
Child:
6:688449345fff
test;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
x58alex41 0:9c49bdc7e402 1 #include "mbed.h"
x58alex41 0:9c49bdc7e402 2 #include "PID.h"
x58alex41 0:9c49bdc7e402 3 #include "controls.h"
x58alex41 0:9c49bdc7e402 4 #include "globals.h"
x58alex41 0:9c49bdc7e402 5
x58alex41 0:9c49bdc7e402 6 AnalogIn LL_t (PC_0);
x58alex41 0:9c49bdc7e402 7 AnalogIn L_t (PC_1);
x58alex41 0:9c49bdc7e402 8 AnalogIn R_t (PA_4);
x58alex41 0:9c49bdc7e402 9 AnalogIn RR_t (PA_0);
x58alex41 0:9c49bdc7e402 10
x58alex41 0:9c49bdc7e402 11 DigitalOut LL_e (PB_7);
x58alex41 0:9c49bdc7e402 12 DigitalOut L_e (PB_0);
x58alex41 0:9c49bdc7e402 13 DigitalOut R_e (PC_11);
x58alex41 0:9c49bdc7e402 14 DigitalOut RR_e (PC_10);
x58alex41 0:9c49bdc7e402 15
x58alex41 0:9c49bdc7e402 16 InterruptIn cM1_1(PB_3); //interrupt from encoders
x58alex41 0:9c49bdc7e402 17 InterruptIn cM1_2(PA_15);
x58alex41 0:9c49bdc7e402 18 InterruptIn cM2_1(PA_1);
x58alex41 0:9c49bdc7e402 19 InterruptIn cM2_2(PC_4);
x58alex41 0:9c49bdc7e402 20
x58alex41 0:9c49bdc7e402 21 DigitalOut M1F(PC_7); //motor direction and speed control
x58alex41 0:9c49bdc7e402 22 DigitalOut M2B(PA_7);
x58alex41 0:9c49bdc7e402 23 DigitalOut M1B(PB_10);
x58alex41 0:9c49bdc7e402 24 DigitalOut M2F(PB_6);
x58alex41 0:9c49bdc7e402 25 Serial pc(SERIAL_TX, SERIAL_RX);
x58alex41 0:9c49bdc7e402 26
x58alex41 0:9c49bdc7e402 27 volatile unsigned long counterM1 = 1; // counter for hall sensors
x58alex41 0:9c49bdc7e402 28 volatile unsigned long counterM2 = 1;
x58alex41 0:9c49bdc7e402 29
x58alex41 0:9c49bdc7e402 30 void incrementM1()
x58alex41 0:9c49bdc7e402 31 {
x58alex41 0:9c49bdc7e402 32 ++counterM1;
x58alex41 0:9c49bdc7e402 33 }
x58alex41 0:9c49bdc7e402 34 void incrementM2()
x58alex41 0:9c49bdc7e402 35 {
x58alex41 0:9c49bdc7e402 36 ++counterM2;
x58alex41 0:9c49bdc7e402 37 }
x58alex41 0:9c49bdc7e402 38
x58alex41 0:9c49bdc7e402 39 int main()
x58alex41 0:9c49bdc7e402 40 {
x58alex41 0:9c49bdc7e402 41
x58alex41 0:9c49bdc7e402 42 M1B.write(0);
x58alex41 0:9c49bdc7e402 43 M2B.write(0);
x58alex41 0:9c49bdc7e402 44 M1F.write(0);
x58alex41 0:9c49bdc7e402 45 M2F.write(0);
x58alex41 0:9c49bdc7e402 46
x58alex41 0:9c49bdc7e402 47 LL_e=1;
x58alex41 0:9c49bdc7e402 48 RR_e=1;
x58alex41 0:9c49bdc7e402 49
x58alex41 0:9c49bdc7e402 50 cM1_1.rise(&incrementM1);
x58alex41 0:9c49bdc7e402 51 cM1_1.fall(&incrementM1);
x58alex41 0:9c49bdc7e402 52 cM1_2.rise(&incrementM1);
x58alex41 0:9c49bdc7e402 53 cM1_2.fall(&incrementM1);
x58alex41 0:9c49bdc7e402 54
x58alex41 0:9c49bdc7e402 55 cM2_1.rise(&incrementM2);
x58alex41 0:9c49bdc7e402 56 cM2_1.fall(&incrementM2);
x58alex41 0:9c49bdc7e402 57 cM2_2.rise(&incrementM2);
x58alex41 0:9c49bdc7e402 58 cM2_2.fall(&incrementM2);
x58alex41 0:9c49bdc7e402 59
x58alex41 0:9c49bdc7e402 60 move(.05, 1000000, forward, forward, &PID_e );
x58alex41 0:9c49bdc7e402 61
x58alex41 0:9c49bdc7e402 62 }
x58alex41 0:9c49bdc7e402 63
x58alex41 0:9c49bdc7e402 64
x58alex41 0:9c49bdc7e402 65
x58alex41 0:9c49bdc7e402 66
x58alex41 0:9c49bdc7e402 67
x58alex41 0:9c49bdc7e402 68