#include "Com_actionneur.h" #include #include int Actionneur_scan(struct com_actionneur_t * com_actionneur){ return Actionneur_scan(com_actionneur, true); } /// @brief Commande l'actionneur int Actionneur_scan(struct com_actionneur_t * com_actionneur, bool continuous_try){ unsigned char tampon[4]; //(Adresse I2c, Adresse dans le registre, tampon, longueur de donnée) error = I2C_lire_registre(I2C_SLAVE_actionneur, 0, tampon, 2); while(error !=0 && continuous_try){ affiche_erreur("Actionneur_scan", "Erreur I2C"); error = I2C_lire_registre(I2C_SLAVE_actionneur, 0, tampon, 2); } Serial.printf(">r0:%d\n>r1:%d\n", tampon[0], tampon[1]); com_actionneur->action_terminee = tampon[1]; com_actionneur->demande_action = tampon[0]; return error; } int Actionneur_send(struct com_actionneur_t * com_actionneur){ unsigned char tampon[1]; tampon[0] = com_actionneur->demande_action; error = I2C_ecrire_registre(I2C_SLAVE_actionneur, 0, tampon, 1); if (error !=0){ affiche_erreur("Actionneur_send", "Erreur I2C"); while(1); } return error; }