#ifndef MYGPIO_H #define MYGPIO_H #include "stm32f10x.h" #define In_Floating 0x4 #define In_PullDown 0x8 #define In_PullUp 0x9 #define In_Analog 0x0 #define Out_Ppull 0x2 // deux derniers bits pour regler la vitesse max (due a la valeur de res) (01:10MHz 10:2MHz 11:50MHz) #define Out_OD 0x6 // deux derniers bits pour regler la vitesse max (due a la valeur de res) (01:10MHz 10:2MHz 11:50MHz) #define AltOut_Ppull 0xA // deux derniers bits pour regler la vitesse max (due a la valeur de res) (01:10MHz 10:2MHz 11:50MHz) #define AltOut_OD 0xD // deux derniers bits pour regler la vitesse max (due a la valeur de res) (01:10MHz 10:2MHz 11:50MHz) typedef struct { GPIO_TypeDef * GPIO ; char GPIO_Pin ; // numero de 0 a 15 char GPIO_Conf ; // voir ci dessous } MyGPIO_Struct_TypeDef ; void MyGPIO_Init ( MyGPIO_Struct_TypeDef * GPIOStructPtr ) ; int MyGPIO_Read ( GPIO_TypeDef * GPIO , char GPIO_Pin ) ; // renvoie 0 ou 1 void MyGPIO_Set ( GPIO_TypeDef * GPIO , char GPIO_Pin ) ; void MyGPIO_Reset ( GPIO_TypeDef * GPIO , char GPIO_Pin ) ; void MyGPIO_Toggle ( GPIO_TypeDef * GPIO , char GPIO_Pin ) ; void MyGPIO_ActiveIT (GPIO_TypeDef * GPIO, char GPIO_Pin, char Prio, void (*IT_function)(void)) ; #endif