Romain Ame
/
Timer71pt
Fork de Timer après le match à 61 points
Fork of Timer by
main.cpp@76:a862cb10559c, 2016-05-05 (annotated)
- Committer:
- sype
- Date:
- Thu May 05 06:34:13 2016 +0000
- Revision:
- 76:a862cb10559c
- Parent:
- 75:195dd2bb13a3
debuggage
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
sype | 41:b5a2fbc20beb | 1 | #include "func.h" |
sype | 76:a862cb10559c | 2 | #include "map.h" |
sype | 0:ad9600df4a70 | 3 | |
Jagang | 58:02dc8328975a | 4 | #include "ControlleurPince.h" |
Jagang | 58:02dc8328975a | 5 | |
sype | 41:b5a2fbc20beb | 6 | /* Déclaration des différents éléments de l'IHM */ |
sype | 46:5658af4e5149 | 7 | |
sype | 51:1056dd73a748 | 8 | DigitalIn CAMP(PA_15); |
sype | 51:1056dd73a748 | 9 | DigitalIn START(PB_7); |
sype | 46:5658af4e5149 | 10 | DigitalOut LEDR(PC_2); |
sype | 46:5658af4e5149 | 11 | DigitalOut LEDV(PC_3); |
sype | 46:5658af4e5149 | 12 | |
sype | 51:1056dd73a748 | 13 | BusOut drapeau(PC_8, PC_6, PC_5); |
sype | 51:1056dd73a748 | 14 | |
sype | 10:ae3178aa94e9 | 15 | InterruptIn mybutton(USER_BUTTON); |
sype | 10:ae3178aa94e9 | 16 | DigitalIn button(USER_BUTTON); |
sype | 46:5658af4e5149 | 17 | |
sype | 46:5658af4e5149 | 18 | DigitalIn ChannelA1(PA_1); |
sype | 46:5658af4e5149 | 19 | DigitalIn ChannelB1(PA_0); |
sype | 46:5658af4e5149 | 20 | DigitalIn ChannelA2(PA_5); |
sype | 46:5658af4e5149 | 21 | DigitalIn ChannelB2(PA_6); |
sype | 46:5658af4e5149 | 22 | |
sype | 41:b5a2fbc20beb | 23 | DigitalOut bleu(PC_5); |
sype | 41:b5a2fbc20beb | 24 | DigitalOut blanc(PC_6); |
sype | 41:b5a2fbc20beb | 25 | DigitalOut rouge(PC_8); |
sype | 41:b5a2fbc20beb | 26 | |
IceTeam | 75:195dd2bb13a3 | 27 | AX12 left_hand(PA_9, PA_10, 3, 250000); |
IceTeam | 75:195dd2bb13a3 | 28 | AX12 right_hand(PA_9, PA_10, 2, 250000); |
sype | 41:b5a2fbc20beb | 29 | |
sype | 41:b5a2fbc20beb | 30 | /* Sharp */ |
sype | 41:b5a2fbc20beb | 31 | AnalogIn capt1(PA_4); |
sype | 41:b5a2fbc20beb | 32 | AnalogIn capt2(PB_0); |
sype | 41:b5a2fbc20beb | 33 | AnalogIn capt3(PC_1); |
sype | 41:b5a2fbc20beb | 34 | AnalogIn capt4(PC_0); |
sype | 41:b5a2fbc20beb | 35 | |
sype | 41:b5a2fbc20beb | 36 | /* Moteurs pas à pas */ |
Jagang | 58:02dc8328975a | 37 | Stepper RMot(NC, PA_8, PC_7, PB_15, 4); |
Jagang | 58:02dc8328975a | 38 | Stepper ZMot(NC, PB_4, PB_10, PB_14, 5); |
Jagang | 58:02dc8328975a | 39 | Stepper LMot(NC, PB_5, PB_3, PB_13, 4); |
sype | 41:b5a2fbc20beb | 40 | /* Fins de course */ |
sype | 41:b5a2fbc20beb | 41 | InterruptIn EndR(PB_15); |
sype | 41:b5a2fbc20beb | 42 | InterruptIn EndZ(PB_14); |
sype | 41:b5a2fbc20beb | 43 | InterruptIn EndL(PB_13); |
sype | 51:1056dd73a748 | 44 | DigitalIn EnR(PB_15); |
sype | 51:1056dd73a748 | 45 | DigitalIn EnZ(PB_14); |
sype | 51:1056dd73a748 | 46 | DigitalIn EnL(PB_13); |
sype | 41:b5a2fbc20beb | 47 | |
sype | 76:a862cb10559c | 48 | ControlleurPince controlleurPince(RMot, ZMot, LMot, EnR, EnZ, EnL, left_hand, right_hand); |
Jagang | 58:02dc8328975a | 49 | |
sype | 0:ad9600df4a70 | 50 | Ticker ticker; |
IceTeam | 47:be4eebf40568 | 51 | //Serial logger(USBTX, USBRX); |
sype | 51:1056dd73a748 | 52 | Serial logger(PA_2, PA_3); |
sype | 46:5658af4e5149 | 53 | RoboClaw roboclaw(ADR, 460800, PA_11, PA_12); |
IceTeam | 39:309f38d1e49c | 54 | Odometry odo(61.7, 61.8, ENTRAXE, 4096, roboclaw); |
sype | 10:ae3178aa94e9 | 55 | |
sype | 51:1056dd73a748 | 56 | int SIMON_i = 0, SIMON_state = 0, SCouleur = VERT, SStart = 0, SSchema = 1; |
sype | 51:1056dd73a748 | 57 | bool SIMON_EL = false, SIMON_EZ = false, SIMON_ER = false, SGauche = false, SDevant = false, SDroite = false; |
sype | 0:ad9600df4a70 | 58 | |
sype | 2:abdf8c6823a1 | 59 | void init(void); |
sype | 46:5658af4e5149 | 60 | void update_main(void); |
sype | 0:ad9600df4a70 | 61 | |
sype | 43:d5aaff7d2bec | 62 | /* Debut du programme */ |
sype | 0:ad9600df4a70 | 63 | int main(void) |
sype | 10:ae3178aa94e9 | 64 | { |
sype | 49:5e2f7323f280 | 65 | roboclaw.ForwardM1(0); |
sype | 49:5e2f7323f280 | 66 | roboclaw.ForwardM2(0); |
sype | 76:a862cb10559c | 67 | roboclaw.ResetEnc(); |
sype | 51:1056dd73a748 | 68 | |
sype | 76:a862cb10559c | 69 | init_interrupt(); |
sype | 76:a862cb10559c | 70 | odo.setPos(110, 1000, 0); |
sype | 76:a862cb10559c | 71 | logger.printf("Depart homologation !\n\r"); |
sype | 76:a862cb10559c | 72 | while(START != 1); |
sype | 76:a862cb10559c | 73 | logger.printf("GO !!\n\r"); |
sype | 76:a862cb10559c | 74 | roboclaw.SpeedAccelDeccelPositionM1M2(accel_angle, vitesse_angle, deccel_angle, 10000, accel_angle, vitesse_angle, deccel_angle, 10000, 1); |
sype | 76:a862cb10559c | 75 | logger.printf("Faut avancer !!\n\r"); |
sype | 76:a862cb10559c | 76 | while(1); |
sype | 76:a862cb10559c | 77 | //odo.GotoXY(1000, 1000); |
sype | 76:a862cb10559c | 78 | //odo.GotoXY(500, 1500); |
sype | 76:a862cb10559c | 79 | |
sype | 2:abdf8c6823a1 | 80 | } |
sype | 2:abdf8c6823a1 | 81 | |
sype | 2:abdf8c6823a1 | 82 | void init(void) |
sype | 0:ad9600df4a70 | 83 | { |
sype | 37:da3a2c781672 | 84 | logger.baud(9600); |
sype | 37:da3a2c781672 | 85 | logger.printf("Hello from main !\n\r"); |
sype | 51:1056dd73a748 | 86 | |
sype | 44:b1fd7489369f | 87 | init_interrupt(); |
sype | 76:a862cb10559c | 88 | |
sype | 76:a862cb10559c | 89 | SCouleur = VERT; |
sype | 76:a862cb10559c | 90 | LEDV = 1; |
sype | 76:a862cb10559c | 91 | LEDR = 0; |
sype | 76:a862cb10559c | 92 | |
sype | 76:a862cb10559c | 93 | odo.setPos(110, 1000, 0); |
sype | 76:a862cb10559c | 94 | roboclaw.ResetEnc(); |
sype | 76:a862cb10559c | 95 | roboclaw.ForwardM1(0); |
sype | 76:a862cb10559c | 96 | roboclaw.ForwardM2(0); |
sype | 76:a862cb10559c | 97 | wait_ms(500); |
sype | 76:a862cb10559c | 98 | depart(); |
sype | 76:a862cb10559c | 99 | wait_ms(100); |
sype | 76:a862cb10559c | 100 | while(START==0); |
IceTeam | 39:309f38d1e49c | 101 | logger.printf("End init\n\r"); |
sype | 0:ad9600df4a70 | 102 | } |
sype | 46:5658af4e5149 | 103 | |
sype | 46:5658af4e5149 | 104 | void update_main(void) |
sype | 46:5658af4e5149 | 105 | { |
sype | 49:5e2f7323f280 | 106 | odo.update_odo(); |
sype | 76:a862cb10559c | 107 | //checkAround(); |
sype | 46:5658af4e5149 | 108 | } |