+++ /dev/null
-//*****************************************************************************\r
-//\r
-// gpio.h - Defines and Macros for GPIO API.\r
-//\r
-// Copyright (c) 2005,2006 Luminary Micro, Inc. All rights reserved.\r
-//\r
-// Software License Agreement\r
-//\r
-// Luminary Micro, Inc. (LMI) is supplying this software for use solely and\r
-// exclusively on LMI's Stellaris Family of microcontroller products.\r
-//\r
-// The software is owned by LMI and/or its suppliers, and is protected under\r
-// applicable copyright laws. All rights are reserved. Any use in violation\r
-// of the foregoing restrictions may subject the user to criminal sanctions\r
-// under applicable laws, as well as to civil liability for the breach of the\r
-// terms and conditions of this license.\r
-//\r
-// THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED\r
-// OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF\r
-// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.\r
-// LMI SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR\r
-// CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.\r
-//\r
-// This is part of revision 523 of the Stellaris Driver Library.\r
-//\r
-//*****************************************************************************\r
-\r
-#ifndef __GPIO_H__\r
-#define __GPIO_H__\r
-\r
-#ifdef __cplusplus\r
-extern "C"\r
-{\r
-#endif\r
-\r
-//*****************************************************************************\r
-//\r
-// The following values define the bit field for the ucPins argument to several\r
-// of the APIs.\r
-//\r
-//*****************************************************************************\r
-#define GPIO_PIN_0 0x00000001 // GPIO pin 0\r
-#define GPIO_PIN_1 0x00000002 // GPIO pin 1\r
-#define GPIO_PIN_2 0x00000004 // GPIO pin 2\r
-#define GPIO_PIN_3 0x00000008 // GPIO pin 3\r
-#define GPIO_PIN_4 0x00000010 // GPIO pin 4\r
-#define GPIO_PIN_5 0x00000020 // GPIO pin 5\r
-#define GPIO_PIN_6 0x00000040 // GPIO pin 6\r
-#define GPIO_PIN_7 0x00000080 // GPIO pin 7\r
-\r
-//*****************************************************************************\r
-//\r
-// Values that can be passed to GPIODirModeSet as the ulPinIO parameter, and\r
-// returned from GPIODirModeGet.\r
-//\r
-//*****************************************************************************\r
-#define GPIO_DIR_MODE_IN 0x00000000 // Pin is a GPIO input\r
-#define GPIO_DIR_MODE_OUT 0x00000001 // Pin is a GPIO output\r
-#define GPIO_DIR_MODE_HW 0x00000002 // Pin is a peripheral function\r
-\r
-//*****************************************************************************\r
-//\r
-// Values that can be passed to GPIOIntTypeSet as the ulIntType parameter, and\r
-// returned from GPIOIntTypeGet.\r
-//\r
-//*****************************************************************************\r
-#define GPIO_FALLING_EDGE 0x00000000 // Interrupt on falling edge\r
-#define GPIO_RISING_EDGE 0x00000004 // Interrupt on rising edge\r
-#define GPIO_BOTH_EDGES 0x00000001 // Interrupt on both edges\r
-#define GPIO_LOW_LEVEL 0x00000002 // Interrupt on low level\r
-#define GPIO_HIGH_LEVEL 0x00000007 // Interrupt on high level\r
-\r
-//*****************************************************************************\r
-//\r
-// Values that can be passed to GPIOPadConfigSet as the ulStrength parameter,\r
-// and returned by GPIOPadConfigGet in the *pulStrength parameter.\r
-//\r
-//*****************************************************************************\r
-#define GPIO_STRENGTH_2MA 0x00000001 // 2mA drive strength\r
-#define GPIO_STRENGTH_4MA 0x00000002 // 4mA drive strength\r
-#define GPIO_STRENGTH_8MA 0x00000004 // 8mA drive strength\r
-#define GPIO_STRENGTH_8MA_SC 0x0000000C // 8mA drive with slew rate control\r
-\r
-//*****************************************************************************\r
-//\r
-// Values that can be passed to GPIOPadConfigSet as the ulPadType parameter,\r
-// and returned by GPIOPadConfigGet in the *pulPadType parameter.\r
-//\r
-//*****************************************************************************\r
-#define GPIO_PIN_TYPE_STD 0x00000008 // Push-pull\r
-#define GPIO_PIN_TYPE_STD_WPU 0x0000000A // Push-pull with weak pull-up\r
-#define GPIO_PIN_TYPE_STD_WPD 0x0000000C // Push-pull with weak pull-down\r
-#define GPIO_PIN_TYPE_OD 0x00000009 // Open-drain\r
-#define GPIO_PIN_TYPE_OD_WPU 0x0000000B // Open-drain with weak pull-up\r
-#define GPIO_PIN_TYPE_OD_WPD 0x0000000D // Open-drain with weak pull-down\r
-#define GPIO_PIN_TYPE_ANALOG 0x00000000 // Analog comparator\r
-\r
-//*****************************************************************************\r
-//\r
-// Prototypes for the APIs.\r
-//\r
-//*****************************************************************************\r
-extern void GPIODirModeSet(unsigned long ulPort, unsigned char ucPins,\r
- unsigned long ulPinIO);\r
-extern unsigned long GPIODirModeGet(unsigned long ulPort, unsigned char ucPin);\r
-extern void GPIOIntTypeSet(unsigned long ulPort, unsigned char ucPins,\r
- unsigned long ulIntType);\r
-extern unsigned long GPIOIntTypeGet(unsigned long ulPort, unsigned char ucPin);\r
-extern void GPIOPadConfigSet(unsigned long ulPort, unsigned char ucPins,\r
- unsigned long ulStrength,\r
- unsigned long ulPadType);\r
-extern void GPIOPadConfigGet(unsigned long ulPort, unsigned char ucPin,\r
- unsigned long *pulStrength,\r
- unsigned long *pulPadType);\r
-extern void GPIOPinIntEnable(unsigned long ulPort, unsigned char ucPins);\r
-extern void GPIOPinIntDisable(unsigned long ulPort, unsigned char ucPins);\r
-extern long GPIOPinIntStatus(unsigned long ulPort, tBoolean bMasked);\r
-extern void GPIOPinIntClear(unsigned long ulPort, unsigned char ucPins);\r
-extern void GPIOPortIntRegister(unsigned long ulPort,\r
- void (*pfIntHandler)(void));\r
-extern void GPIOPortIntUnregister(unsigned long ulPort);\r
-extern long GPIOPinRead(unsigned long ulPort, unsigned char ucPins);\r
-extern void GPIOPinWrite(unsigned long ulPort, unsigned char ucPins,\r
- unsigned char ucVal);\r
-extern void GPIOPinTypeComparator(unsigned long ulPort, unsigned char ucPins);\r
-extern void GPIOPinTypeI2C(unsigned long ulPort, unsigned char ucPins);\r
-extern void GPIOPinTypeSSI(unsigned long ulPort, unsigned char ucPins);\r
-extern void GPIOPinTypeTimer(unsigned long ulPort, unsigned char ucPins);\r
-extern void GPIOPinTypeUART(unsigned long ulPort, unsigned char ucPins);\r
-\r
-#ifdef __cplusplus\r
-}\r
-#endif\r
-\r
-#endif // __GPIO_H__\r