From f8d0aa8ec41a50dee5b2b763b84c87c416eba5a7 Mon Sep 17 00:00:00 2001 From: Jan Breuer <jan.breuer@jaybee.cz> Date: 周六, 25 4月 2015 23:02:44 +0800 Subject: [PATCH] Update readme with Multiple Identical Capabilities --- README.md | 33 +++++++++++++++++++-------------- 1 files changed, 19 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index c8f2217..7b8fbbb 100644 --- a/README.md +++ b/README.md @@ -13,12 +13,17 @@ A command pattern is divided by colon ":" to show command hierarchy - Pattern "SYSTem:VERsion?" mathes strings "SYST:version?", "system:ver?", "SYST:VER?", ... + Pattern "SYSTem:VERsion?" matches strings "SYST:version?", "system:ver?", "SYST:VER?", ... The SCPI standard also uses brackets "[]" to define optional parts of a command. - Pattern "SYSTem:ERRor[:NEXT]?" mathes "SYST:ERR?", "system:err?" and also "system:error:next?", ... + Pattern "SYSTem:ERRor[:NEXT]?" matches "SYST:ERR?", "system:err?" and also "system:error:next?", ... +Special character `#` represents number so it is possible to define pattern according to SCPI-99:6.2.5.2 Multiple Identical Capabilities + + Pattern "OUTput#:FREQuency" matches "OUT:FREQ" as well as "OUT3:FREQ" and "output10:frequency". + +Appropriate numbers are available using function `SCPI_CommandNumbers` Command callback ----------- @@ -41,14 +46,14 @@ Source codes are divided into a few files to provide better portability to other systems. -- *libscpi/parser.c* - provides the core parser library -- *libscpi/error.c* - provides basic error handling (error queue of the instrument) -- *libscpi/ieee488.c* - provides basic implementation of IEEE488.2 mandatory commands -- *libscpi/minimal.c* - provides basic implementation of SCPI mandatory commands -- *libscpi/utils.c* - provides string handling routines and conversion routines -- *libscpi/units.c* - provides handling of special numners (DEF, MIN, MAX, ...) and units -- *libscpi/fifo.c* - provides basic implementation of error queue FIFO -- *libscpi/debug.c* - provides debug functions +- *libscpi/src/parser.c* - provides the core parser library +- *libscpi/src/error.c* - provides basic error handling (error queue of the instrument) +- *libscpi/src/ieee488.c* - provides basic implementation of IEEE488.2 mandatory commands +- *libscpi/src/minimal.c* - provides basic implementation of SCPI mandatory commands +- *libscpi/src/utils.c* - provides string handling routines and conversion routines +- *libscpi/src/units.c* - provides handling of special numners (DEF, MIN, MAX, ...) and units +- *libscpi/src/fifo.c* - provides basic implementation of error queue FIFO +- *libscpi/src/debug.c* - provides debug functions - *examples/test-parser* - is the basic non-interactive demo of the parser - *examples/test-interactive* - is the basic interactive demo of the parser @@ -75,9 +80,9 @@ scpi_interface_t scpi_interface = { .write = myWrite, .error = NULL, - .reset = NULL, - .test = NULL, - .srq = NULL, + .reset = NULL, /* Called from SCPI_CoreRst */ + .test = NULL, /* Called from SCPI_CoreTstQ */ + .control = NULL, }; ``` @@ -116,7 +121,7 @@ A test implementation of function myWrite, which outputs everything to stdout, could be ```c -size_t myWrite(scpi_context_t * context, const char * data, size_t len) { +size_t myWrite(scpi_t * context, const char * data, size_t len) { (void) context; return fwrite(data, 1, len, stdout); } -- Gitblit v1.9.1