Projet

Général

Profil

« Précédent | Suivant » 

Révision 245

Ajouté par piduvernoi il y a plus de 6 ans

programme passant la piste verte et bleue

Voir les différences:

branch/duvernois/Emb_App/programme_principal_etud.c
while(1)
{
demande.data.id='R';
demande.data.id='U';
demande.data.rtr=1;
periph[ADDR('U')].ev=0x01;
snd_dtq(CanTx,demande.msg);
dly_tsk(100);
dly_tsk(5);
wai_flg(ev_periph,0x01,TWF_ANDW, &flag);
var=periph[ADDR('U')].val;
rotroue=(var-720);
comm.data.id='D'; comm.data.rtr=0; comm.data.val=rotroue;
snd_dtq (CanTx,comm.msg);
rotroue=(var-710);
if (rotroue <= 150 && rotroue >= -150)
{
comm.data.id='D'; comm.data.rtr=0; comm.data.val=rotroue;
snd_dtq (CanTx,comm.msg);
}
else
{
comm.data.id='D'; comm.data.rtr=0; comm.data.val=0;
snd_dtq (CanTx,comm.msg);
}
}
}
......
demande.data.rtr=1;
periph[ADDR('R')].ev=0x01;
snd_dtq(CanTx,demande.msg);
dly_tsk(100);
dly_tsk(10);
wai_flg(ev_periph,0x01,TWF_ANDW, &flag);
alpha=periph[ADDR('R')].val;
rottourelle=(consignetourelle-alpha);
comm.data.id='T'; comm.data.rtr=0; comm.data.val=rottourelle;
snd_dtq (CanTx,comm.msg);
......
void vitesse()
{
int consignevitesse=10;
int consignevitesse=20;
CanFrame comm;
CanFrame demande;
comm.data.id='V'; comm.data.rtr=0; comm.data.val=consignevitesse;
snd_dtq (CanTx,comm.msg);
dly_tsk(10);
dly_tsk(100);
}
......
sta_cyc(ID_acqui);
sta_tsk(ID_periph_rx);
sta_tsk(ID_tourelle);
dly_tsk(1000);
sta_tsk(ID_position);
dly_tsk(1000);
sta_tsk(ID_vitesse);
branch/duvernois/Emb_App/conf_noyau.cfg
name = ID_tourelle;
stack_size = 256;
stack_section = stack;
priority = 1;
priority = 5;
initial_start = OFF;
exinf = 0x0;
};

Formats disponibles : Unified diff