Freescale_Cachan / Mbed 2 deprecated Programme_course_base

Dependencies:   MMA8451Q mbed xbee_lib

Fork of Programme_course by Freescale_Cachan

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers xbeemoi.cpp Source File

xbeemoi.cpp

00001 /////////////////////* Fichier des fonctions Xbee adaptées à la course 2017 *//////////////////////////
00002 
00003 #include "Mlib.h"
00004 
00005 
00006 void Xbee_init()
00007 {
00008 
00009     // reset the xbees (at least 200ns)
00010     rst1 = 0;
00011     wait_ms(1);
00012     rst1 = 1;
00013     wait_ms(1);
00014 }
00015 
00016 int Xbee_receive()
00017 {
00018     int data3=0;
00019     char receiveData[NB_CARAC];
00020 
00021     xbee1.RecieveData(receiveData,NB_CARAC);
00022 
00023     data3=atoi(receiveData);
00024     pc.printf("Recu:%s,%d \n",receiveData,data3);
00025 
00026     return data3;
00027 }
00028 
00029 void Xbee_send(int data)
00030 {
00031     char data0=0;
00032     data0=char(data);
00033 
00034     xbee1.SendData(&data0);
00035 }
00036 
00037 /* fonction qui permet d'initialiser les valeurs de VIT KP KI et KD via Xbee*/
00038 
00039 int Get_values_Xbee()
00040 {
00041     int param =0;
00042 
00043     pc.printf("en attente\n");
00044 
00045     param= Xbee_receive();
00046 
00047     switch(param) {
00048 
00049         case VIT1:
00050             pc.printf("en attente de la valeur de VIT\n");
00051             if(Xbee_receive()!=0) {
00052                 VIT=Xbee_receive();
00053                 pc.printf("OK!!\n");
00054             }
00055 
00056         case KP1:
00057             pc.printf("en attente de la valeur de KP\n");
00058             if(Xbee_receive()!=0) {
00059                 KP=Xbee_receive();
00060                 pc.printf("OK!!\n");
00061             }
00062 
00063         case KD1:
00064             pc.printf("en attente de la valeur de KD\n");
00065             if(Xbee_receive()!=0) {
00066                 KD=Xbee_receive();
00067                 pc.printf("OK!!\n");
00068             }
00069 
00070         case KI1:
00071             pc.printf("en attente de la valeur de KI\n");
00072             if(Xbee_receive()!=0) {
00073                 KI=Xbee_receive();
00074                 pc.printf("OK!!\n");
00075             }
00076 
00077     }
00078 
00079 }