Projet

Général

Profil

« Précédent | Suivant » 

Révision 159

Ajouté par maantourou il y a plus de 6 ans

commit fin de la séance

Voir les différences:

branch/Antourou/Emb_App/programme_principal_etud.c
#include "carte_io.h"
#include "carte_m32.h"
#include <math.h>
unsigned int vf; // valeur de l'angle renvoy?e par le simulateur
unsigned int vf;
// CanFrame comm;
// CanFrame requete;
// UINT flag;//FLGPTN flag
// short position, distance; // valeur de l'angle renvoy?e par le simulateur
////////////
// Potentiometre: lire les registres ad00 et ad01, les valeurs sont sur 10 bits.
// Clavier: vrcv_dtq(QdmTouche,&code_touche) pour lire la derniere touche appuyee sur le clavier.
......
void main()
{
CanFrame comm;
CanFrame requete;
UINT flag;//FLGPTN flag
short position;
ports_mcu();
lcd_init();
periph_init();
......
LED_J=0;
dly_tsk(100);
// commander la vitesse de rotation de la tourelle
}
}
void acqui()
{
LED_V=!LED_V;
}
void vitessedelatourelle( int vit)
{// commander la vitesse de rotation de la tourelle
comm.data.id='T';
comm.data.rtr=0;
comm.data.val=450;
comm.data.val= vit;
snd_dtq (CanTx,comm.msg);
dly_tsk(100);
}
void position de la tourelle( position)// a revoir
{
//Lecture de la position de la tourelle
requete.data.id='R';
// Lecture de la requ?te
......
snd_dtq(CanTx,requete.msg);
wai_flg (ev_periph, 0x01, TWF_ANDW, &flag);
position=periph[ADDR('R')].val;
}
}
void acqui()
{
LED_V=!LED_V;
}
}
// fonction pour calculer de la distance
req.data.id='U';// U distance mesur?e par le t?lem?tre
req.data.rtr=1;
periph[ADDR('U')].ev=0x01;
snd_dtq(CanTx, req.msg);
wai_flg (ev_periph, 0x01, TWF_ANDpW, &flag);//Attente de la r?ponse
distance=periph[ADDR('U')].val;

Formats disponibles : Unified diff