flipdot_serial/
lib.rs

1//! Tools for communicating with Luminator signs over serial.
2//!
3//! For the basic task of sign communication, you likely want to use the high-level API
4//! in the [`flipdot`] crate instead.
5//!
6//! However, you can use the [`configure_port`] function to configure serial port appropriately
7//! if you're doing custom lower-level communication.
8//!
9//! Intended only for hobbyist and educational purposes. Not affiliated with Luminator in any way.
10//!
11//! # Examples
12//!
13//! ```no_run
14//! use std::time::Duration;
15//!
16//! # fn main() -> Result<(), Box<dyn std::error::Error>> {
17//! #
18//! let mut port = serial::open("COM3")?;
19//! flipdot_serial::configure_port(&mut port, Duration::from_secs(5))?;
20//! // Now ready for communication with a sign (8N1 19200 baud).
21//! #
22//! # Ok(()) }
23//! ```
24//!
25//! [`flipdot`]: https://docs.rs/flipdot
26#![doc(html_root_url = "https://docs.rs/flipdot-serial/0.8.0")]
27#![deny(
28    missing_copy_implementations,
29    missing_debug_implementations,
30    trivial_casts,
31    trivial_numeric_casts,
32    unsafe_code
33)]
34#![warn(
35    missing_docs,
36    unused_extern_crates,
37    unused_import_braces,
38    unused_qualifications,
39    unused_results
40)]
41
42mod serial_port;
43mod serial_sign_bus;
44
45pub use self::serial_port::configure_port;
46pub use self::serial_sign_bus::SerialSignBus;