voilier-team-1/driver/gpio.h

28 lines
763 B
C

#ifndef GPIODRIVER_H
#define GPIODRIVER_H
#include "stm32f10x.h"
typedef struct
{
GPIO_TypeDef * GPIO; //GPIO A,B,C,D...
uint8_t GPIO_Pin; //numero de 0 à 15
uint8_t GPIO_Conf; //voir ci dessous
} MyGPIO_Struct_TypeDef;
#define In_Floating 0x04
#define In_PullDown 0x08
#define In_PullUp 0xF8
#define In_Analog 0x00
#define Out_PullUp 0x01
#define Out_OD 0x05
#define AltOut_Ppull 0x09
#define AltOut_OD 0x0d
int GPIO2Int(GPIO_TypeDef * GPIOX);
void MyGPIO_Init(MyGPIO_Struct_TypeDef * GPIOStructPtr);
int MyGPIO_Read(GPIO_TypeDef * GPIO, uint8_t GPIO_Pin);
void MyGPIO_Set(GPIO_TypeDef * GPIO, uint8_t GPIO_Pin);
void MyGPIO_Reset(GPIO_TypeDef * GPIO, uint8_t GPIO_Pin);
void MyGPIO_Toggle(GPIO_TypeDef * GPIO, uint8_t GPIO_Pin);
#endif