X-Git-Url: http://git.zerfleddert.de/cgi-bin/gitweb.cgi/rigol/blobdiff_plain/b74fea90bd5429ab527016eb89d98b4c6a246e68..713be7a43ed11947c358fc67c11b9df7b0be204c:/usbtmc.c diff --git a/usbtmc.c b/usbtmc.c index d652494..8a35dd3 100644 --- a/usbtmc.c +++ b/usbtmc.c @@ -103,6 +103,16 @@ int usbtmc_sendscpi(usb_dev_handle *dev, char* cmd, return 0; } +void usbtmc_claim(usb_dev_handle *sc) +{ + usb_claim_interface(sc, 0); +} + +void usbtmc_release(usb_dev_handle *sc) +{ + usb_release_interface(sc, 0); +} + //Initialize the scope. usb_dev_handle* usbtmc_initscope(void) { int r; @@ -116,13 +126,12 @@ usb_dev_handle* usbtmc_initscope(void) { if (!dev) { printf("No scope found.\n"); exit(1); - } else { - printf("Scope found.\n"); } - usb_claim_interface(dev,0); + usbtmc_claim(dev); //The following code isn't really necessary, the program works //OK without it too. r=usb_control_msg(dev, 0xC8, 9, 0, 0, (char*)buff, 4, 1000); + usbtmc_release(dev); if (r < 0) { fprintf (stderr, "Error %d sending init message: %s\n", r, strerror (-r)); @@ -138,6 +147,5 @@ usb_dev_handle* usbtmc_initscope(void) { void usbtmc_close(usb_dev_handle *sc) { //Free up and exit - usb_release_interface(sc,0); usb_close(sc); }