Code pour la coupe 2026 - ajout de l'inversion de trajectoire (non utilisé à la coupe)
This commit is contained in:
parent
a37f6fb18f
commit
898dd0a153
@ -140,6 +140,7 @@ Les adresses en **gras** sont celles pour lesquelles des `#define` existent qui
|
||||
| 0x5F | RW | Flottant 32 bits | Acceleration trajectoire |
|
||||
| 0x60 | RW | Flottant 32 bits | Acceleration trajectoire |
|
||||
| 0x61 | RW | Flottant 32 bits | Acceleration trajectoire |
|
||||
| **0x62** | RW | uint8_t | Commande inversion trajectoire |
|
||||
| **0x80** | R | flottant 32 bits | Position X en mm |
|
||||
| 0x81 | R | flottant 32 bits | Position X en mm |
|
||||
| 0x82 | R | flottant 32 bits | Position X en mm |
|
||||
|
||||
17
main.c
17
main.c
@ -77,7 +77,7 @@ void main(void)
|
||||
Trajet_init(get_identifiant());
|
||||
//i2c_maitre_init();
|
||||
|
||||
Servomoteur_Init();
|
||||
//Servomoteur_Init();
|
||||
|
||||
communication_init();
|
||||
|
||||
@ -118,7 +118,8 @@ void main(void)
|
||||
enum etat_trajet_t etat_trajet=TRAJET_EN_COURS;
|
||||
struct trajectoire_t trajectoire;
|
||||
uint8_t mode=0;
|
||||
Trajet_config(TRAJECT_CONFIG_STD);
|
||||
//Trajet_config(TRAJECT_CONFIG_STD);
|
||||
Trajet_config(600, 300);
|
||||
|
||||
while(1){
|
||||
|
||||
@ -153,6 +154,8 @@ void main(void)
|
||||
mise_a_jour_vitesse_robot = false;
|
||||
mise_a_jour_trajectoire = false;
|
||||
mise_a_jour_config_trajet = false;
|
||||
mise_a_jour_cde_inv_traj = false;
|
||||
|
||||
|
||||
// Copie des données dans la mémoire d'échange
|
||||
// Et actualisation des variables "mise_a_jour_..."
|
||||
@ -214,6 +217,16 @@ void main(void)
|
||||
|
||||
Trajet_config(msg_propulsion_config_trajet.vitesse_mm_s, msg_propulsion_config_trajet.acceleration_mm_ss);
|
||||
}
|
||||
|
||||
if(mise_a_jour_cde_inv_traj){
|
||||
uint8_t cde_inv_traj;
|
||||
get_données_reçues(&cde_inv_traj, sizeof(cde_inv_traj), REG_PROPULSION_CDE_INV_TRAJ);
|
||||
if(cde_inv_traj == 1){
|
||||
Trajet_inverse();
|
||||
cde_inv_traj = 0;
|
||||
mise_données_dans_échange(&cde_inv_traj, sizeof(cde_inv_traj), REG_PROPULSION_CDE_INV_TRAJ);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -12,6 +12,7 @@ bool mise_a_jour_vitesse_roues = false;
|
||||
bool mise_a_jour_vitesse_robot = false;
|
||||
bool mise_a_jour_trajectoire = false;
|
||||
bool mise_a_jour_config_trajet = false;
|
||||
bool mise_a_jour_cde_inv_traj = false;
|
||||
|
||||
void get_données_reçues(uint8_t * dst, unsigned int taille, unsigned int registre){
|
||||
memcpy(dst, &(memoire_echange[registre]), taille);
|
||||
@ -46,6 +47,9 @@ void écriture_données(unsigned int adresse, uint8_t donnée){
|
||||
}else if(adresse <= 0x61){
|
||||
// Trajet config
|
||||
mise_a_jour_config_trajet = true;
|
||||
}else if(adresse <= 0x62){
|
||||
// Trajet config
|
||||
mise_a_jour_cde_inv_traj = true;
|
||||
}else {
|
||||
// Hors mémoire
|
||||
return;
|
||||
|
||||
@ -14,3 +14,4 @@ extern bool mise_a_jour_vitesse_roues;
|
||||
extern bool mise_a_jour_vitesse_robot;
|
||||
extern bool mise_a_jour_trajectoire;
|
||||
extern bool mise_a_jour_config_trajet;
|
||||
extern bool mise_a_jour_cde_inv_traj;
|
||||
|
||||
@ -12,6 +12,7 @@
|
||||
#define REG_PROPULSION_VITESSE_ROBOT 0x1A
|
||||
#define REG_PROPULSION_TRAJECTOIRE 0x22
|
||||
#define REG_PROPULSION_CONFIG_TRAJET 0x5A
|
||||
#define REG_PROPULSION_CDE_INV_TRAJ 0x62
|
||||
#define REG_PROPULSION_ABSCISSE 0x8C
|
||||
#define REG_PROPULSION_POSITION_CONSIGNE 0x90
|
||||
#define REG_PROPULSION_VITESSE_ROUES_lecture 0x98
|
||||
|
||||
Loading…
Reference in New Issue
Block a user