Révision 117
Ajouté par khmbaye il y a plus de 6 ans
branch/mbaye/Emb_App/programme_principal_etud.c | ||
---|---|---|
#include "carte_io.h"
|
||
#include "carte_m32.h"
|
||
#include <math.h>
|
||
int a;
|
||
unsigned int a; //valeur de l'angle lue
|
||
unsigned int d; //distance telemetre
|
||
unsigned int com; //commande
|
||
|
||
// Potentiometre: lire les registres ad00 et ad01, les valeurs sont sur 10 bits.
|
||
|
||
... | ... | |
LED_J=0;
|
||
dly_tsk(100);*/
|
||
CanFrame comm;
|
||
comm.data.id='T'; comm.data.rtr=0; comm.data.val=120;
|
||
comm.data.id='T'; comm.data.rtr=0; comm.data.val=45;
|
||
snd_dtq (CanTx,comm.msg);
|
||
dly_tsk(100);
|
||
dly_tsk(100);
|
||
|
||
comm.data.id='R'; comm.data.rtr=1;
|
||
snd_dtq (CanTx,comm.msg);
|
||
a= periph[ADDR('R')].val;
|
||
if(a >90)
|
||
dly_tsk(100);
|
||
|
||
comm.data.id='V'; comm.data.rtr=0; comm.data.val=35;
|
||
snd_dtq (CanTx,comm.msg);
|
||
dly_tsk(100);
|
||
|
||
comm.data.id='U'; comm.data.rtr=1;
|
||
snd_dtq (CanTx,comm.msg);
|
||
d= periph[ADDR('R')].val;
|
||
dly_tsk(100);
|
||
|
||
comm.data.id='T'; comm.data.rtr=0; comm.data.val=com= 1.2*(45-a);
|
||
snd_dtq (CanTx,comm.msg);
|
||
dly_tsk(100);
|
||
|
||
if(d > 0x002d)
|
||
{
|
||
comm.data.id='T'; comm.data.rtr=0; comm.data.val=0;
|
||
comm.data.id='D'; comm.data.rtr=0; comm.data.val=-45;
|
||
snd_dtq (CanTx,comm.msg);
|
||
}
|
||
}
|
||
|
||
dly_tsk(100);
|
||
}
|
||
|
||
}
|
||
... | ... | |
LED_V=!LED_V;
|
||
}
|
||
|
||
/*void envoi_commande()
|
||
{
|
||
CanFrame comm;
|
||
comm.data.id='T'; comm.data.rtr=0; comm.data.val=45;
|
||
snd_dtq (CanTx,comm.msg);
|
||
}*/
|
||
/*void reception_valeur()
|
||
{
|
||
CanFrame demande;
|
||
CanFrame reponse;
|
||
|
||
demande.data.id='R'; demande.data.rtr=1;
|
||
snd_dtq (CanTx,demande.msg); // Interrogation du peripherique
|
||
rcv_dtq (CanRx,&reponse.msg); // Attente de la reponse
|
||
a=reponse.data.val; //contient la valeur de retour du simulateur.
|
||
}*/
|
Formats disponibles : Unified diff
Asservissement non réussi
trouver distance pour tourner