www.pudn.com > bq26100SHA1c_files.rar > 91x_gpio.h, change:2006-09-29,size:3251b


/******************** (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****/