
Using the I/O Address Map
38
DAI12-4(FIT)GY
Sample Program
/*======================================================
Sample program 3
DEVICE ID: 0
Mode:
Clock Mode, Partially Simultaneous
Conversion
Channel:
0 to 3ch
Range:
-10 to 10V
Internal Clock:
1sec (250ns x 4,000,000)
Interrupt: IRQ5 11 times
====================================================== */
#include <stdio.h>
#include <conio.h>
#include <dos.h>
/* ----- Constant -------------------------------------- */
#define ADR
0x0800
/* I/O address */
#define CH
4
/* Channels */
#define NUM
11
/* Conversion Times */
#define IRQ5 0
/* IRQ5 */
#define IRQ7 1
/* IRQ7 */
#define IRQ9 2
/* IRQ9 */
volatile unsigned int
DaData[CH][NUM];
/* D/A Data */
volatile int
intcnt = 0;
/* interrupt counter */
volatile int
IrqLevel = IRQ5;
/* interrupt level */
volatile int
Irqsts;
/* interrupt level */
int
OrgMasterImr, OrgSlaveImr;
/* original IMR */
unsigned char
IntVector[3] = { 0x0d, 0x0f,
0x71 };
/* interruput vector */
unsigned char
PicMask[3] = { 0xdf, 0x7f, 0xfd };
/* mask bit */
unsigned char
IsrClear[3] = { 0x65, 0x67, 0x61 };
/* ISR clear */
unsigned char
IntEnable[3] = { 0x81, 0x82,
0x84 };
/* interrupt enable */
/* ----- Prototype ------------------------------------- */
void main( void );
void Initialize( void );
/* initialize */
void ChgVect( void );
/* change vector */
void ResVect( void );
/* restore vector */
void _interrupt _far inthandler( void );
/* interrupt handler */
void ( _interrupt _far *OrgVect)();
/* original interrupt vector */
Содержание DAI12-4FITGY
Страница 1: ...F eIT Series Isolated Analog Output Module DAI12 4 FIT GY User s Manual CONTEC CO LTD...
Страница 47: ...Using the I O Address Map 42 DAI12 4 FIT GY...
Страница 64: ......