70 lines
2 KiB
C
70 lines
2 KiB
C
// 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
|