dio_dy4.h

来自「Curtiss-Wright Controls Embedded Computi」· C头文件 代码 · 共 126 行

H
126
字号
/* dio_dy4.h - Dy 4 VxWorks DIO Compatiablity Header *//* Copyright 2001-2004 Dy 4 Systems, Inc. *//*modification history--------------------01h,01Mar04,rcd -added diff dio for VME-183.01g,01dec04,rcd -ported to VME-183.01f,01mar04,tis added macro DIFFIO_LINES_MASK 01e,15oct03,dle added support for VME-18201d,28may03,tis added support for SCP/DCP-122 01c,10may02,aak support Diff I/O on VME-18101b,01apr02,tis added support for VME_71201a,04oct00,dle Create (from dy4179+, version 01a)*/#ifndef __INCdio_dy4h#define __INCdio_dy4h#ifdef __cplusplusextern "C" {#endif#ifdef VME_181#define DIO_LINES 	16#define DIF_LINES 	8	#define UPPER_MASK      0x0000FFFF     /* mask off upper bits in dioTest func */#endif#ifdef VME_182#define DIO_LINES 	14#define DIF_LINES 	8	#define UPPER_MASK      0x00003FFF     /* mask off upper bits in dioTest func */#endif#ifdef VME_183#define DIO_LINES 	14#define DIF_LINES 	8	#define UPPER_MASK      0x00003FFF     /* mask off upper bits in dioTest func */#define DIFF_DIO_GROUP1 0x3            /* bit definitions for difSelect */#define DIFF_DIO_GROUP2 0xC#define DIFF_DIO_GROUP3 0x30#define DIFF_DIO_GROUP4 0xC0#endif#ifdef SCP_122#define DIO_LINES       16#define DIF_LINES 	2#define UPPER_MASK      0x0000FFFF     /* mask off upper bits in dioTest func */#define DIFFIO_LINES_MASK 0x3#endif#ifdef VME_712#define DIO_LINES       8#define UPPER_MASK      0x000000FF     /* mask off upper bits in dioTest func */#endif#define RISING  	0#define FALLING 	1#define INPUT   	0#define OUTPUT  	1#define PIO_INT_BIT	0x10#define ISR_BASE_ADRS	0x300000	/* interrupt test ISRs' base address */#define LOWER_BITS      0x0F       /* mask to signify the lower 3 bits */#define UPPER_BITS      0xF0           /* mask to indicate the upper 3 bits *//* Function Prototypes *//* Digital I/O */#ifndef VME_182STATUS  dioInit(void);#endifSTATUS  dioConnect (UINT32 dioMask,FUNCPTR, int arg);STATUS  dioIntEnable (UINT32 dioMask);STATUS  dioIntDisable (UINT32 dioMask);STATUS  dioEdgeSet(UINT32 dioMask, int dioEdge);STATUS  dioDirectionSet(UINT32 dioMask,int dioDirection);STATUS  dioWrite (UINT32 dioMask, UINT32 value);STATUS  dioRead (UINT32 *pValue);#if defined (VME_181) || defined (SCP_122) || defined (VME_182) || defined (VME_183)/* Differential Digital IO on VME-181, VME-182 or SCP-122 */STATUS  difDioInit(UINT8);STATUS  difDioIntConnect (UINT32 dioMask,FUNCPTR, int arg);STATUS  difDioIntEnable (UINT8 dioMask);STATUS  difDioIntDisable (UINT8 dioMask);STATUS  difDioIntEdgeSet(UINT8 dioMask, BOOL dioEdge);STATUS  difDioWrite (UINT8 value);STATUS  difDioRead (UINT8 *pValue);#ifndef VME_183UINT16  bitsManipulation(UINT16 diomask, UINT16 RegVal);#endif#else /* VME-712 */UINT8  bitsManipulation(UINT8 diomask, UINT8 RegVal);#endif#ifdef __cplusplus}#endif#endif /* __INCdio_dy4h */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?