Go to file
alexis 894edf79c1 Add meson.build 2023-02-19 14:03:12 -07:00
.github/workflows coverage: fix build with c++ 2023-02-01 10:40:32 +01:00
examples examples: provide real c++ example 2023-02-01 10:36:48 +01:00
libscpi build: allow compilation by C++ compiler 2023-02-01 11:21:12 +01:00
.gitignore Add code coverage support 2015-11-25 19:31:38 +01:00
LICENSE Fix license wordings to correspond with BSD-2-Clause 2018-07-13 19:57:31 +02:00
Makefile Add building of shared library 2015-10-01 11:03:03 +02:00
README.md doc: update coverage adn build status badge 2023-01-16 15:42:28 +01:00
meson.build Add meson.build 2023-02-19 14:03:12 -07:00

README.md

SCPI parser library v2

Build status Coverage Status

Documentation

Documentation is available at http://j123b567.github.io/scpi-parser.

Examples

Library contains several examples of usage but please note, that this code is just for educational purpose and not production ready. Examples are from several contributors and they are not tested and it is also not known, if they really work or can compile at all.

The core library itself is well tested and has more then 93% of the code covered by unit tests and integration tests and tries to be SCPI-99 compliant as much as possible.

About

SCPI Parser library aims to provide parsing ability of SCPI commands on instrument side. All commands are defined by its patterns eg: "STATus:QUEStionable:EVENt?".

Source codes are published with open source BSD 2-Clause License.

SCPI parser library is based on these standards

SCPI version compliance

SCPI versionv1999.0

Supported command patterns

FeaturePattern example
Short and long formMEASure means MEAS or MEASURE command
Common command*CLS
Compound commandCONFigure:VOLTage
Query commandMEASure:VOLTage?, *IDN?
Optional keywordsMEASure:VOLTage[:DC]?
Numeric keyword suffix
Multiple identical capabilities
OUTput#:FREQuency

Supported parameter types

TypeExample
Decimal10, 10.5
Decimal with suffix-5.5 V, 1.5 KOHM
Hexadecimal#HFF
Octal#Q77
Binary#B11
String"text", 'text'
Arbitrary block#12AB
Program expression(1)
Numeric list(1,2:50,80)
Channel list(@1!2:3!4,5!6)
Character dataMINimum, DEFault, INFinity