Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

lc8901a(Gpib) and 3512(ADC) fast polling repost. Labwindows CVI(on a win98 machine)

Okies I made a this lowlevel try to get a controlled
poll. I only pull 2 bytes but still its slow(around
60 polls per second). I also made some attempts with the IVI driver, which isn't workin that good either.
mabe i'm doing things in the wrong order, any poiters would be welcome.

---------8<------------- code
#include
#include
/**************************************************************************
* This program initalizes and accesses the buffer data in the ADC 3512 by *
* CAMAC access. *
*Switch settings are equal to 4.1.2.2 in ADC manual with internal switch * *
* set for internal buffer mode. Rear jumper set LAM active with * *
* 2 bytes in buffer. *
***************************************************************************/

#include
#include
#include

char GetSerialPollResponse(int);
int initalizeboard(void);
int initalizedevice(void);
void SetupADC(int);
short GetSRQ(int);

static int MyDev;
static int Myboard;
unsigned int MyRead[1] = {0};
unsigned int MyRetn[1] = {0};

int main()
{
int r, c,k=0,g,h;
short srqq;
unsigned int a;
double volts;

Myboard = initalizeboard();
MyDev = initalizedevice();

SetupADC(MyDev);

//srqq gets status of SRQ wait either 1 or 0
srqq = GetSRQ(MyDev);
g=time(0)+5;
//if srqq is not 1 there is no data to be read the program will end
if (srqq == 1)
{

do{
h=time(0);
if (srqq==1)
//if(1)
{


//initiates destructive read of 3512 buffer.
ibwrt (MyDev, "\x02\x00\x11", 3);
ibrd (MyDev, MyRead, 2);
k++;
//initializes LAM for 3512
// ibwrt (MyDev, "\x1a", 1);
// ibrd (MyDev, MyRetn, 2);

//gets status of SRQ signifing data is ready to be read.
srqq = GetSRQ(MyDev);
//If srqq is not 1 again the program will end
}
}while (h }
a = MyRead[0] & 8191;
// a = MyRead[1] & 8191;
printf("%d :: %8.3f\n",k,a*.0009884);
scanf("%d",&r);
return 0;
}

int initalizeboard()
{

//Initalizes the gpib board (not 8901a)
Myboard = ibfind ("gpib0");
ibpad (Myboard, 0);
ibrsc (Myboard, 1);
ibsic (Myboard);
ibsre (Myboard, 1);

//disables autoserial polling so the status of SRQ can be utilized.
ibconfig (Myboard, IbcAUTOPOLL, 1);

return Myboard;
}

int initalizedevice()
{
MyDev = ibdev (0, 2, NO_SAD, T10s, 1, 0);

//clear CAMAC
ibwrt (MyDev, "\x22", 1);
ibrd (MyDev, MyRetn, 2);

//assert inhibit (no data collection)
ibwrt (MyDev, "\x48", 1);
ibrd (MyDev, MyRetn, 2);

//set up for high speed block read 16bit
ibwrt (MyDev, "\x6A", 1);
ibrd (MyDev, MyRetn, 2);

//initalized CAMAC
ibwrt (MyDev, "\x21", 1);
ibrd (MyDev, MyRetn, 2);

return MyDev;
}

void SetupADC (int MyDev)
{
//clears LAM and buffer
ibwrt (MyDev, "\x0a\x00\x11", 3);
ibrd (MyDev, MyRetn, 2);

//enables LAM
ibwrt (MyDev, "\x1a\x00\x11", 3);
ibrd (MyDev, MyRetn, 2);

//writes control register settings (current 2120h)(least signif 1st)
ibwrt (MyDev, "\x10\x00\x11\x20\x21", 5);
ibrd (MyDev, MyRetn, 2);

}

short GetSRQ (int MyDev)
{
short e, f;
char d = 0;

//enables SRQ on occurance of LAM
ibwrt (MyDev, "\x41", 1);

//waits for SRQ (data is available)
WaitSRQ (0, &e);

//runs serial poll
//ibrsp (MyDev, &d);

//disables SRQ and clears Inhibit
ibwrt (MyDev, "\x40", 1);

//sends interface clear
ibsic (Myboard);

return e;

}

okies this polls, and works with SRQ/LAM but slow, very slow.

Ibspy log.
---------------------8<-------------

1. ibfind(gpib0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:15.810 Call Duration: 00:00:00.170
ibsta: 0x100 iberr: 0 ibcntl: 0(0x0)

2. ibpad(GPIB0, 0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:15.980 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 0(0x0)

3. ibrsc(GPIB0, 1)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:15.980 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 1 ibcntl: 0(0x0)

4. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:15.980 Call Duration: 00:00:00.050
ibsta: 0x130 iberr: 0 ibcntl: 0(0x0)

5. ibsre(GPIB0, 1)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.030 Call Duration: 00:00:00.000
ibsta: 0x130 iberr: 0 ibcntl: 0(0x0)

6. ibconfig(GPIB0, IbcAUTOPOLL (0x0007), 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.030 Call Duration: 00:00:00.000
ibsta: 0x130 iberr: 1 ibcntl: 0(0x0)

7. ibdev(0, 2, 0 (0x0), T10s (13), 1, 0x0000)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.030 Call Duration: 00:00:00.060
ibsta: 0x100 iberr: 0 ibcntl: 0(0x0)

8. ibwrt(UD0, """, 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.090 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 1(0x1)

9. ibrd(UD0, "#%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.090 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 2(0x2)

10. ibwrt(UD0, "H", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.090 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 1(0x1)

11. ibrd(UD0, "'%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.090 Call Duration: 00:00:00.050
ibsta: 0x100 iberr: 0 ibcntl: 2(0x2)

12. ibwrt(UD0, "j", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.140 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 1(0x1)

13. ibrd(UD0, "'%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.140 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 2(0x2)

14. ibwrt(UD0, "!", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.140 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 1(0x1)

15. ibrd(UD0, "#%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.140 Call Duration: 00:00:00.060
ibsta: 0x100 iberr: 0 ibcntl: 2(0x2)

16. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.200 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 3(0x3)

17. ibrd(UD0, "..", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.200 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 2(0x2)

18. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.250 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 3(0x3)

19. ibrd(UD0, "..", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.250 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 2(0x2)

20. ibwrt(UD0, "... !", 5 (0x5))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.250 Call Duration: 00:00:00.060
ibsta: 0x100 iberr: 0 ibcntl: 5(0x5)

21. ibrd(UD0, "..", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.310 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 2(0x2)

22. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.310 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 1(0x1)

23. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.360 Call Duration: 00:00:00.060
ibsta: 0x1168 iberr: 0 ibcntl: 1(0x1)

24. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.470 Call Duration: 00:00:00.000
ibsta: 0x100 iberr: 0 ibcntl: 1(0x1)

25. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.470 Call Duration: 00:00:00.060
ibsta: 0x170 iberr: 0 ibcntl: 5(0x5)

26. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.530 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

27. ibrd(UD0, "#%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.530 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

28. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.580 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

29. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.580 Call Duration: 00:00:00.060
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

30. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.640 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

31. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.640 Call Duration: 00:00:00.050
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

32. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.690 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

33. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.750 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

34. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.750 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

35. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.800 Call Duration: 00:00:00.000
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

36. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.800 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

37. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.860 Call Duration: 00:00:00.000
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

38. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.860 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

39. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.910 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

40. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.910 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

41. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:16.970 Call Duration: 00:00:00.000
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

42. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.020 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

43. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.020 Call Duration: 00:00:00.060
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

44. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.080 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

45. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.080 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

46. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.130 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

47. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.190 Call Duration: 00:00:00.000
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

48. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.190 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

49. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.190 Call Duration: 00:00:00.050
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

50. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.240 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

51. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.300 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

52. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.300 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

53. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.350 Call Duration: 00:00:00.000
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

54. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.350 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

55. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.400 Call Duration: 00:00:00.000
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

56. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.460 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

57. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.460 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

58. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.510 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

59. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.570 Call Duration: 00:00:00.000
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

60. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.570 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

61. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.620 Call Duration: 00:00:00.000
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

62. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.620 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

63. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.680 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

64. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.680 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

65. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.730 Call Duration: 00:00:00.060
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

66. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.790 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

67. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.840 Call Duration: 00:00:00.000
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

68. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.840 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

69. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.900 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

70. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.900 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

71. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.950 Call Duration: 00:00:00.000
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

72. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:17.950 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

73. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.010 Call Duration: 00:00:00.050
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

74. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.060 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

75. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.120 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

76. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.120 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

77. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.170 Call Duration: 00:00:00.000
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

78. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.170 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

79. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.230 Call Duration: 00:00:00.050
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

80. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.280 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

81. ibrd(UD0, "%%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.340 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

82. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.340 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

83. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.390 Call Duration: 00:00:00.000
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

84. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.390 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

85. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.450 Call Duration: 00:00:00.050
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

86. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.500 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

87. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.560 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

88. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.560 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

89. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.610 Call Duration: 00:00:00.060
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

90. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.670 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

91. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.670 Call Duration: 00:00:00.050
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

92. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.720 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

93. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.780 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

94. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.830 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

95. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.890 Call Duration: 00:00:00.000
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

96. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.890 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

97. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:18.940 Call Duration: 00:00:00.000
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

98. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.000 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

99. ibrd(UD0, "%%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.000 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

100. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.050 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

101. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.110 Call Duration: 00:00:00.050
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

102. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.160 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

103. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.220 Call Duration: 00:00:00.000
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

104. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.270 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

105. ibrd(UD0, "%%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.270 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

106. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.330 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

107. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.380 Call Duration: 00:00:00.000
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

108. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.440 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

109. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.440 Call Duration: 00:00:00.050
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

110. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.490 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

111. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.550 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

112. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.600 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

113. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.600 Call Duration: 00:00:00.060
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

114. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.660 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

115. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.710 Call Duration: 00:00:00.000
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

116. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.770 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

117. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.770 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

118. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.820 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

119. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.880 Call Duration: 00:00:00.050
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

120. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.930 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

121. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:19.990 Call Duration: 00:00:00.000
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

122. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:20.040 Call Duration: 00:00:00.000
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

123. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:20.040 Call Duration: 00:00:00.170
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

124. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:20.210 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

125. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:20.260 Call Duration: 00:00:00.110
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

126. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:20.370 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

127. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:20.430 Call Duration: 00:00:00.050
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

128. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:20.540 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

129. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:20.590 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

130. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:20.700 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

131. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:20.810 Call Duration: 00:00:00.000
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

132. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:20.870 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

133. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:20.920 Call Duration: 00:00:00.060
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

134. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:20.980 Call Duration: 00:00:00.100
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

135. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:21.080 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

136. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:21.190 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

137. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:21.250 Call Duration: 00:00:00.050
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

138. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:21.360 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

139. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:21.410 Call Duration: 00:00:00.060
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)

140. ibwrt(UD0, "...", 3 (0x3))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:21.520 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 3(0x3)

141. ibrd(UD0, "$%", 2 (0x2))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:21.580 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 2(0x2)

142. ibwrt(UD0, "A", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:21.690 Call Duration: 00:00:00.050
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

143. WaitSRQ(0, TRUE (1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:21.800 Call Duration: 00:00:00.000
ibsta: 0x1168 iberr: 0 ibcntl: 0(0x0)

144. ibwrt(UD0, "@", 1 (0x1))
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:21.850 Call Duration: 00:00:00.060
ibsta: 0x900 iberr: 0 ibcntl: 1(0x1)

145. ibsic(GPIB0)
Process ID: 0xFFFC8A6B Thread ID: 0xFFFC8513
Start Time: 16:48:21.910 Call Duration: 00:00:00.050
ibsta: 0x160 iberr: 0 ibcntl: 1(0x1)



Well thats about it. I'm going nowhere in getting this crate working controlled and fast, so any help woul be
appriciated.

/Anders
0 Kudos
Message 1 of 5
(3,362 Views)
Hello-

What is the problem with the given code? Is it too slow? Does it cause a hang?

Randy Solomonson
Application Engineer
National Instruments
0 Kudos
Message 2 of 5
(3,362 Views)
It's to slow, I was expecting an output of atleast 20-50kHz, shure this code performance will increase somewhat if i pull the maximum of 1024 words but still the code is too slow. Is there any shortcuts you can make? What I want is to get data as fast as possible.

/Anders
0 Kudos
Message 3 of 5
(3,362 Views)
There's a few suggestions:
-Try not to do an ibsic every cycle.
-Try installing a callback function for SRQ's instead of waiting for them.

Randy Solomonson
Application Engineer
National Instruments
0 Kudos
Message 4 of 5
(3,362 Views)
Hi,

Thanks, I'll try that.

/Anders.
0 Kudos
Message 5 of 5
(3,362 Views)