Keysight E8491B IEEE 1394 PC Link to VXI User Guide 61Using this Chapter VXI Programming Using the IEEE 1394 Serial Busreading. Depending on the storage formats of your particular instruments,swapping may not be necessary.2 2. This manual is included on the Keysight I/O Libraries CD. By viewing themanual from the CD, you can cut and paste this program into yourdevelopment environment.Storing Readings in Shared Memory - SICL ExampleThis example uses the E1410 VXIplug&play driver to configure the multimeter,take the readings, and store them in E8491B shared memory. SICL functions areused to transfer the readings from shared memory to the PC.// SHAR_SICL.CPP - This program demonstrates how to access the// E8491B’s shared memory. The program stores readings taken by// the E1410 multimeter in E8491B shared memory, and then// transfers those readings from shared memory to the computer.#include "sicl.h"#include #include #include // project files: SHAR_SICL.cpp, SICL32.lib// set up byte swap function for readings transferred from// E8491B shared memory to the PC#define SWAP_FLOAT64(rdgs) \{ unsigned char src[8]; \*((double *)src) = *((double *)rdgs); \((unsigned char *) (rdgs))[0] = ((unsigned char*) (src))[7]; \((unsigned char *) (rdgs))[1] = ((unsigned char*) (src))[6]; \((unsigned char *) (rdgs))[2] = ((unsigned char*) (src))[5]; \((unsigned char *) (rdgs))[3] = ((unsigned char*) (src))[4]; \((unsigned char *) (rdgs))[4] = ((unsigned char*) (src))[3]; \((unsigned char *) (rdgs))[5] = ((unsigned char*) (src))[2]; \((unsigned char *) (rdgs))[6] = ((unsigned char*) (src))[1]; \((unsigned char *) (rdgs))[7] = ((unsigned char*) (src))[0]; \}void main(void){INST e8491; // handle for SICL session to E8491INST e1410; // handle for SICL session to E1410struct vxiinfo info; // structure for data returned byivxirminfounsigned long start_addr; // starting address of shared memorydouble rdgs[8000]; // array for readings from sharedmemoryshort i;unsigned long map; // memory map space// install SICL error handlerionerror(I_ERROR_EXIT);