From e1a662d9e78dbcc81337f29dea6d17e509b9d81b Mon Sep 17 00:00:00 2001 From: Samuel Date: Mon, 17 Apr 2023 16:36:54 +0200 Subject: [PATCH] =?UTF-8?q?Fonction=20pour=20envoyer=20les=20couleurs=20au?= =?UTF-8?q?=20mat=20balise=20+=20fonctions=20de=20test=20associ=C3=A9es?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Test_strategie.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/Test_strategie.c b/Test_strategie.c index baefde7..850f12b 100644 --- a/Test_strategie.c +++ b/Test_strategie.c @@ -439,17 +439,45 @@ int test_accostage(){ int test_tirette_et_couleur(){ int lettre; uint couleur, tirette; + enum couleur_t couleur_old; + couleur_old = COULEUR_INCONNUE; printf("Tirette et couleur\n"); + i2c_maitre_init(); stdio_flush(); + tirette= attente_tirette(); do{ + i2c_gestion(i2c0); + i2c_annexe_gestion(); + printf(">tirette:%d\n", attente_tirette()); if(lire_couleur() == COULEUR_VERT){ printf(">couleur:Vert|t\n"); }else{ printf(">couleur:Bleu|t\n"); } + + if(attente_tirette()){ + if(couleur_old != lire_couleur() || tirette != attente_tirette()){ + tirette = attente_tirette(); + couleur_old = lire_couleur(); + if(couleur_old == COULEUR_VERT){ + // Tout vert + i2c_annexe_couleur_balise(0b00011100, 0x0FFF); + }else{ + // Tout bleu + i2c_annexe_couleur_balise(0b00000011, 0x0FFF); + } + } + }else{ + if(tirette != attente_tirette()){ + tirette = attente_tirette(); + // Tout libre + i2c_annexe_couleur_balise(0, 0x00); + } + } + sleep_ms(10); lettre = getchar_timeout_us(0);