/******************** (C) COPYRIGHT 2006 STMicroelectronics ******************** | |
* File Name : 91x_gpio.h | |
* Author : MCD Application Team | |
* Date First Issued : 05/18/2006 : Version 1.0 | |
* Description : This file contains all the functions prototypes for the | |
* GPIO software library. | |
******************************************************************************** | |
* History: | |
* 05/24/2006 : Version 1.1 | |
* 05/18/2006 : Version 1.0 | |
******************************************************************************** | |
* THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS WITH | |
* CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. AS | |
* A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, INDIRECT | |
* OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE CONTENT | |
* OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING INFORMATION | |
* CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. | |
*******************************************************************************/ | |
/* Define to prevent recursive inclusion ------------------------------------ */ | |
#ifndef _91x_GPIO_H | |
#define _91x_GPIO_H | |
/* Includes ------------------------------------------------------------------*/ | |
#include "91x_map.h" | |
/* GPIO Init structure definition */ | |
typedef struct | |
{ | |
u8 GPIO_Pin; | |
u8 GPIO_Direction; | |
u8 GPIO_Type; | |
u8 GPIO_IPConnected; | |
u16 GPIO_Alternate; | |
}GPIO_InitTypeDef; | |
/* Bit_SET and Bit_RESET enumeration */ | |
typedef enum | |
{ Bit_RESET = 0, | |
Bit_SET | |
}BitAction; | |
/* Exported constants --------------------------------------------------------*/ | |
#define GPIO_Pin_None 0x00 | |
#define GPIO_Pin_0 0x01 | |
#define GPIO_Pin_1 0x02 | |
#define GPIO_Pin_2 0x04 | |
#define GPIO_Pin_3 0x08 | |
#define GPIO_Pin_4 0x10 | |
#define GPIO_Pin_5 0x20 | |
#define GPIO_Pin_6 0x40 | |
#define GPIO_Pin_7 0x80 | |
#define GPIO_Pin_All 0xFF | |
#define GPIO_PinInput 0x00 | |
#define GPIO_PinOutput 0x01 | |
#define GPIO_Type_PushPull 0x00 | |
#define GPIO_Type_OpenCollector 0x01 | |
#define GPIO_IPConnected_Disable 0x00 | |
#define GPIO_IPConnected_Enable 0x01 | |
#define GPIO_InputAlt1 0x00 | |
#define GPIO_OutputAlt1 0x01 | |
#define GPIO_OutputAlt2 0x02 | |
#define GPIO_OutputAlt3 0x03 | |
#define GPIO_ANAChannel0 0x01 | |
#define GPIO_ANAChannel1 0x02 | |
#define GPIO_ANAChannel2 0x04 | |
#define GPIO_ANAChannel3 0x08 | |
#define GPIO_ANAChannel4 0x10 | |
#define GPIO_ANAChannel5 0x20 | |
#define GPIO_ANAChannel6 0x40 | |
#define GPIO_ANAChannel7 0x80 | |
#define GPIO_ANAChannelALL 0xFF | |
void GPIO_DeInit(GPIO_TypeDef* GPIOx); | |
void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct); | |
void GPIO_StructInit(GPIO_InitTypeDef* GPIO_InitStruct); | |
u8 GPIO_ReadBit(GPIO_TypeDef* GPIOx, u8 GPIO_Pin); | |
u8 GPIO_Read(GPIO_TypeDef* GPIOx); | |
void GPIO_WriteBit(GPIO_TypeDef* GPIOx, u8 GPIO_Pin, BitAction BitVal); | |
void GPIO_Write(GPIO_TypeDef* GPIOx, u8 PortVal); | |
void GPIO_EMIConfig(FunctionalState NewState); | |
void GPIO_ANAPinConfig(u8 GPIO_ANAChannel, FunctionalState NewState); | |
#endif /* _91x_GPIO_H */ | |
/******************* (C) COPYRIGHT 2006 STMicroelectronics *****END OF FILE****/ |