//////////////////////////////////////////////////////////////////// //! Un programme pour tester notre composant (logiciel) void programmeDeTest1(){ //! Le composant à tester CStateMachine mae; Serial.print("Test lancé le "); Serial.print(__DATE__ ); Serial.print(" à "); Serial.println(__TIME__ ); Serial.print("Fonction de test: "); Serial.println(__func__); //boucle pour gérer les différents cas à tester for (unsigned int ntest=0;ntest<8;ntest++){ Serial.print("début du test numéro: "); Serial.println(ntest); mae.reset(); mae.setEntree(0); /* mae.setEntreeBit(0,1); mae.setEntreeBit(1,1); mae.setEntreeBit(2,1); mae.setEntreeBit(3,1); mae.setEntreeBit(0,0); mae.setEntreeBit(2,0); mae.setEntreeBit(1,0); mae.setEntreeBit(3,0); */ //test du maintien dans l'état 0 mae.clock(); //ici on teste la mae sans considération de timing, donc clock() n'est pas conditionné à un timer mae.clock(); //la MAE doit être dans l'état 0 if (mae.getEtat()!=0) debugMessage("Erreur: La MAE n'est pas dans l\'état prévu", __FILE__, __LINE__); mae.setEntreeBit(0,1); //équivalent ici à mae.setEntree(1); mae.clock(); //transition de 0 à 1 if (mae.getEtat()!=1) debugMessage("Erreur: La MAE n'est pas dans l\'état prévu", __FILE__, __LINE__); //// A COMPLETER!!!! Serial.println("fin du test"); //vidage de la FIFO d'affichage: //flush(std::cout); } //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// void setup() { Serial.begin(115200); //Normalement le programme de test est un programme à part programmeDeTest1(); } //////////////////////////////////////////////////////////////////// void loop() { }