X-Git-Url: http://git.zerfleddert.de/cgi-bin/gitweb.cgi/rigol/blobdiff_plain/b74fea90bd5429ab527016eb89d98b4c6a246e68..7df76f49adf30ac260c99649678b084c9b6c282b:/usbtmc.h diff --git a/usbtmc.h b/usbtmc.h index 175511e..bae36da 100644 --- a/usbtmc.h +++ b/usbtmc.h @@ -1,3 +1,24 @@ -int usbtmc_sendscpi(usb_dev_handle *dev, char* cmd, unsigned char *resp, int resplen); -usb_dev_handle* usbtmc_initscope(void); -void usbtmc_close(usb_dev_handle *sc); +struct usbtmc_header { + unsigned char MsgID; + unsigned char bTag; + unsigned char bTagInverse; + unsigned char Reserved3; + uint32_t TransferSize; + unsigned char bmTransferAttributes; + unsigned char TermChar; /* Only in REQUEST_DEV_DEP_MSG_IN */ + unsigned char Reverved10; + unsigned char Reverved11; +} __attribute__ ((__packed__)); + +#define USBTMC_DEV_DEP_MSG_OUT 0x1 +#define USBTMC_REQUEST_DEV_DEP_MSG_IN 0x2 +#define USBTMC_DEV_DEP_MSG_IN 0x2 + +#define USBTMC_TRANSFERATTRIB_EOM (1<<0) +#define USBTMC_TRANSFERATTRIB_TERMCHAR (1<<1) + +int usbtmc_sendscpi(struct usb_dev_handle *dev, char* cmd, unsigned char *resp, int resplen); +struct usb_dev_handle* usbtmc_initscope(void); +void usbtmc_close(struct usb_dev_handle *sc); +void usbtmc_claim(struct usb_dev_handle *sc); +void usbtmc_release(struct usb_dev_handle *sc);