CRAC Team / AX12_PR

Fork of test_carteAToutFaire_PR by CRAC Team

Committer:
EdouardGE1
Date:
Sat May 20 10:14:28 2017 +0000
Revision:
4:5cf096b1c65d
Parent:
3:0175a071dd65
Pour clement

Who changed what in which revision?

UserRevisionLine numberNew contents of line
matthieuvignon 2:9d280856a536 1 #include "all_includes.h"
matthieuvignon 2:9d280856a536 2
matthieuvignon 2:9d280856a536 3 Timer t;
matthieuvignon 2:9d280856a536 4 Ticker flipper;
matthieuvignon 2:9d280856a536 5
matthieuvignon 2:9d280856a536 6 CAN can(p30,p29); // Rx&Tx pour le CAN
matthieuvignon 2:9d280856a536 7 CANMessage msgRxBuffer[SIZE_FIFO]; // buffer en réception pour le CAN
matthieuvignon 2:9d280856a536 8
matthieuvignon 2:9d280856a536 9 Serial pc(USBTX, USBRX);
matthieuvignon 2:9d280856a536 10
matthieuvignon 2:9d280856a536 11 DigitalOut led(LED1);
matthieuvignon 2:9d280856a536 12 DigitalOut led2(LED2);
matthieuvignon 2:9d280856a536 13
EdouardGE1 3:0175a071dd65 14 unsigned char EtatAx12, ActionAx12;
EdouardGE1 3:0175a071dd65 15 unsigned char action_a_effectuer;
matthieuvignon 2:9d280856a536 16
ClementBreteau 0:7737d7573e3b 17
ClementBreteau 0:7737d7573e3b 18 /*
ClementBreteau 0:7737d7573e3b 19 DigitalIn IO1(p23);
ClementBreteau 0:7737d7573e3b 20 DigitalIn IO2(p24);
ClementBreteau 0:7737d7573e3b 21 DigitalIn IO3(p25);
ClementBreteau 0:7737d7573e3b 22 DigitalIn IO4(p26);
ClementBreteau 0:7737d7573e3b 23
ClementBreteau 0:7737d7573e3b 24 AnalogIn A_in1(p15);
ClementBreteau 0:7737d7573e3b 25 AnalogIn A_in2(p16);
ClementBreteau 0:7737d7573e3b 26 AnalogIn A_in3(p17);
ClementBreteau 0:7737d7573e3b 27 AnalogIn A_in4(p18);
ClementBreteau 0:7737d7573e3b 28 AnalogIn A_in5(p19);
ClementBreteau 0:7737d7573e3b 29 AnalogIn A_in6(p20);
ClementBreteau 0:7737d7573e3b 30
ClementBreteau 0:7737d7573e3b 31 PwmOut IRL_1(p21);
ClementBreteau 0:7737d7573e3b 32 PwmOut IRL_2(p22);
ClementBreteau 0:7737d7573e3b 33 */
ClementBreteau 0:7737d7573e3b 34
ClementBreteau 1:f3f702086a30 35
ClementBreteau 0:7737d7573e3b 36
matthieuvignon 2:9d280856a536 37
matthieuvignon 2:9d280856a536 38 int main() {
matthieuvignon 2:9d280856a536 39
matthieuvignon 2:9d280856a536 40 can.frequency(1000000); // fréquence de travail 1Mbit/s
matthieuvignon 2:9d280856a536 41 can.attach(&canRx_ISR); // création de l'interrupt attachée à la réception sur le CAN
matthieuvignon 2:9d280856a536 42
matthieuvignon 2:9d280856a536 43 // message CAN autorise a declencher l'interruption
matthieuvignon 2:9d280856a536 44 CAN2_wrFilter(SERVO_AX12_ACTION);
matthieuvignon 2:9d280856a536 45 CAN2_wrFilter(SERVO_AX12_ACK);
matthieuvignon 2:9d280856a536 46 CAN2_wrFilter(SERVO_AX12_END);
matthieuvignon 2:9d280856a536 47 CAN2_wrFilter(CHECK_AX12);
EdouardGE1 3:0175a071dd65 48
matthieuvignon 2:9d280856a536 49 initialisation_AX12();
EdouardGE1 3:0175a071dd65 50
EdouardGE1 3:0175a071dd65 51 //PINCE CENTRALE
EdouardGE1 3:0175a071dd65 52 AX12_automate(AX12_PINCE_CENTRALE_POSITION_INITIALE);
EdouardGE1 3:0175a071dd65 53 wait(1);
EdouardGE1 3:0175a071dd65 54 AX12_automate(AX12_PINCE_CENTRALE_PREPARATION_PRISE);
EdouardGE1 3:0175a071dd65 55 wait(1);
EdouardGE1 3:0175a071dd65 56 AX12_automate(AX12_PINCE_CENTRALE_PRISE_MODULE);
EdouardGE1 3:0175a071dd65 57 wait(1);
EdouardGE1 3:0175a071dd65 58 AX12_automate(AX12_PINCE_CENTRALE_STOCKAGE_HAUT);
EdouardGE1 3:0175a071dd65 59 wait(1);
EdouardGE1 3:0175a071dd65 60 AX12_automate(AX12_PINCE_CENTRALE_PREPARATION_PRISE);
EdouardGE1 3:0175a071dd65 61 wait(1);
EdouardGE1 3:0175a071dd65 62 AX12_automate(AX12_PINCE_CENTRALE_PRISE_MODULE);
EdouardGE1 3:0175a071dd65 63 wait(1);
EdouardGE1 3:0175a071dd65 64 AX12_automate(AX12_PINCE_CENTRALE_STOCKAGE_BAS);
EdouardGE1 3:0175a071dd65 65 wait(2);
EdouardGE1 3:0175a071dd65 66 AX12_automate(AX12_PINCE_CENTRALE_PREPARATION_DEPOT);
EdouardGE1 3:0175a071dd65 67 wait(1);
EdouardGE1 3:0175a071dd65 68 AX12_automate(AX12_PINCE_CENTRALE_DEPOSER);
EdouardGE1 3:0175a071dd65 69 wait(1);
EdouardGE1 3:0175a071dd65 70 AX12_automate(AX12_PINCE_CENTRALE_DEPOT_HAUT);
EdouardGE1 3:0175a071dd65 71 wait(1);
EdouardGE1 3:0175a071dd65 72 AX12_automate(AX12_PINCE_CENTRALE_PREPARATION_DEPOT);
EdouardGE1 3:0175a071dd65 73 wait(1);
EdouardGE1 3:0175a071dd65 74 AX12_automate(AX12_PINCE_CENTRALE_DEPOSER);
EdouardGE1 3:0175a071dd65 75 wait(1);
EdouardGE1 4:5cf096b1c65d 76
matthieuvignon 2:9d280856a536 77
EdouardGE1 3:0175a071dd65 78 //BRAS GAUCHE
EdouardGE1 3:0175a071dd65 79 /*
EdouardGE1 3:0175a071dd65 80 AX12_automate(AX12_GAUCHE_CROC_OUVERT);
EdouardGE1 3:0175a071dd65 81 wait(2);
EdouardGE1 3:0175a071dd65 82 AX12_automate(AX12_GAUCHE_CROC_FERME);
EdouardGE1 3:0175a071dd65 83 wait(3);
EdouardGE1 3:0175a071dd65 84 AX12_automate(AX12_GAUCHE_CROC_OUVERT);
EdouardGE1 3:0175a071dd65 85 wait(2);
EdouardGE1 3:0175a071dd65 86 AX12_automate(AX12_TOURNANTE_GAUCHE_POSITION_INITIALE);
EdouardGE1 3:0175a071dd65 87 wait(2);
EdouardGE1 3:0175a071dd65 88 AX12_automate(AX12_TOURNANTE_GAUCHE_PREPARATION);
EdouardGE1 3:0175a071dd65 89 wait(2);
EdouardGE1 3:0175a071dd65 90 AX12_automate(AX12_TOURNANTE_GAUCHE_MODULE);
EdouardGE1 3:0175a071dd65 91 wait(2);
EdouardGE1 3:0175a071dd65 92 */
matthieuvignon 2:9d280856a536 93
EdouardGE1 3:0175a071dd65 94 /*
EdouardGE1 3:0175a071dd65 95 //BRAS DROIT
EdouardGE1 3:0175a071dd65 96 AX12_automate(AX12_DROIT_CROC_OUVERT);
EdouardGE1 3:0175a071dd65 97 wait(2);
EdouardGE1 3:0175a071dd65 98 AX12_automate(AX12_DROIT_CROC_FERME);
EdouardGE1 3:0175a071dd65 99 wait(3);
EdouardGE1 3:0175a071dd65 100 AX12_automate(AX12_DROIT_CROC_OUVERT);
EdouardGE1 3:0175a071dd65 101 wait(2);
EdouardGE1 3:0175a071dd65 102 AX12_automate(AX12_TOURNANTE_DROIT_POSITION_INITIALE);
EdouardGE1 3:0175a071dd65 103 wait(2);
EdouardGE1 3:0175a071dd65 104 AX12_automate(AX12_TOURNANTE_DROIT_PREPARATION);
EdouardGE1 3:0175a071dd65 105 wait(2);
EdouardGE1 3:0175a071dd65 106 AX12_automate(AX12_TOURNANTE_DROIT_MODULE);
EdouardGE1 3:0175a071dd65 107 wait(2);
EdouardGE1 3:0175a071dd65 108 */
matthieuvignon 2:9d280856a536 109
EdouardGE1 4:5cf096b1c65d 110 /*
EdouardGE1 3:0175a071dd65 111 AX12_automate(AX12_DROIT_CROC_INITIALE);
EdouardGE1 3:0175a071dd65 112 wait(2);
EdouardGE1 3:0175a071dd65 113 AX12_automate(AX12_GAUCHE_CROC_INITIALE);
EdouardGE1 3:0175a071dd65 114 wait(3);
EdouardGE1 4:5cf096b1c65d 115 */
EdouardGE1 3:0175a071dd65 116
EdouardGE1 3:0175a071dd65 117
matthieuvignon 2:9d280856a536 118 while(1) {
EdouardGE1 4:5cf096b1c65d 119 //AX12_automate(AX12_POSITION);
EdouardGE1 3:0175a071dd65 120
matthieuvignon 2:9d280856a536 121 led = !led;
matthieuvignon 2:9d280856a536 122 canProcessRx();//Traitement des trames CAN en attente
matthieuvignon 2:9d280856a536 123
matthieuvignon 2:9d280856a536 124
matthieuvignon 2:9d280856a536 125 if (action_a_effectuer==1) {
matthieuvignon 2:9d280856a536 126
matthieuvignon 2:9d280856a536 127 action_a_effectuer=0;
matthieuvignon 2:9d280856a536 128
matthieuvignon 2:9d280856a536 129 if (ActionAx12==1){
EdouardGE1 3:0175a071dd65 130 AX12_automate(EtatAx12);
matthieuvignon 2:9d280856a536 131 ActionAx12=0;
matthieuvignon 2:9d280856a536 132 }
matthieuvignon 2:9d280856a536 133
matthieuvignon 2:9d280856a536 134 }
ClementBreteau 0:7737d7573e3b 135 }
EdouardGE1 3:0175a071dd65 136
ClementBreteau 0:7737d7573e3b 137 }
ClementBreteau 0:7737d7573e3b 138