Révision 196
Ajouté par ninoisette il y a plus de 6 ans
branch/noisette/Emb_App/programme_principal_etud.c | ||
---|---|---|
//'I'/73/Ox49 : D?finition du nom du v?hicule. Doit d?buter par le caract?re '#' et entraine le chargement de la configuration de piste
|
||
// correspondant au nom du v?hicule si le nom se termine par '*'
|
||
unsigned short alpha;
|
||
|
||
int consigne;
|
||
unsigned short k;
|
||
int erreur;
|
||
|
||
void main()
|
||
{
|
||
... | ... | |
LED_J=0;
|
||
dly_tsk(100);
|
||
|
||
comm.data.id= 'T';
|
||
/*comm.data.id= 'T';
|
||
comm.data.rtr=0;
|
||
comm.data.val=100;
|
||
snd_dtq(CanTx, comm.msg);
|
||
dly_tsk(10);
|
||
/* comm.data.id= 'T';
|
||
comm.data.id= 'T';
|
||
comm.data.rtr=0;
|
||
comm.data.val=0;
|
||
snd_dtq(CanTx, comm.msg);*/
|
||
... | ... | |
rcv_dtq(CanRx, &reponse.msg);
|
||
alpha=reponse.data.val;
|
||
|
||
if (alpha>450) {
|
||
if (alpha !=450) {
|
||
comm.data.id= 'T';
|
||
comm.data.rtr=0;
|
||
comm.data.val=-21;
|
||
snd_dtq(CanTx, comm.msg);}
|
||
if (alpha ==451) {
|
||
while(1){
|
||
comm.data.id= 'T';
|
||
comm.data.rtr=0;
|
||
comm.data.val=0;
|
||
snd_dtq(CanTx, comm.msg);}
|
||
}
|
||
}
|
||
comm.data.id= 'T';
|
||
comm.data.rtr=0;
|
||
comm.data.val=asserv(450);
|
||
snd_dtq(CanTx, comm.msg);
|
||
dly_tsk(10);
|
||
|
||
|
||
}
|
||
}
|
||
|
||
... | ... | |
LED_V=!LED_V;
|
||
}
|
||
|
||
/*void asserv()
|
||
int asserv(consigne)
|
||
{
|
||
if (alpha != consigne){
|
||
erreur= consigne - alpha;
|
||
*/
|
||
k=1;
|
||
erreur = consigne - alpha;
|
||
consigne = k*erreur;
|
||
return consigne;
|
||
}
|
||
|
||
|
Formats disponibles : Unified diff
Fonction asservissement télémètre en place