coucou

Dependencies:   RoboClaw mbed

Fork of Robot2016_2-0 by ARES

Revision:
53:bef06d5e827d
Child:
74:07cdad6e861a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp.orig	Wed May 04 16:21:48 2016 +0000
@@ -0,0 +1,113 @@
+#include "func.h"
+#include "map.h"
+
+/* Déclaration des différents éléments de l'IHM */
+
+DigitalIn CAMP(PA_15);
+DigitalIn START(PB_7);
+DigitalOut LEDR(PC_2);
+DigitalOut LEDV(PC_3);
+
+BusOut drapeau(PC_8, PC_6, PC_5);
+
+InterruptIn mybutton(USER_BUTTON);
+DigitalIn button(USER_BUTTON);
+
+DigitalIn ChannelA1(PA_1);
+DigitalIn ChannelB1(PA_0);
+DigitalIn ChannelA2(PA_5);
+DigitalIn ChannelB2(PA_6);
+
+DigitalOut bleu(PC_5);
+DigitalOut blanc(PC_6);
+DigitalOut rouge(PC_8);
+
+//AX12 left_hand(PA_9, PA_10, 4, 250000);
+//AX12 right_hand(PA_9, PA_10, 1, 250000);
+
+/* Sharp */
+AnalogIn capt1(PA_4);
+AnalogIn capt2(PB_0);
+AnalogIn capt3(PC_1);
+AnalogIn capt4(PC_0);
+
+/* Moteurs pas à pas */
+Stepper RMot(NC, PA_8, PC_7, 4);
+Stepper ZMot(NC, PB_4, PB_10, 5);
+Stepper LMot(NC, PB_5, PB_3, 4);
+/* Fins de course */
+InterruptIn EndR(PB_15);
+InterruptIn EndZ(PB_14);
+InterruptIn EndL(PB_13);
+DigitalIn EnR(PB_15);
+DigitalIn EnZ(PB_14);
+DigitalIn EnL(PB_13);
+
+Ticker ticker;
+//Serial logger(USBTX, USBRX);
+Serial logger(PA_2, PA_3);
+RoboClaw roboclaw(ADR, 460800, PA_11, PA_12);
+Odometry odo(61.7, 61.8, ENTRAXE, 4096, roboclaw);
+
+int SIMON_i = 0, SIMON_state = 0, SCouleur = VERT, SStart = 0, SSchema = 1;
+bool SIMON_EL = false, SIMON_EZ = false, SIMON_ER = false, SGauche = false, SDevant = false, SDroite = false;
+
+void init(void);
+void update_main(void);
+
+/* Debut du programme */
+int main(void)
+{
+    logger.printf("Depart homologation !\n\r");
+    homologation();
+    /*drapeau = 0;
+    init();
+
+    map m(&odo);
+    m.addObs(obsCarr (1250, 1000, 220, 220));
+    m.addObs(obsCarr (1500, 750, 220, 220));
+    m.addObs(obsCarr (1500, 1250, 220, 220));
+
+    m.Execute(1000,1000);
+    m.Execute(1500,1000);
+    m.Execute(1500,1500);
+    m.Execute(110,1000);
+
+    odo.GotoThet(0);
+    roboclaw.ForwardM1(0);
+    roboclaw.ForwardM2(0);
+    logger.printf ("Chemin Fini !");
+
+    while(1);*/
+}
+
+void init(void)
+{
+    logger.baud(9600);
+    logger.printf("Hello from main !\n\r");
+
+    init_interrupt();
+    goHome();
+
+    SCouleur = VERT;
+    LEDV = 1;
+    LEDR = 0;
+
+    odo.setPos(110, 1000, 0);
+    roboclaw.ResetEnc();
+    roboclaw.ForwardM1(0);
+    roboclaw.ForwardM2(0);
+    wait_ms(500);
+    while(1);
+    //depart();
+    init_interrupt();
+    wait_ms(100);
+    while(START==0);
+    logger.printf("End init\n\r");
+}
+
+void update_main(void)
+{
+    odo.update_odo();
+    checkAround();
+}
\ No newline at end of file