Les fichiers Driver_SPI sont des versions personnelles non fonctionelle de la gestion du SPI. C'est la bibliothèque MySPI qui est utilisée dans le projet. Ajout de commentaires dans tous les fichiers driver en format doxygen.
62 lines
2.5 KiB
C
62 lines
2.5 KiB
C
#ifndef DRIVER_TIMER_H
|
||
#define DRIVER_TIMER_H
|
||
|
||
#include "stm32f10x.h"
|
||
|
||
typedef struct
|
||
{
|
||
TIM_TypeDef * Timer;
|
||
unsigned short ARR;
|
||
unsigned short PSC;
|
||
} MyTimer_Struct_TypeDef;
|
||
|
||
/**
|
||
*************************************************************************************************
|
||
* @brief Initialisation du timer
|
||
* @param -> Paramètre sous forme d’une structure (son adresse) contenant les informations du timer
|
||
* @Note -> Fonction à lancer systématiquement avant d’aller plus en détail dans les conf plus fines (PWM, codeur inc...)
|
||
*************************************************************************************************
|
||
*/
|
||
void MyTimer_Base_Init(MyTimer_Struct_TypeDef * Timer);
|
||
|
||
/**
|
||
*************************************************************************************************
|
||
* @brief Fonction pour lancer le timer voulu
|
||
* @param -> Paramètre sous forme d’une structure (son adresse) qui défini le numéro du timer
|
||
* @Note ->
|
||
*************************************************************************************************
|
||
*/
|
||
void MyTimer_Start(TIM_TypeDef * Timer) ;
|
||
|
||
/**
|
||
*************************************************************************************************
|
||
* @brief Fonction pour arrêter le timer voulu
|
||
* @param -> Paramètre sous forme d’une structure (son adresse) qui défini le numéro du timer
|
||
* @Note
|
||
*************************************************************************************************
|
||
*/
|
||
void MyTimer_Stop(TIM_TypeDef * Timer) ;
|
||
|
||
/**
|
||
**************************************************************************************************
|
||
* @brief Active une interruption utilisant un timer
|
||
* @param : -TIM_TypeDef * Timer : Timer concerné
|
||
* - char Prio: de 0 a 15
|
||
* @Note : La fonction MyTimer_Base_Init doit avoir été lancée au prealable
|
||
**************************************************************************************************
|
||
*/
|
||
void MyTimer_ActiveIT (TIM_TypeDef * Timer, char Prio, void (*IT_function)(void));
|
||
|
||
/**
|
||
*************************************************************************************************
|
||
* @brief Fonction pour le timer du PWM
|
||
* @param : -TIM_TypeDef * Timer : Timer concerné
|
||
* - char Channel : channel du PWM concerné
|
||
* @Note Active le channel spécifié sur Timer le timer spécifié
|
||
* la gestion de la configuration I/O n’est pas faite dans cette fonction
|
||
* ni le réglage de la période de la PWM (ARR, PSC)
|
||
*************************************************************************************************
|
||
*/
|
||
void MyTimer_PWM(TIM_TypeDef * Timer, char Channel);
|
||
|
||
#endif
|