Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 #include "EncoderCounter.h"
00003 #include "IMU.h"
00004 #include "Controller.h"
00005 
00006 // create miscellaneous periphery objects
00007 DigitalOut led1(PB_13);
00008 DigitalOut led2(PC_8);
00009 DigitalOut led3(PC_9);
00010 DigitalOut led4(PC_0);
00011 DigitalOut led5(PC_1);
00012 DigitalOut led6(PH_1);
00013 DigitalOut led7(PC_2);
00014 DigitalOut led8(PC_3);
00015 DigitalOut led9(PB_0);
00016 
00017 DigitalIn user_button(USER_BUTTON);
00018 //DigitalIn reset_button(NRST);
00019 
00020 // create IMU comunication objects
00021 SPI spi(PC_12, PC_11, PC_10); // mosi, miso, sclk
00022 DigitalOut csAG(PA_15);
00023 DigitalOut csM(PD_2);
00024 
00025 // create motor control objects
00026 DigitalOut enable1(PB_1);
00027 DigitalOut enable2(PB_2);
00028 DigitalOut enable3(PB_3);
00029 
00030 PwmOut pwm1(PA_8);
00031 PwmOut pwm2(PA_9);
00032 PwmOut pwm3(PA_10);
00033 
00034 AnalogIn M1_AOUT1(PB_4);
00035 AnalogIn M1_AOUT2(PB_5);
00036 DigitalIn M1_DIO3(PB_12);
00037 DigitalIn M1_DIO4(PC_7);
00038 
00039 AnalogIn M2_AOUT1(PB_14);
00040 AnalogIn M2_AOUT2(PB_15);
00041 DigitalIn M2_DIO3(PA_4);
00042 DigitalIn M2_DIO4(PA_5);
00043 
00044 AnalogIn M3_AOUT1(PA_7);
00045 AnalogIn M3_AOUT2(PA_11);
00046 DigitalIn M3_DIO3(PA_12);
00047 DigitalIn M3_DIO4(PC_4);
00048 
00049 // crete Encoder read objects
00050 EncoderCounter counter1(PA_6, PC_7);
00051 EncoderCounter counter2(PB_6, PB_7);
00052 EncoderCounter counter3(PA_1, PA_0);
00053 
00054 // create distance sensor objects
00055 
00056 // create robot controller objects
00057 
00058 // create serial comunication objects, bluetooth/wifi
00059 
00060 // enter main loop
00061 int main()
00062 {
00063 // instance objects
00064 
00065     //IMU
00066     IMU imu(spi, csAG, csM);
00067     //controller
00068     Controller controller(pwm1,pwm2,pwm3,counter1,counter2,counter3,imu);
00069     //stateMachine
00070 
00071     while (true) {
00072 
00073         //printf tests
00074 
00075         led1 = !led1;
00076         wait(0.5);
00077     }
00078 }