7.Use INITiate:IMMediate to activate the rightmost (INSerter) digitizer.

8.Beginning with the leftmost (GENerator) digitizer, abort each digitizer before using the Local bus again.

Example Program This program demonstrates how to use multiple digitizers to transfer readings, interleaved, to an HP E1488 memory card (consumer). The program takes 10 readings on both channels of two digitizers. Therefore, 10 frames of data (40 readings) are sent to the memory card. The example follows the programming procedure listed above.

LBUSINTR.C

/* LBUSINTR.C - This program demonstrates how to transfer interleaved readings */ /* from multiple digitizers to the HP E1488 memory card. In an interleaved transfer, */ /* each digitizer transfers one set of readings or one reading (if using a */

/* single channel) per block. The readings are taken directly from the A/Ds. */ /* The leftmost digitizer is set to the GENerate mode and the inner digitizer */ /* is set to the INSert mode. */

/* Include the following header files */

#include

<stdio.h>

 

#include

<stdlib.h>

 

#include

<string.h>

 

#include

<malloc.h>

 

#include

<cfunc.h>

/* This file is from the HP-IB Command Library Disk */

#define ADDR_G 70905L #define ADDR_I 70906L #define ADDR_MEM 70903L

/* I/O path from the PC to the generator digitizer */ /* I/O path from the PC to the inserter digitizer */ /* I/O path from the PC to the memory card */

/* Function Prototypes */

void rst_clr(long address); void configure(void); void initiate(void);

void check_error(char *func_tion, long address);

Continued on Next Page

408 Local Bus Interleaved Transfers

Appendix D

Page 408
Image 408
HP E1429A manual Lbusintr.C