CRAC Team / Mbed 2 deprecated Electron

Dependencies:   mbed

main.cpp

Committer:
AdrienSalle
Date:
2019-05-24
Revision:
3:43dac789686d
Parent:
2:c46e5c0f09dc
Child:
4:3bff5791d6d3

File content as of revision 3:43dac789686d:

#include "mbed.h"

Serial pc(USBTX, USBRX,115200);
Serial BT(PA_9,PA_10,115200);


DigitalIn depart(A1);
DigitalIn interrupteur(D7);
DigitalOut led(LED1);

DigitalOut sens(D8);
PwmOut moteur(D9);

int cas=0;

int main()
{
   int connect = 0;
    wait_ms(1000);
    DigitalOut myled(LED1);
    
    BT.printf("$$$");           //Passage en mode commande
        wait_ms(10000);               //
        BT.printf("C\r");           //Demande de connexion
        wait_ms(1000);               //
        
    /*while(connect != 1) { 
        BT.printf("$$$");           //Passage en mode commande
        wait_ms(1000);               //
        BT.printf("C\r");           //Demande de connexion
        wait_ms(1000);               //
        BT.printf("O");             //Test de connection
        if (BT.readable()) {        //
         if (BT.getc() == 'O') { //Réponse de l'expérience reçue ?
               connect = 1;
               BT.printf("---\r");
           }
    }
    }    */
    
        while(1) {

            switch (cas) {
                case 0: {           //Électron immobile
                    pc.printf("case 0\n\r");                
                    if(BT.readable()) {         //Réception d'instruction de l'expérience
                        if(BT.getc() == 'L') cas = 1; // passage à l'état 1
                    }
                    break;

                }

                case 1: {           //Électron en mouvement
                    pc.printf("cas 2 LANCEMENT\r");     
                    led = 1;
                    sens = 1;
                    moteur.pulsewidth_ms(10);
                    if (interrupteur == 0) {
                        cas = 2;
                    }
                    break;

                }

                case 2: {           //Arrêt de l'électron
                    pc.printf("case 2\n\r");
                    led = 0;
                    moteur.pulsewidth_ms(0);
                    break;

                }
            }
        }
    }