Projet-Voilier-3/driver/Driver_GPIO.h
Sanchez Manon c930991ccb Ajout du Driver_IMU, pour la gestion de l'accéléromètre.
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.
2023-04-05 16:39:01 +02:00

64 lines
2.4 KiB
C
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef DRIVER_GPIO_H
#define DRIVER_GPIO_H
#include "stm32f10x.h"
typedef struct
{
GPIO_TypeDef * GPIO ;
char GPIO_Pin ; //numero de 0 a 15
char GPIO_Conf ; // voir ci dessous
} MyGPIO_Struct_TypeDef ;
#define In_Floating 0x4
#define In_PullDown 0x8
#define In_PullUp 0x8
#define In_Analog 0x0
#define Out_Ppull 0x2
#define Out_OD 0x6
#define AltOut_Ppull 0xA
#define AltOut_OD 0xE
/**
*************************************************************************************************
* @brief Fonction d'initialisation pour les GPIO
* @param -> Paramètre sous forme dune structure (son adresse) qui défini le pin, le port et la conf du GPIO
* @Note ->
*************************************************************************************************
*/
void MyGPIO_Init ( MyGPIO_Struct_TypeDef * GPIOStructPtr );
/**
*************************************************************************************************
* @brief Fonction pour lire l'état de la GPIO
* @param : Paramètre sous forme dune structure (son adresse) qui défini le pin et le port
* @return : Renvoie 0 ou autre chose différent de 0
*************************************************************************************************
*/
int MyGPIO_Read ( GPIO_TypeDef * GPIO , char GPIO_Pin );
/**
*************************************************************************************************
* @brief Fonction pour set le pin voulu
* @param -> Paramètre sous forme dune structure (son adresse) qui défini le pin et le port
* @Note ->
*************************************************************************************************
*/
void MyGPIO_Set ( GPIO_TypeDef * GPIO , char GPIO_Pin );
/**
*************************************************************************************************
* @brief Fonction pour reset le pin voulu
* @param -> Paramètre sous forme dune structure (son adresse) qui défini le pin et le port
* @Note ->
*************************************************************************************************
*/
void MyGPIO_Reset ( GPIO_TypeDef * GPIO , char GPIO_Pin );
/**
*************************************************************************************************
* @brief Fonction pour toogle le pin voulu
* @param -> Paramètre sous forme dune structure (son adresse) qui défini le pin et le port
* @Note ->
*************************************************************************************************
*/
void MyGPIO_Toggle ( GPIO_TypeDef * GPIO , char GPIO_Pin ) ;
#endif