Add header files
This commit is contained in:
parent
f8301a6a42
commit
1113fd6594
17 changed files with 1031 additions and 1 deletions
|
@ -1,6 +1,6 @@
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Auto generated Run-Time-Environment Component Configuration File
|
* Auto generated Run-Time-Environment Configuration File
|
||||||
* *** Do not modify ! ***
|
* *** Do not modify ! ***
|
||||||
*
|
*
|
||||||
* Project: 'Project'
|
* Project: 'Project'
|
||||||
|
@ -17,4 +17,5 @@
|
||||||
#define CMSIS_device_header "stm32f10x.h"
|
#define CMSIS_device_header "stm32f10x.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif /* RTE_COMPONENTS_H */
|
#endif /* RTE_COMPONENTS_H */
|
||||||
|
|
70
MyDrivers/ADC.h
Normal file
70
MyDrivers/ADC.h
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
// RIEN A MODIFIER //
|
||||||
|
|
||||||
|
#ifndef MY_TIMER_H
|
||||||
|
#define MY_TIMER_H
|
||||||
|
|
||||||
|
/*
|
||||||
|
Driver pour Timer 1 à 4 du STM32F103RB
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "stm32f103xb.h"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Active l'horloge et règle l'ARR et le PSC du timer visé
|
||||||
|
* @note Fonction à lancer avant toute autre. Le timer n'est pas encore lancé (voir MyTimerStart)
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* int Arr : valeur à placer dans ARR
|
||||||
|
* int Psc : valeur à placer dans PSC
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_Conf(TIM_TypeDef * Timer,int Arr, int Psc);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Démarre le timer considéré
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_Start(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Arrêt le timer considéré
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_Stop(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Configure le Timer considéré en interruption sur débordement.
|
||||||
|
* @note A ce stade, les interruptions ne sont pas validés (voir MyTimer_IT_Enable )
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* void (*IT_function) (void) : nom (adresse) de la fonction à lancer sur interruption
|
||||||
|
* int Prio : priorité associée à l'interruption
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_IT_Conf(TIM_TypeDef * Timer, void (*IT_function) (void),int Prio);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Autorise les interruptions
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_IT_Enable(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Interdit les interruptions
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_IT_Disable(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
#endif
|
70
MyDrivers/GPIO.h
Normal file
70
MyDrivers/GPIO.h
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
// RIEN A MODIFIER //
|
||||||
|
|
||||||
|
#ifndef MY_TIMER_H
|
||||||
|
#define MY_TIMER_H
|
||||||
|
|
||||||
|
/*
|
||||||
|
Driver pour Timer 1 à 4 du STM32F103RB
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "stm32f103xb.h"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Active l'horloge et règle l'ARR et le PSC du timer visé
|
||||||
|
* @note Fonction à lancer avant toute autre. Le timer n'est pas encore lancé (voir MyTimerStart)
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* int Arr : valeur à placer dans ARR
|
||||||
|
* int Psc : valeur à placer dans PSC
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_Conf(TIM_TypeDef * Timer,int Arr, int Psc);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Démarre le timer considéré
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_Start(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Arrêt le timer considéré
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_Stop(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Configure le Timer considéré en interruption sur débordement.
|
||||||
|
* @note A ce stade, les interruptions ne sont pas validés (voir MyTimer_IT_Enable )
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* void (*IT_function) (void) : nom (adresse) de la fonction à lancer sur interruption
|
||||||
|
* int Prio : priorité associée à l'interruption
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_IT_Conf(TIM_TypeDef * Timer, void (*IT_function) (void),int Prio);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Autorise les interruptions
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_IT_Enable(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Interdit les interruptions
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_IT_Disable(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
#endif
|
70
MyDrivers/Timer.h
Normal file
70
MyDrivers/Timer.h
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
// RIEN A MODIFIER //
|
||||||
|
|
||||||
|
#ifndef MY_TIMER_H
|
||||||
|
#define MY_TIMER_H
|
||||||
|
|
||||||
|
/*
|
||||||
|
Driver pour Timer 1 à 4 du STM32F103RB
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "stm32f103xb.h"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Active l'horloge et règle l'ARR et le PSC du timer visé
|
||||||
|
* @note Fonction à lancer avant toute autre. Le timer n'est pas encore lancé (voir MyTimerStart)
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* int Arr : valeur à placer dans ARR
|
||||||
|
* int Psc : valeur à placer dans PSC
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_Conf(TIM_TypeDef * Timer,int Arr, int Psc);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Démarre le timer considéré
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_Start(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Arrêt le timer considéré
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_Stop(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Configure le Timer considéré en interruption sur débordement.
|
||||||
|
* @note A ce stade, les interruptions ne sont pas validés (voir MyTimer_IT_Enable )
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* void (*IT_function) (void) : nom (adresse) de la fonction à lancer sur interruption
|
||||||
|
* int Prio : priorité associée à l'interruption
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_IT_Conf(TIM_TypeDef * Timer, void (*IT_function) (void),int Prio);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Autorise les interruptions
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_IT_Enable(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Interdit les interruptions
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_IT_Disable(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
#endif
|
70
MyDrivers/USART.h
Normal file
70
MyDrivers/USART.h
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
// RIEN A MODIFIER //
|
||||||
|
|
||||||
|
#ifndef MY_TIMER_H
|
||||||
|
#define MY_TIMER_H
|
||||||
|
|
||||||
|
/*
|
||||||
|
Driver pour Timer 1 à 4 du STM32F103RB
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "stm32f103xb.h"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Active l'horloge et règle l'ARR et le PSC du timer visé
|
||||||
|
* @note Fonction à lancer avant toute autre. Le timer n'est pas encore lancé (voir MyTimerStart)
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* int Arr : valeur à placer dans ARR
|
||||||
|
* int Psc : valeur à placer dans PSC
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_Conf(TIM_TypeDef * Timer,int Arr, int Psc);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Démarre le timer considéré
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_Start(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Arrêt le timer considéré
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_Stop(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Configure le Timer considéré en interruption sur débordement.
|
||||||
|
* @note A ce stade, les interruptions ne sont pas validés (voir MyTimer_IT_Enable )
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* void (*IT_function) (void) : nom (adresse) de la fonction à lancer sur interruption
|
||||||
|
* int Prio : priorité associée à l'interruption
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_IT_Conf(TIM_TypeDef * Timer, void (*IT_function) (void),int Prio);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Autorise les interruptions
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_IT_Enable(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Interdit les interruptions
|
||||||
|
* @note
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void MyTimer_IT_Disable(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
#endif
|
107
Services/Accelerometer.h
Normal file
107
Services/Accelerometer.h
Normal file
|
@ -0,0 +1,107 @@
|
||||||
|
// RIEN A MODIFIER //
|
||||||
|
|
||||||
|
#ifndef CHRONO_H
|
||||||
|
#define CHRONO_H
|
||||||
|
|
||||||
|
/*
|
||||||
|
Service permettant de chornométrer jusqu'à 59mn 59s 99 1/100
|
||||||
|
Utilise un timer au choix (TIMER1 à TIMER4).
|
||||||
|
Utilise la lib MyTimers.h /.c
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "stm32f103xb.h"
|
||||||
|
|
||||||
|
/* =====================================================================================
|
||||||
|
Les fonctions qui gèrent les IO (ajout par rapport à l'activité 1)
|
||||||
|
=======================================================================================*/
|
||||||
|
|
||||||
|
|
||||||
|
#define PinStart LL_GPIO_PIN_8
|
||||||
|
#define PinStop LL_GPIO_PIN_6
|
||||||
|
// à compléter pour la pin reset du chronometre
|
||||||
|
#define PinLED LL_GPIO_PIN_10
|
||||||
|
#define GPIO_Pin GPIOC
|
||||||
|
#define GPIO_LED GPIOC
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief polle les 3 entrées et gènère les actions à faire
|
||||||
|
* @note Fct à lancer en tâche de fond (non bloquante)
|
||||||
|
* @param None
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
|
||||||
|
void Chrono_Background(void);
|
||||||
|
|
||||||
|
//=======================================================================================//
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Type de donnée utilisé dans le module
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
char Hund;
|
||||||
|
char Sec;
|
||||||
|
char Min;
|
||||||
|
} Time;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Configure le chronomètre.
|
||||||
|
* @note A lancer avant toute autre fonction.
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void Chrono_Conf(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Démarre le chronomètre.
|
||||||
|
* @note si la durée dépasse 59mn 59sec 99 cent, elle est remise à zéro et repart
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Start(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Arrête le chronomètre.
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Stop(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Remet le chronomètre à 0
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Reset(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Renvoie l'adresse de la variable Time privée gérée dans le module Chrono.c
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval adresse de la variable Time
|
||||||
|
*/
|
||||||
|
Time * Chrono_Read(void);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
107
Services/DCMotor.h
Normal file
107
Services/DCMotor.h
Normal file
|
@ -0,0 +1,107 @@
|
||||||
|
// RIEN A MODIFIER //
|
||||||
|
|
||||||
|
#ifndef CHRONO_H
|
||||||
|
#define CHRONO_H
|
||||||
|
|
||||||
|
/*
|
||||||
|
Service permettant de chornométrer jusqu'à 59mn 59s 99 1/100
|
||||||
|
Utilise un timer au choix (TIMER1 à TIMER4).
|
||||||
|
Utilise la lib MyTimers.h /.c
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "stm32f103xb.h"
|
||||||
|
|
||||||
|
/* =====================================================================================
|
||||||
|
Les fonctions qui gèrent les IO (ajout par rapport à l'activité 1)
|
||||||
|
=======================================================================================*/
|
||||||
|
|
||||||
|
|
||||||
|
#define PinStart LL_GPIO_PIN_8
|
||||||
|
#define PinStop LL_GPIO_PIN_6
|
||||||
|
// à compléter pour la pin reset du chronometre
|
||||||
|
#define PinLED LL_GPIO_PIN_10
|
||||||
|
#define GPIO_Pin GPIOC
|
||||||
|
#define GPIO_LED GPIOC
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief polle les 3 entrées et gènère les actions à faire
|
||||||
|
* @note Fct à lancer en tâche de fond (non bloquante)
|
||||||
|
* @param None
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
|
||||||
|
void Chrono_Background(void);
|
||||||
|
|
||||||
|
//=======================================================================================//
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Type de donnée utilisé dans le module
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
char Hund;
|
||||||
|
char Sec;
|
||||||
|
char Min;
|
||||||
|
} Time;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Configure le chronomètre.
|
||||||
|
* @note A lancer avant toute autre fonction.
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void Chrono_Conf(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Démarre le chronomètre.
|
||||||
|
* @note si la durée dépasse 59mn 59sec 99 cent, elle est remise à zéro et repart
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Start(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Arrête le chronomètre.
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Stop(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Remet le chronomètre à 0
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Reset(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Renvoie l'adresse de la variable Time privée gérée dans le module Chrono.c
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval adresse de la variable Time
|
||||||
|
*/
|
||||||
|
Time * Chrono_Read(void);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
107
Services/IncrementalEncoder.h
Normal file
107
Services/IncrementalEncoder.h
Normal file
|
@ -0,0 +1,107 @@
|
||||||
|
// RIEN A MODIFIER //
|
||||||
|
|
||||||
|
#ifndef CHRONO_H
|
||||||
|
#define CHRONO_H
|
||||||
|
|
||||||
|
/*
|
||||||
|
Service permettant de chornométrer jusqu'à 59mn 59s 99 1/100
|
||||||
|
Utilise un timer au choix (TIMER1 à TIMER4).
|
||||||
|
Utilise la lib MyTimers.h /.c
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "stm32f103xb.h"
|
||||||
|
|
||||||
|
/* =====================================================================================
|
||||||
|
Les fonctions qui gèrent les IO (ajout par rapport à l'activité 1)
|
||||||
|
=======================================================================================*/
|
||||||
|
|
||||||
|
|
||||||
|
#define PinStart LL_GPIO_PIN_8
|
||||||
|
#define PinStop LL_GPIO_PIN_6
|
||||||
|
// à compléter pour la pin reset du chronometre
|
||||||
|
#define PinLED LL_GPIO_PIN_10
|
||||||
|
#define GPIO_Pin GPIOC
|
||||||
|
#define GPIO_LED GPIOC
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief polle les 3 entrées et gènère les actions à faire
|
||||||
|
* @note Fct à lancer en tâche de fond (non bloquante)
|
||||||
|
* @param None
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
|
||||||
|
void Chrono_Background(void);
|
||||||
|
|
||||||
|
//=======================================================================================//
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Type de donnée utilisé dans le module
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
char Hund;
|
||||||
|
char Sec;
|
||||||
|
char Min;
|
||||||
|
} Time;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Configure le chronomètre.
|
||||||
|
* @note A lancer avant toute autre fonction.
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void Chrono_Conf(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Démarre le chronomètre.
|
||||||
|
* @note si la durée dépasse 59mn 59sec 99 cent, elle est remise à zéro et repart
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Start(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Arrête le chronomètre.
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Stop(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Remet le chronomètre à 0
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Reset(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Renvoie l'adresse de la variable Time privée gérée dans le module Chrono.c
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval adresse de la variable Time
|
||||||
|
*/
|
||||||
|
Time * Chrono_Read(void);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
107
Services/RFEmitter.h
Normal file
107
Services/RFEmitter.h
Normal file
|
@ -0,0 +1,107 @@
|
||||||
|
// RIEN A MODIFIER //
|
||||||
|
|
||||||
|
#ifndef CHRONO_H
|
||||||
|
#define CHRONO_H
|
||||||
|
|
||||||
|
/*
|
||||||
|
Service permettant de chornométrer jusqu'à 59mn 59s 99 1/100
|
||||||
|
Utilise un timer au choix (TIMER1 à TIMER4).
|
||||||
|
Utilise la lib MyTimers.h /.c
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "stm32f103xb.h"
|
||||||
|
|
||||||
|
/* =====================================================================================
|
||||||
|
Les fonctions qui gèrent les IO (ajout par rapport à l'activité 1)
|
||||||
|
=======================================================================================*/
|
||||||
|
|
||||||
|
|
||||||
|
#define PinStart LL_GPIO_PIN_8
|
||||||
|
#define PinStop LL_GPIO_PIN_6
|
||||||
|
// à compléter pour la pin reset du chronometre
|
||||||
|
#define PinLED LL_GPIO_PIN_10
|
||||||
|
#define GPIO_Pin GPIOC
|
||||||
|
#define GPIO_LED GPIOC
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief polle les 3 entrées et gènère les actions à faire
|
||||||
|
* @note Fct à lancer en tâche de fond (non bloquante)
|
||||||
|
* @param None
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
|
||||||
|
void Chrono_Background(void);
|
||||||
|
|
||||||
|
//=======================================================================================//
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Type de donnée utilisé dans le module
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
char Hund;
|
||||||
|
char Sec;
|
||||||
|
char Min;
|
||||||
|
} Time;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Configure le chronomètre.
|
||||||
|
* @note A lancer avant toute autre fonction.
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void Chrono_Conf(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Démarre le chronomètre.
|
||||||
|
* @note si la durée dépasse 59mn 59sec 99 cent, elle est remise à zéro et repart
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Start(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Arrête le chronomètre.
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Stop(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Remet le chronomètre à 0
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Reset(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Renvoie l'adresse de la variable Time privée gérée dans le module Chrono.c
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval adresse de la variable Time
|
||||||
|
*/
|
||||||
|
Time * Chrono_Read(void);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
107
Services/RFReceiver.h
Normal file
107
Services/RFReceiver.h
Normal file
|
@ -0,0 +1,107 @@
|
||||||
|
// RIEN A MODIFIER //
|
||||||
|
|
||||||
|
#ifndef CHRONO_H
|
||||||
|
#define CHRONO_H
|
||||||
|
|
||||||
|
/*
|
||||||
|
Service permettant de chornométrer jusqu'à 59mn 59s 99 1/100
|
||||||
|
Utilise un timer au choix (TIMER1 à TIMER4).
|
||||||
|
Utilise la lib MyTimers.h /.c
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "stm32f103xb.h"
|
||||||
|
|
||||||
|
/* =====================================================================================
|
||||||
|
Les fonctions qui gèrent les IO (ajout par rapport à l'activité 1)
|
||||||
|
=======================================================================================*/
|
||||||
|
|
||||||
|
|
||||||
|
#define PinStart LL_GPIO_PIN_8
|
||||||
|
#define PinStop LL_GPIO_PIN_6
|
||||||
|
// à compléter pour la pin reset du chronometre
|
||||||
|
#define PinLED LL_GPIO_PIN_10
|
||||||
|
#define GPIO_Pin GPIOC
|
||||||
|
#define GPIO_LED GPIOC
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief polle les 3 entrées et gènère les actions à faire
|
||||||
|
* @note Fct à lancer en tâche de fond (non bloquante)
|
||||||
|
* @param None
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
|
||||||
|
void Chrono_Background(void);
|
||||||
|
|
||||||
|
//=======================================================================================//
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Type de donnée utilisé dans le module
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
char Hund;
|
||||||
|
char Sec;
|
||||||
|
char Min;
|
||||||
|
} Time;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Configure le chronomètre.
|
||||||
|
* @note A lancer avant toute autre fonction.
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void Chrono_Conf(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Démarre le chronomètre.
|
||||||
|
* @note si la durée dépasse 59mn 59sec 99 cent, elle est remise à zéro et repart
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Start(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Arrête le chronomètre.
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Stop(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Remet le chronomètre à 0
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Reset(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Renvoie l'adresse de la variable Time privée gérée dans le module Chrono.c
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval adresse de la variable Time
|
||||||
|
*/
|
||||||
|
Time * Chrono_Read(void);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
107
Services/ServoMotor.h
Normal file
107
Services/ServoMotor.h
Normal file
|
@ -0,0 +1,107 @@
|
||||||
|
// RIEN A MODIFIER //
|
||||||
|
|
||||||
|
#ifndef CHRONO_H
|
||||||
|
#define CHRONO_H
|
||||||
|
|
||||||
|
/*
|
||||||
|
Service permettant de chornométrer jusqu'à 59mn 59s 99 1/100
|
||||||
|
Utilise un timer au choix (TIMER1 à TIMER4).
|
||||||
|
Utilise la lib MyTimers.h /.c
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "stm32f103xb.h"
|
||||||
|
|
||||||
|
/* =====================================================================================
|
||||||
|
Les fonctions qui gèrent les IO (ajout par rapport à l'activité 1)
|
||||||
|
=======================================================================================*/
|
||||||
|
|
||||||
|
|
||||||
|
#define PinStart LL_GPIO_PIN_8
|
||||||
|
#define PinStop LL_GPIO_PIN_6
|
||||||
|
// à compléter pour la pin reset du chronometre
|
||||||
|
#define PinLED LL_GPIO_PIN_10
|
||||||
|
#define GPIO_Pin GPIOC
|
||||||
|
#define GPIO_LED GPIOC
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief polle les 3 entrées et gènère les actions à faire
|
||||||
|
* @note Fct à lancer en tâche de fond (non bloquante)
|
||||||
|
* @param None
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
|
||||||
|
void Chrono_Background(void);
|
||||||
|
|
||||||
|
//=======================================================================================//
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Type de donnée utilisé dans le module
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
char Hund;
|
||||||
|
char Sec;
|
||||||
|
char Min;
|
||||||
|
} Time;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Configure le chronomètre.
|
||||||
|
* @note A lancer avant toute autre fonction.
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void Chrono_Conf(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Démarre le chronomètre.
|
||||||
|
* @note si la durée dépasse 59mn 59sec 99 cent, elle est remise à zéro et repart
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Start(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Arrête le chronomètre.
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Stop(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Remet le chronomètre à 0
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Reset(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Renvoie l'adresse de la variable Time privée gérée dans le module Chrono.c
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval adresse de la variable Time
|
||||||
|
*/
|
||||||
|
Time * Chrono_Read(void);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
107
Services/Voltage.h
Normal file
107
Services/Voltage.h
Normal file
|
@ -0,0 +1,107 @@
|
||||||
|
// RIEN A MODIFIER //
|
||||||
|
|
||||||
|
#ifndef CHRONO_H
|
||||||
|
#define CHRONO_H
|
||||||
|
|
||||||
|
/*
|
||||||
|
Service permettant de chornométrer jusqu'à 59mn 59s 99 1/100
|
||||||
|
Utilise un timer au choix (TIMER1 à TIMER4).
|
||||||
|
Utilise la lib MyTimers.h /.c
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "stm32f103xb.h"
|
||||||
|
|
||||||
|
/* =====================================================================================
|
||||||
|
Les fonctions qui gèrent les IO (ajout par rapport à l'activité 1)
|
||||||
|
=======================================================================================*/
|
||||||
|
|
||||||
|
|
||||||
|
#define PinStart LL_GPIO_PIN_8
|
||||||
|
#define PinStop LL_GPIO_PIN_6
|
||||||
|
// à compléter pour la pin reset du chronometre
|
||||||
|
#define PinLED LL_GPIO_PIN_10
|
||||||
|
#define GPIO_Pin GPIOC
|
||||||
|
#define GPIO_LED GPIOC
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief polle les 3 entrées et gènère les actions à faire
|
||||||
|
* @note Fct à lancer en tâche de fond (non bloquante)
|
||||||
|
* @param None
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
|
||||||
|
void Chrono_Background(void);
|
||||||
|
|
||||||
|
//=======================================================================================//
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Type de donnée utilisé dans le module
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
char Hund;
|
||||||
|
char Sec;
|
||||||
|
char Min;
|
||||||
|
} Time;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Configure le chronomètre.
|
||||||
|
* @note A lancer avant toute autre fonction.
|
||||||
|
* @param TIM_TypeDef Timer : indique le timer à utiliser par le chronomètre, TIM1, TIM2, TIM3 ou TIM4
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void Chrono_Conf(TIM_TypeDef * Timer);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Démarre le chronomètre.
|
||||||
|
* @note si la durée dépasse 59mn 59sec 99 cent, elle est remise à zéro et repart
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Start(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Arrête le chronomètre.
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Stop(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Remet le chronomètre à 0
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval Aucun
|
||||||
|
*/
|
||||||
|
void Chrono_Reset(void);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Renvoie l'adresse de la variable Time privée gérée dans le module Chrono.c
|
||||||
|
* @note
|
||||||
|
* @param Aucun
|
||||||
|
* @retval adresse de la variable Time
|
||||||
|
*/
|
||||||
|
Time * Chrono_Read(void);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
0
Src/Command.h
Normal file
0
Src/Command.h
Normal file
0
Src/Display.h
Normal file
0
Src/Display.h
Normal file
0
Src/Orientation.h
Normal file
0
Src/Orientation.h
Normal file
0
Src/Roll.h
Normal file
0
Src/Roll.h
Normal file
0
Src/Sail.h
Normal file
0
Src/Sail.h
Normal file
Loading…
Reference in a new issue