📄 gio270.h
字号:
/*
DM270 ARM Evaluation Software
(c)Texas Instruments 2003
*/
/** \defgroup GIO General Purpose I/O (GIO) */
/*@{*/
/** \file gio270.h
\brief General Purpose I/O (GIO) related APIs
Also refer to DM270 register manual for details
*/
#ifndef __GIO_270_H__
#define __GIO_270_H__
#include <system/armsys270.h>
#define GIO_OUTPUT 0
#define GIO_INPUT 1
#define GIO_INT_EDGE_RISE_SIDE 0
#define GIO_INT_EDGE_FALL_SIDE 1
#define GIO_INT_EDGE_BOTH_SIDE 2
#define GIO25_MODE_NORMAL 0
#define GIO25_MODE_MIRQ 1
#define GIO25_MODE_MRST 2
/**
\brief GIO ID
*/
typedef enum {
GIO0 , ///< GIO - 0
GIO1 , ///< GIO - 1
GIO2 , ///< GIO - 2
GIO3 , ///< GIO - 3
GIO4 , ///< GIO - 4
GIO5 , ///< GIO - 5
GIO6 , ///< GIO - 6
GIO7 , ///< GIO - 7
GIO8 , ///< GIO - 8
GIO9 , ///< GIO - 9
GIO10 , ///< GIO - 10
GIO11 , ///< GIO - 11
GIO12 , ///< GIO - 12
GIO13 , ///< GIO - 13
GIO14 , ///< GIO - 14
GIO15 , ///< GIO - 15
GIO16 , ///< GIO - 16
GIO17 , ///< GIO - 17
GIO18 , ///< GIO - 18
GIO19 , ///< GIO - 19
GIO20 , ///< GIO - 20
GIO21 , ///< GIO - 21
GIO22 , ///< GIO - 22
GIO23 , ///< GIO - 23
GIO24 , ///< GIO - 24
GIO25 , ///< GIO - 25
GIO26 , ///< GIO - 26
GIO27 , ///< GIO - 27
GIO28 , ///< GIO - 28
GIO29 , ///< GIO - 29
GIO30 , ///< GIO - 30
GIO31 , ///< GIO - 31
GIO32 , ///< GIO - 32
GIO33 , ///< GIO - 33
GIO_MAX
} GIO_ID;
/**
\brief GIO Configuration parameters
*/
typedef struct {
Uint8 dir; ///< GIO direction, 0:GIO_OUTPUT, 1:GIO_INPUT
BOOL invert; ///< TRUE: invert GIO input, FALSE: do NOT invert GIO input. Only valid when dir = GIO_INPUT
BOOL altUse; ///< TRUE: Use alternate function of GIO, FALSE: Use pin as normal GIO
BOOL chatterInvalid; ///< Used only when dir = GIO_INPUT, \n TRUE:Data is imported only when certain level of interval longer than interval set in register NCHAT is applied \n FALSE: Data is imported in normal way \n Use GIO_setChatterWidth() to set NCHAT register
} GIO_ConfigData;
STATUS GIO_setConfig( GIO_ID gioID, GIO_ConfigData *gioConfig );
STATUS GIO_setAsInt( GIO_ID gioID, BOOL gioAsInt, Uint8 intEdge);
STATUS GIO_setGio25Mode( Uint8 gio25Mode );
STATUS GIO_setBit( GIO_ID gioID );
STATUS GIO_clearBit( GIO_ID gioID );
Uint8 GIO_getBit( GIO_ID gioID );
STATUS GIO_setChatterWidth( Uint8 width);
BOOL GIO_isNormalMode( GIO_ID gioID );
#endif /* __GIO_270_H__ */
/*@}*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -