Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: RoboClaw mbed StepperMotor
Fork of RoboClaw by
Diff: main.cpp
- Revision:
- 49:5e2f7323f280
- Parent:
- 47:be4eebf40568
- Parent:
- 48:03da1aead032
- Child:
- 51:1056dd73a748
- Child:
- 52:98f8a6ccb6ae
diff -r be4eebf40568 -r 5e2f7323f280 main.cpp
--- 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
