ohms
Electrical units library for embedded Rust targets focusing on ease-of-use and performance.
Supports no_std environments.
Greatly inspired by the fugit crate.
All units are stored internally as u64 or i64 in their base unit.
Supported Units
- Current (μA, mA, A)
- Resistance (mΩ, Ω, kΩ, MΩ)
- Voltage (μV, mV, V, kV)
Extension Traits
Types implement their own FromInteger and FromFloat traits for convenience on the following types:
u8u16u32u64i8i16i32i64f32f64
Ohm's Law
The Current, Resistance and Voltage types follow the Ohm's Law rules.
This means that you can use the / and * operators to calculate the missing value.
For example, Voltage / Current will return a Resistance value.
Installation
You can add this crate via crates.io:
$ cargo add ohms
Usage
use *;
let voltage = 5.volts;
let current = 1.milli_amps;
let resistance = voltage / current;
assert_eq!;
Documentation
You can find the documentation here.