Periph-Voilier/Services/MySequencer.c
2020-11-24 19:52:32 +01:00

48 lines
871 B
C

#include "MySequencer.h"
#include "MySysTick.h"
#include "Moteur.h"
#include "MyRF.h"
#include "girouette.h"
int cnt_3sec = 0;
void MySequencer_Conf(void) {
MySysTick_Conf(0xAFC80);
MySysTick_IT_Conf(MySequencer_Task_10ms,3);
MySysTick_IT_Enable();
}
/**
* @brief Tâche à lancer toutes les 10ms
* @note None
* @param None
* @retval None
*/
void MySequencer_Task_10ms (void) {
//Incrémentation du compteur pour envoi toutes les 3 secondes
cnt_3sec++;
//Transmission données toutes les 3 secondes
if(cnt_3sec == 300) {
MyRF_Transmit_3s((int)((Calcul_pourcentage_duree()-5.0)*20.0), (int)(Angle_Vent()));
cnt_3sec = 0;
}
//Réglage sens et vitesse moteur
int Duty_Cycle = MyRF_Duty_Cycle_Moteur();
if (Duty_Cycle >= 0) {
Moteur_Speed(Duty_Cycle);
Moteur_Sens(1);
}
else {
Moteur_Speed(-Duty_Cycle);
Moteur_Sens(0);
}
}