diff options
-rw-r--r-- | gpib.c | 7 |
1 files changed, 5 insertions, 2 deletions
@@ -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 |