The PRL-USBIO-1 module provides USB control of PRL switches and scanners via USB. The module can also be used to control 3rd-party equipment and/or to provide triggers.
Each of 5 ports A-E contains 8 pairs of signal/ground pins, Bits 0-7. Each port may be configured for input or output. Ports A, B, C, and E have 8 available bits.
For Port D only, the 3 uppermost bits are reserved for the module ID (000 - 111 binary, corresponding to 0 - 7 decimal). The ID pins are pulled up internally, for a default ID of 111 = 7, and can be pulled down by grounding one or more pins with standard jumpers.
The remaining 5 bits D0 - D4 are available for I/O.
When configured as outputs, each signal pin will be shorted to GND or will output a nominal 5 V signal, depending on the 5-bit or 8-bit value written to the corresponding port.
When configured as inputs, each port will read a 5-bit or 8-bit value, depending on whether the signal pins read a 0 (< 0.8 V, nominal ) or 1 (> 2.0 V, nominal) at their inputs.
Ports A - D are connected to an MCP23S17 serial port expander which can source or sink 25 ma per pin, with the absolute maximum on VDD not exceed 125ma and on VSS not to exceed 150 ma. Ports A and B share one MCP23S17 device, and Ports C and D share another MCP23S17 device, so each device can handle the rated current on VDD and VSS.
For example, 3 pins on each device can source a full 25 ma each and 4 pins on each device could sink 25 ma each and stay within absolute maximums.
Port E is driven directly off the Microchip PIC18F2550 CPU, and current on those pins varies by pin, but typically 8 - 10 ma. All of the port pins have a 5.1 ohm series resistor.
Power is supplied via USB.
LabVIEW and C++ software examples, with source code, are provided as:
- You will need install our PRLIO package, which includes a C++ app (with source) and the USB driver:
- For Windows 7/64-bit
- For Windows 7/32-bit
- Run the appropriate version for your bitness.
- Be sure to install both the application files and the drivers (selected by default)
- A LabVIEW application is here:
- Download LabVIEW package.
- If you don't have the full LabVIEW installed you can run the .exe by installing the LabVIEW runtime engine:
- For Windows 7/64-bit.
- Tested only with 64-bit, for now
- If you have the full LabVIEW installed you can run and edit the .vi and the sub-vis.
- Version 2017 or later. Contact us if you need them down-saved for an older version.
- Known issues:
- The LV application is clumsy for controlling two USB devices simultaneously, unless you're programming them both similarly, because the LV application does not "read back" the configuration of the newly-selected device when the Device ID is changed, so you have to keep re-entering the settings for different modules.
- Presently the LV app configures, reads, and writes all ports on the selected ID, and there's no option to program only a subset of them.