Skip to content

gotmc/visa

Repository files navigation

visa

Go-based Virtual Instrument Software Architecture (VISA) resource manager.

GoDoc Go Report Card License Badge

Background

The primary purpose of this package is to parse a VISA resource address string in order to create a new VISA resource, which abstracts the interface type—USBTMC, TCPIP, ASRL. By registering a driver for the interface type, application developers can decide which interface types to support and which to exclude, so as to not unnecessarily bloat their packages.

The primary source of information is the VPP-4.3: The VISA Library dated June 19, 2014, which can be found at the IVI Specifications webpage.

Usage

In order to not bloat an end developer's application, the desired HW interface driver(s) have to be registered, similar to Go's SQL package. Currently, there are TCPIP, USBTMC, and Serial (ASRL) drivers available.

"github.com/gotmc/visa"
_ "github.com/gotmc/visa/drivers/tcpip"
_ "github.com/gotmc/visa/drivers/usbtmc"
_ "github.com/gotmc/visa/drivers/asrl"

Installation

$ go get github.com/gotmc/visa

Documentation

Documentation can be found at either:

Contributing

Contributions are welcome! To contribute please:

  1. Fork the repository
  2. Create a feature branch
  3. Code
  4. Submit a pull request

Testing

Prior to submitting a pull request, please run:

$ make check
$ make lint

To update and view the test coverage report:

$ make cover

License

visa is released under the MIT license. Please see the LICENSE.txt file for more information.