summaryrefslogtreecommitdiff
path: root/gpib.c
diff options
context:
space:
mode:
authorMichael J. Chudobiak <mjc@avtechpulse.com>2013-01-30 09:20:13 -0500
committerMichael J. Chudobiak <mjc@avtechpulse.com>2013-01-30 09:20:13 -0500
commit38c32e1b436591a8fa711f6a6e23aa987a3dbcaa (patch)
tree8b28efb848b923f7a8f3be9eb22dcf3afc73d203 /gpib.c
parent5a8e5ef90f79184aa9e19dba8c61149638842d9c (diff)
don't fire interrupt every time status is checked
Diffstat (limited to 'gpib.c')
-rw-r--r--gpib.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/gpib.c b/gpib.c
index d9ef549..5d5fb74 100644
--- a/gpib.c
+++ b/gpib.c
@@ -296,9 +296,12 @@ void TNT_4882_Status(int status_register,unsigned int byte,int operation)
set_srq = (MR_4882_status[STB]&MR_4882_status[SRE])? TRUE : FALSE;
if(set_srq) { // If SRQ desired
- globals.Remote.vxi_service_request = 1;
TNT_Out(R_auxmr,F_reqt); // Set request true
- vxi11_fireinterrupt();
+ if (globals.Remote.vxi_service_request == 0) {
+ // don't fire interrupt every time status is checked
+ vxi11_fireinterrupt();
+ globals.Remote.vxi_service_request = 1;
+ }
} else {
globals.Remote.vxi_service_request = 0;
TNT_Out(R_auxmr,F_reqf); // Set request false