Projet

Général

Profil

« Précédent | Suivant » 

Révision 433

Ajouté par sevilain1 il y a plus de 6 ans

Ajout du démarrage au feu vert, Ajout de l'arrêt du véhicule et stoppe les communications du véhicule après 3 tours.

Voir les différences:

branch/vilain_sebastien/Emb_App/SessionM32C_E8a_system.ini
[Target]
M32C E8a SYSTEM=Renesas Communications
[USER_DATA]
RESET=ff0028
RESET=ff002e
branch/vilain_sebastien/Emb_App/programme_principal_etud.c
short lecture_telemetre();
short lecture_capteur();
void commande_vitesse(short vitesse);
void init_vitesse();
//void init_vitesse();
int demarrage = 1;
int num_tour = 0;
int nouveau_tour;
int ext = 0;
short consigne_angle = 450;
short consigne_telemetre = 705;
FLGPTN flag;
......
sta_tsk(ID_commande_capteur);
sta_tsk(ID_course);
init_vitesse();
// init_vitesse();
while(1)
while(num_tour < 3)
{
dly_tsk(100);
}
dly_tsk(1000);
}
ext = 1;
dly_tsk(50);
commande_vitesse(0);
}
void acqui()
......
{
erreur = K*(consigne_angle-lecture_angle());
commande_tourelle(erreur);
if(ext == 1)
{
ext_tsk();
}
dly_tsk(25);
}
}
......
angle_roues = erreur;
commande_angle_roues(erreur);
}
if(ext == 1)
{
ext_tsk();
}
dly_tsk(5);
}
}
......
snd_dtq(CanTx, comm.msg);
}
void init_vitesse()
/*void init_vitesse()
{
dly_tsk(3000);
sta_tsk(ID_vitesse_virage);
}
}*/
void vitesse_virage()
{
......
commande_vitesse(60);
LED_R = 0;
}
if(ext == 1)
{
ext_tsk();
}
dly_tsk(100);
}
dly_tsk(100);
}
short lecture_capteur()
......
}
if (lecture == 0x7604) //vert id 04
{
vit_spe = 0;
vit_spe = 0;;
}
if (lecture == 0x7605) //vert id 05
{
......
telemetre_a_droite = 0;
K1 = 2.9;
}
if ((lecture == 0x5605) && (nouveau_tour == 1)) // d?part
{
num_tour++;
nouveau_tour = 0;
}
if (lecture != 0x5605)
{
nouveau_tour = 1;
}
if(ext == 1)
{
ext_tsk();
}
dly_tsk(100);
}
}
......
lecture_M = lecture_course();
num_piste = (lecture_M & 0x00FF);
etat_feu = ((lecture_M & 0x8000) >> 15);
if (etat_feu == 1 && demarrage == 1)
{
demarrage = 0;
sta_tsk(ID_vitesse_virage);
}
if(ext == 1)
{
ext_tsk();
}
dly_tsk(100);
}
}
branch/vilain_sebastien/Emb_App/conf_noyau.cfg
//
// kernel.cfg : building file for MR308 Ver.4.00
//
// Generated by M3T-MR308 GUI Configurator at 2018/12/20 16:51:02
// Generated by M3T-MR308 GUI Configurator at 2019/01/09 8:50:26
//
////////////////////////////////////////////////////////////////////////////////
// system definition
system{
stack_size = 256;
priority = 10;
priority = 11;
system_IPL = 4;
message_pri = 1;
timeout = YES;
......
name = ID_main;
stack_size = 512;
stack_section = stack;
priority = 8;
priority = 11;
initial_start = ON;
exinf = 0x0;
};

Formats disponibles : Unified diff