Projet

Général

Profil

« Précédent | Suivant » 

Révision 475

Ajouté par piduvernoi il y a plus de 6 ans

Programme final avec arret 3 tours

Voir les différences:

branch/duvernois/Emb_App/SessionM32C_E8a_system.ini
[Target]
M32C E8a SYSTEM=Renesas Communications
[USER_DATA]
RESET=ff0020
RESET=ff0022
branch/duvernois/Emb_App/programme_principal_etud.c
int mask= 0x00FF;
int maskdepart= 0x8000;
unsigned int Go;
int cpt=0;
int cpt1=0;
int cpt2=0;
void position ()
{
......
void vitesse()
{
CanFrame comm;
CanFrame demande;
UINT flag;
while(1)
{
demande.data.id='C';
demande.data.rtr=1;
periph[ADDR('C')].ev=0x01;
snd_dtq(CanTx,demande.msg);
dly_tsk(10);
wai_flg(ev_periph,0x01,TWF_ANDW, &flag);
valcapt=periph[ADDR('C')].val;
if (valcapt==0x5601)
{
cpt1=cpt1+1;
}
else if (valcapt==0x4a01)
{
if (cpt1!=0)
{
cpt2=cpt2+1;
cpt1=0;
}
}
if (cpt2==3 && cpt1!=0)
{
Valvitesse=0;
}
consignevitesse=Valvitesse;
comm.data.id='V';
comm.data.rtr=0;
comm.data.val=consignevitesse;
snd_dtq (CanTx,comm.msg);
dly_tsk(200);
}
......
if (Nump == 1 || Nump == 5)
{
Valvitesse=45;
Valvitesse=40;
consignetele=1200;
consigneposition = 715;
}
......
while(1)
{
while(Go==32768)
{
sta_tsk(ID_vitesse);
Go=1;
}
dly_tsk(250);
while(Go==32768)
{
sta_tsk(ID_vitesse);
Go=1;
}
dly_tsk(50);
}
}

Formats disponibles : Unified diff