Documentation is available at http://j123b567.github.io/scpi-parser.
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.
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 version | v1999.0 |
Supported command patterns
Feature | Pattern example |
---|---|
Short and long form | MEASure means MEAS or MEASURE command |
Common command | *CLS |
Compound command | CONFigure:VOLTage |
Query command | MEASure:VOLTage? , *IDN? |
Optional keywords | MEASure:VOLTage[:DC]? |
Numeric keyword suffix Multiple identical capabilities | OUTput#:FREQunecy |
Supported parameter types
Type | Example |
---|---|
Decimal | 10 , 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 data | MINimum , DEFault , INFinity |