ARES
/
Timer
Time is good
Fork of Robot2016_2-0 by
Diff: main.cpp
- Revision:
- 49:5e2f7323f280
- Parent:
- 47:be4eebf40568
- Parent:
- 48:03da1aead032
- Child:
- 51:1056dd73a748
- Child:
- 52:98f8a6ccb6ae
--- a/main.cpp Mon Apr 25 12:42:32 2016 +0000 +++ b/main.cpp Thu Apr 28 08:24:02 2016 +0000 @@ -1,21 +1,28 @@ #include "func.h" #include "map.h" -#define ATTENTE 0 -#define GO 1 -#define STOP 2 +/* Déclaration des différents éléments de l'IHM */ -/* Déclaration des différents éléments de l'IHM */ +InterruptIn CAMP(PA_15); +InterruptIn START(PB_7); +DigitalOut LEDR(PC_2); +DigitalOut LEDV(PC_3); + InterruptIn mybutton(USER_BUTTON); DigitalIn button(USER_BUTTON); -DigitalOut led(LED1); + +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 */ -AX12 left_hand(PA_15, PB_7, 4, 250000); -AX12 right_hand(PA_15, PB_7, 1, 250000); +/* AX12 - non fonctionnels, je pense que le souci vient de la bibliothèque car la trame n'est pas correcte (analyseur logique) */ +//AX12 left_hand(PA_9, PA_10, 4, 250000); +//AX12 right_hand(PA_9, PA_10, 1, 250000); /* Sharp */ AnalogIn capt1(PA_4); @@ -24,25 +31,25 @@ AnalogIn capt4(PC_0); /* Moteurs pas à pas */ -Stepper RMot(NC, PB_10, PA_8); -Stepper ZMot(NC, PB_5, PB_4); -Stepper LMot(NC, PB_3, PA_10); +Stepper RMot(NC, PA_8, PC_7); +Stepper ZMot(NC, PB_4, PB_10); +Stepper LMot(NC, PB_5, PB_3); /* Fins de course */ InterruptIn EndR(PB_15); InterruptIn EndZ(PB_14); InterruptIn EndL(PB_13); Ticker ticker; - //Serial logger(USBTX, USBRX); Serial logger(PA_9, PA_10); -RoboClaw roboclaw(460800, PA_11, PA_12); +RoboClaw roboclaw(ADR, 460800, PA_11, PA_12); Odometry odo(61.7, 61.8, ENTRAXE, 4096, roboclaw); -int i = 0, state = 0; -bool EL = false, EZ = false, ER = false; +int SIMON_i = 0, SIMON_state = 0, SCouleur = 1, SStart = 0; +bool SIMON_EL = false, SIMON_EZ = false, SIMON_ER = false; void init(void); +void update_main(void); /* Debut du programme */ int main(void) @@ -60,31 +67,39 @@ m.Execute(110,1000); odo.GotoThet(0); - - roboclaw.ForwardM1(ADR, 0); - roboclaw.ForwardM2(ADR, 0); + roboclaw.ForwardM1(0); + roboclaw.ForwardM2(0); logger.printf ("Chemin Fini !");*/ - odo.GotoXY(500,1000); - while (1); + while(1); } void init(void) { - odo.setPos(110, 1000, 0); - roboclaw.ForwardM1(ADR, 0); - roboclaw.ForwardM2(ADR, 0); logger.baud(9600); logger.printf("Hello from main !\n\r"); + bleu = 1, blanc = 1, rouge = 1; + + odo.setPos(110, 1000, 0); + + roboclaw.ForwardM1(0); + roboclaw.ForwardM2(0); wait_ms(500); + bleu = 0, blanc = 0, rouge = 0; - while(button); - wait(1); + while(SStart==0); - init_ax12(); + roboclaw.ResetEnc(); init_interrupt(); wait_ms(100); + logger.printf("End init\n\r"); } + +void update_main(void) +{ + odo.update_odo(); + //checkAround(); +} \ No newline at end of file