From 254a0dce912e252e78a42eead98429dc0b27f1ba Mon Sep 17 00:00:00 2001 From: Diego Barrios Romero Date: Sat, 17 Nov 2018 07:42:39 +0100 Subject: Add function to disable comparator --- src/devices/features/tier2.rs | 11 +++++++++++ src/lib.rs | 4 ++++ 2 files changed, 15 insertions(+) (limited to 'src') diff --git a/src/devices/features/tier2.rs b/src/devices/features/tier2.rs index 5d7ec92..17502e6 100644 --- a/src/devices/features/tier2.rs +++ b/src/devices/features/tier2.rs @@ -58,4 +58,15 @@ where self.config = config; Ok(()) } + /// Disable comparator (default) + /// + /// This will set the ALERT/RDY pin to high-impedance. + /// The comparator can be enabled by setting the comparator queue. + /// See [`set_comparator_queue()`](struct.Ads1x1x.html#method.set_comparator_queue) + pub fn disable_comparator(&mut self) -> Result<(), Error> { + let config = self.config.with_high(BitFlags::COMP_QUE1).with_high(BitFlags::COMP_QUE0); + self.iface.write_register(Register::CONFIG, config.bits)?; + self.config = config; + Ok(()) + } } diff --git a/src/lib.rs b/src/lib.rs index 4abe8f8..b7b3ce0 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -12,6 +12,7 @@ //! - Set the comparator mode. See: [`set_comparator_mode()`]. //! - Set the comparator polarity. See: [`set_comparator_polarity()`]. //! - Set the comparator latching. See: [`set_comparator_latching()`]. +//! - Disable the comparator. See: [`disable_comparator()`]. //! //! [`into_continuous()`]: struct.Ads1x1x.html#method.into_continuous //! [`read()`]: struct.Ads1x1x.html#method.read @@ -20,6 +21,7 @@ //! [`set_comparator_mode()`]: struct.Ads1x1x.html#method.set_comparator_mode //! [`set_comparator_polarity()`]: struct.Ads1x1x.html#method.set_comparator_polarity //! [`set_comparator_latching()`]: struct.Ads1x1x.html#method.set_comparator_latching +//! [`disable_comparator()`]: struct.Ads1x1x.html#method.disable_comparator //! //! ## The devices //! @@ -267,6 +269,8 @@ impl BitFlags { const COMP_MODE : u16 = 0b0000_0000_0001_0000; const COMP_POL : u16 = 0b0000_0000_0000_1000; const COMP_LAT : u16 = 0b0000_0000_0000_0100; + const COMP_QUE1 : u16 = 0b0000_0000_0000_0010; + const COMP_QUE0 : u16 = 0b0000_0000_0000_0001; } -- cgit v1.2.3-54-g00ecf