#include "main.hpp" #include "autom.cpp" #include #include int marche_precedent = 0; int marche_frontmontant = 0; int arret_precedent = 1; int arret_frontdescedant = 0; int b0_precedent = 0; int b0_frontmontant = 0; int b1_precedent = 0; int b1_frontmontant = 0; int b2_precedent = 0; int b2_frontmontant = 0; int b3_precedent = 0; int b3_frontmontant = 0; int b4_precedent = 0; int b4_frontmontant = 0; int b5_precedent = 0; int b5_frontmontant = 0; int b6_precedent = 0; int b6_frontmontant = 0; int b7_precedent = 0; int b7_frontmontant = 0; int main() { mqtt_open(&client); std::atomic running{true}; while (running) { std::this_thread::sleep_for(std::chrono::seconds(1)); } mqtt_close(); return 0; } void process() { // Détection du front montant (état courant supérieur à l'état précédent) b0_frontmontant = b0 > b0_precedent; b1_frontmontant = b1 > b1_precedent; b2_frontmontant = b2 > b2_precedent; b3_frontmontant = b3 > b3_precedent; b4_frontmontant = b4 > b4_precedent; b5_frontmontant = b5 > b5_precedent; b6_frontmontant = b6 > b6_precedent; b7_frontmontant = b7 > b7_precedent; s0 = i0; if (b1_frontmontant == 1) { s1 = !s1; // Inversion } if (b2_frontmontant == 1) { s2 = !s2; // Inversion } // Prêt pour un nouveau tour // L'état courant devient l'état précédent b0_precedent = b0; b1_precedent = b1; b2_precedent = b2; b3_precedent = b3; b4_precedent = b4; b5_precedent = b5; b6_precedent = b6; b7_precedent = b7; }