Okies I tried the IVI version from NI/lecroy, and I
don't ssem to get the LAM/SQR work, the WaitSRQ either times out or never does it. I might be missing something important here, if so please point it out.
code
---------------------------------------
#include
#include "lc8901a.h"
#include "lc8901a.c"
#include
static ViStatus lcGPIBstat5[100];
static ViStatus lcGPIBstat4;
static ViStatus lcGPIBstat3;
static ViBoolean X;
static ViBoolean Q;
static ViSession lcGPIB;
static ViInt32 databajs[1024];
static ViInt32 fff;
static int pcGPIB;
//unsigned int MyRetn[1] = {0};
void init_pcGPIB(void);
//have LAM at 1024 words on 3512.
int main ()
{
long int fis;
int d,g,h,k=0;
short int apa=0,LAM[32];
lc8901a_init ("GPIB::2", 6, 1, &lcGPIB);
lc8901a_Mode(lcGPIB,2,1);
lc8901a_SetSRQ(lcGPIB,1);
lc8901a_WaitSRQ(lcGPIB,3000,LAM,&X,&Q);
// this line above gives General protection fault at 0167:6380235B
g=time(0)+10;
//if(LAM[16]==1){
if(LAM[17]==1){
h=time(0);
lc8901a_Read(lcGPIB, 2, 0, 17, 512,100,databajs,&X,&Q);
k++;
// if i use the WaitSRQ here, something about invalid value pops up.
}
fis = (int)databajs[1];
fis = fis & 8191;
printf ("%8.3f\n ", fis*.0009884);
printf ("%d\n ", k);
scanf("%d",&d);
lc8901a_close (lcGPIB);
return 0;
}
the init call I asked about couple of weeks ago havent found any good solutio to this. the "GPIB::2" is sent
erroneously.
------------------IBspy log-------------------
1. iblines(0, 0x20FF)
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:23.470 Call Duration: 00:00:00.270
ibsta: 0x100 iberr: 0 ibcntl: 0(0x0)
2. ibfind(GPIB0)
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:23.630 Call Duration: 00:00:00.110
ibsta: 0x100 iberr: 0 ibcntl: 0(0x0)
3. ibsic(0)
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:23.740 Call Duration: 00:00:00.000
ibsta: 0x130 iberr: 0 ibcntl: 0(0x0)
4. ibsre(0, 1)
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:23.740 Call Duration: 00:00:00.060
ibsta: 0x130 iberr: 0 ibcntl: 0(0x0)
5. ibdev(0, 2, 0 (0x0), T3s (12), 1, 0x100A)
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:23.800 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 0(0x0)
6. ThreadIbsta()
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:23.800 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 0(0x0)
7. ibconfig(UD0, IbcREADDR (0x0006), 1 (0x1))
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:23.850 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 0(0x0)
8. ThreadIberr()
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:23.850 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 0(0x0)
9. ibconfig(0, IbcEndBitIsNormal (0x001A), 0 (0x0))
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:23.910 Call Duration: 00:00:00.000
ibsta: 0x130 iberr: 1 ibcntl: 0(0x0)
10. ibln(0, 2, NO_SAD (0), TRUE (1))
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:23.910 Call Duration: 00:00:00.000
ibsta: 0x130 iberr: 0 ibcntl: 1(0x1)
11. ibtmo(UD0, T10s (13))
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:23.910 Call Duration: 00:00:00.050
ibsta: 0x100 iberr: 12 ibcntl: 0(0x0)
> 12. ibdev(0, 4095, 0 (0x0), T10s (13), 1, 0x0000)
> Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
> Start Time: 16:11:23.960 Call Duration: 00:00:00.060
> ibsta: 0x8100 iberr: 4 ibcntl: 0(0x0)
> 13. ThreadIbsta()
> Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
> Start Time: 16:11:24.020 Call Duration: 00:00:00.000
> ibsta: 0x8100 iberr: 4 ibcntl: 0(0x0)
> 14. ThreadIberr()
> Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
> Start Time: 16:11:24.020 Call Duration: 00:00:00.000
> ibsta: 0x8100 iberr: 4 ibcntl: 0(0x0)
15. SetGpibStatusVariblesForThread(0x0100, 0, 0 (0x0))
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:24.020 Call Duration: 00:00:00.050
ibsta: 0x100 iberr: 0 ibcntl: 0(0x0)
16. ibconfig(UD0, IbcREADDR (0x0006), 1 (0x1))
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:24.070 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 1 ibcntl: 0(0x0)
17. ibconfig(UD0, IbcUnAddr (0x001B), 1 (0x1))
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:24.130 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 0(0x0)
18. ibwrt(UD0, "j", 1 (0x1))
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:24.130 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 1(0x1)
19. ThreadIbcntl()
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:24.130 Call Duration: 00:00:00.050
ibsta: 0x100 iberr: 0 ibcntl: 1(0x1)
20. ibconfig(UD0, IbcUnAddr (0x001B), 0 (0x0))
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:24.180 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 1 ibcntl: 1(0x1)
21. ibconfig(UD0, IbcUnAddr (0x001B), 1 (0x1))
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:24.180 Call Duration: 00:00:00.060
ibsta: 0x100 iberr: 0 ibcntl: 1(0x1)
22. ibconfig(0, IbcAUTOPOLL (0x0007), 1 (0x1))
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:24.240 Call Duration: 00:00:00.000
ibsta: 0x130 iberr: 1 ibcntl: 2(0x2)
23. ibwait(UD0, 0x0000)
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:24.240 Call Duration: 00:00:00.050
ibsta: 0x100 iberr: 0 ibcntl: 1(0x1)
24. ibwait(UD0, 0x0000)
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:24.290 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 1(0x1)
25. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:24.290 Call Duration: 00:00:00.060
ibsta: 0x100 iberr: 0 ibcntl: 1(0x1)
26. ThreadIbcntl()
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:24.350 Call Duration: 00:00:00.050
ibsta: 0x100 iberr: 0 ibcntl: 1(0x1)
27. ibconfig(UD0, IbcUnAddr (0x001B), 0 (0x0))
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:24.400 Call Duration: 00:00:00.990
ibsta: 0x900 iberr: 1 ibcntl: 1(0x1)
28. ibwait(UD0, 0x0000)
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:25.390 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 1 ibcntl: 1(0x1)
29. ibconfig(UD0, IbcUnAddr (0x001B), 1 (0x1))
Process ID: 0xFFFDF163 Thread ID: 0xFFFCDA07
Start Time: 16:11:25.450 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)