scpi_contrib/
lib.rs

1//! This crate aims to implement higher level abstraction for the SCPI protocol. See [scpi] crate for the basic command parser.  
2//!
3//! It does not require the std library (i.e. it's `no_std` compatible) or a system allocator (useful for embedded).
4//!
5//!
6//! # Using this crate
7//! Add `scpi` and `scpi-contrib` to your dependencies:
8//! ```toml
9//! [dependencies]
10//! scpi = "1.0"
11//! scpi-contrib = "1.0"
12//! ```
13//!
14//! # Features
15#![doc = document_features::document_features!()]
16//! (See rustdoc/docs.rs for available features)
17//!
18//! # References
19//! 1. [IEEE488.2](https://standards.ieee.org/ieee/488.2/718/)
20//! 2. [SCPI-99](https://www.ivifoundation.org/docs/scpi-99.pdf)
21
22#[cfg(all(feature = "alloc", not(feature = "std")))]
23extern crate alloc;
24#[cfg(feature = "std")]
25extern crate std as alloc;
26
27pub mod ieee488;
28pub mod scpi1999;
29
30/// Standard SCPI instrument classes
31#[cfg(feature = "unproven")]
32pub mod classes;