* I need to assign a delay data to each mode, so Mode should have a value + delay ```rust #[repr(u16)] #[derive(Clone, Copy)] pub enum Mode { PowerDown = 0x00, Single = 0x01, Cont10Hz = 0x02, Cont20Hz = 0x04, Cont50Hz = 0x06, Cont100Hz = 0x08, Cont200Hz = 0x0A, Cont1Hz = 0x0C, SelfTest = 0x10, } pub struct mode_values { value:u8, ready_check:std::time::Duration } //actually I'm doing something like: impl From for std::time::Duration { fn from(mode: Mode) -> Self { match mode { Mode::Cont10Hz => std::time::Duration::from_millis(50), Mode::Cont20Hz => std::time::Duration::from_millis(25), Mode::Cont50Hz => std::time::Duration::from_millis(10), Mode::Cont100Hz => std::time::Duration::from_millis(5), Mode::Cont200Hz => std::time::Duration::from_micros(2500), Mode::Cont1Hz => std::time::Duration::from_millis(500), _ => std::time::Duration::from_micros(0), } } } ```