diff options
author | Diego Barrios Romero <eldruin@gmail.com> | 2018-11-21 09:35:37 +0100 |
---|---|---|
committer | Diego Barrios Romero <eldruin@gmail.com> | 2018-11-21 09:35:37 +0100 |
commit | 5485d9655e2ab3a6d04e5f69b246f5db4d2c5936 (patch) | |
tree | 84bb1e825656d4c523b65edc5d7780fbb060c8cc | |
parent | e4a1ac5a04d021ef026c559354e9913ae59864d8 (diff) | |
download | ads1x1x-async-5485d9655e2ab3a6d04e5f69b246f5db4d2c5936.tar.gz ads1x1x-async-5485d9655e2ab3a6d04e5f69b246f5db4d2c5936.tar.xz ads1x1x-async-5485d9655e2ab3a6d04e5f69b246f5db4d2c5936.zip |
Code formatting
-rw-r--r-- | examples/linux.rs | 2 | ||||
-rw-r--r-- | src/channels.rs | 4 | ||||
-rw-r--r-- | src/construction.rs | 16 | ||||
-rw-r--r-- | src/conversion.rs | 11 | ||||
-rw-r--r-- | src/devices/common.rs | 4 | ||||
-rw-r--r-- | src/devices/features/tier1.rs | 34 | ||||
-rw-r--r-- | src/devices/features/tier2.rs | 42 | ||||
-rw-r--r-- | src/devices/mod.rs | 2 | ||||
-rw-r--r-- | src/devices/mode/continuous.rs | 11 | ||||
-rw-r--r-- | src/devices/mode/oneshot.rs | 15 | ||||
-rw-r--r-- | src/ic.rs | 9 | ||||
-rw-r--r-- | src/interface.rs | 17 | ||||
-rw-r--r-- | src/lib.rs | 33 | ||||
-rw-r--r-- | tests/common/mod.rs | 23 | ||||
-rw-r--r-- | tests/construction.rs | 10 |
15 files changed, 122 insertions, 111 deletions
diff --git a/examples/linux.rs b/examples/linux.rs index 7f65c52..df2ab58 100644 --- a/examples/linux.rs +++ b/examples/linux.rs @@ -5,8 +5,8 @@ extern crate linux_embedded_hal; extern crate nb; extern crate ads1x1x; +use ads1x1x::{channel, Ads1x1x, SlaveAddr}; use linux_embedded_hal::I2cdev; -use ads1x1x::{ Ads1x1x, SlaveAddr, channel }; fn main() { let dev = I2cdev::new("/dev/i2c-1").unwrap(); diff --git a/src/channels.rs b/src/channels.rs index f88e10e..d5ae7bc 100644 --- a/src/channels.rs +++ b/src/channels.rs @@ -1,5 +1,5 @@ //! ADC input channels -use { Ads1x1x, ic, hal, Config, BitFlags as BF }; +use {hal, ic, Ads1x1x, BitFlags as BF, Config}; /// ADC input channel selection #[allow(dead_code)] @@ -43,7 +43,7 @@ macro_rules! impl_channel { ChannelSelection::$CH } } - } + }; } impl_channel!(Ads1013, DifferentialA0A1); diff --git a/src/construction.rs b/src/construction.rs index ab100fd..61abb06 100644 --- a/src/construction.rs +++ b/src/construction.rs @@ -1,42 +1,40 @@ //! Constructor/destructor functions. extern crate embedded_hal as hal; -use hal::blocking; use core::marker::PhantomData; -use { Ads1x1x, DEVICE_BASE_ADDRESS, SlaveAddr, ic, Config, mode, FullScaleRange }; +use hal::blocking; use interface::I2cInterface; - +use {ic, mode, Ads1x1x, Config, FullScaleRange, SlaveAddr, DEVICE_BASE_ADDRESS}; macro_rules! impl_new_destroy { ( $IC:ident, $create:ident, $destroy:ident, $conv:ty ) => { impl<I2C, E> Ads1x1x<I2cInterface<I2C>, ic::$IC, $conv, mode::OneShot> where - I2C: blocking::i2c::Write<Error = E> + blocking::i2c::WriteRead<Error = E> + I2C: blocking::i2c::Write<Error = E> + blocking::i2c::WriteRead<Error = E>, { /// Create a new instance of the device in OneShot mode. pub fn $create(i2c: I2C, address: SlaveAddr) -> Self { Ads1x1x { iface: I2cInterface { i2c, - address: address.addr(DEVICE_BASE_ADDRESS) + address: address.addr(DEVICE_BASE_ADDRESS), }, config: Config::default(), fsr: FullScaleRange::default(), a_conversion_was_started: false, _conv: PhantomData, _ic: PhantomData, - _mode: PhantomData + _mode: PhantomData, } } } - impl<I2C, CONV, MODE> Ads1x1x<I2cInterface<I2C>, ic::$IC, CONV, MODE> - { + impl<I2C, CONV, MODE> Ads1x1x<I2cInterface<I2C>, ic::$IC, CONV, MODE> { /// Destroy driver instance, return I²C bus instance. pub fn $destroy(self) -> I2C { self.iface.i2c } } - } + }; } impl_new_destroy!(Ads1013, new_ads1013, destroy_ads1013, ic::Resolution12Bit); diff --git a/src/conversion.rs b/src/conversion.rs index 5e7751c..644ed4a 100644 --- a/src/conversion.rs +++ b/src/conversion.rs @@ -1,7 +1,7 @@ -use { ic, private, Error }; +use {ic, private, Error}; #[doc(hidden)] -pub trait ConvertThreshold<E> : private::Sealed { +pub trait ConvertThreshold<E>: private::Sealed { fn convert_threshold(value: i16) -> Result<u16, Error<E>>; } @@ -21,7 +21,7 @@ impl<E> ConvertThreshold<E> for ic::Resolution16Bit { } #[doc(hidden)] -pub trait ConvertMeasurement : private::Sealed { +pub trait ConvertMeasurement: private::Sealed { fn convert_measurement(register_data: u16) -> i16; } @@ -32,8 +32,7 @@ impl ConvertMeasurement for ic::Resolution12Bit { if is_negative { let value = 0b1111_0000_0000_0000 | (value >> 4); value as i16 - } - else { + } else { (value >> 4) as i16 } } @@ -69,7 +68,7 @@ mod tests { fn assert_invalid_input_data<E>(result: Result<u16, Error<E>>) { match result { Err(Error::InvalidInputData) => (), - _ => panic!("InvalidInputData error was not returned.") + _ => panic!("InvalidInputData error was not returned."), } } diff --git a/src/devices/common.rs b/src/devices/common.rs index 92b4f9e..57d67b9 100644 --- a/src/devices/common.rs +++ b/src/devices/common.rs @@ -1,7 +1,7 @@ //! Common functions -use { Ads1x1x, Error, Register, BitFlags, interface, Config }; use super::OperatingMode; +use {interface, Ads1x1x, BitFlags, Config, Error, Register}; impl<DI, IC, CONV, MODE, E> Ads1x1x<DI, IC, CONV, MODE> where @@ -21,7 +21,7 @@ where /// Read whether a measurement is currently in progress. pub fn is_measurement_in_progress(&mut self) -> Result<bool, Error<E>> { let config = Config { - bits: self.iface.read_register(Register::CONFIG)? + bits: self.iface.read_register(Register::CONFIG)?, }; Ok(!config.is_high(BitFlags::OS)) } diff --git a/src/devices/features/tier1.rs b/src/devices/features/tier1.rs index 16ed96c..6bd1a99 100644 --- a/src/devices/features/tier1.rs +++ b/src/devices/features/tier1.rs @@ -1,6 +1,6 @@ //! Common functions -use { Ads1x1x, DataRate12Bit, DataRate16Bit, Error, Register, BitFlags, interface, ic }; +use {ic, interface, Ads1x1x, BitFlags as BF, DataRate12Bit, DataRate16Bit, Error, Register}; impl<DI, IC, MODE, E> Ads1x1x<DI, IC, ic::Resolution12Bit, MODE> where @@ -8,15 +8,16 @@ where { /// Set data rate pub fn set_data_rate(&mut self, rate: DataRate12Bit) -> Result<(), Error<E>> { + use DataRate12Bit as DR; let config; match rate { - DataRate12Bit::Sps128 => config = self.config.with_low( BitFlags::DR2).with_low( BitFlags::DR1).with_low( BitFlags::DR0), - DataRate12Bit::Sps250 => config = self.config.with_low( BitFlags::DR2).with_low( BitFlags::DR1).with_high(BitFlags::DR0), - DataRate12Bit::Sps490 => config = self.config.with_low( BitFlags::DR2).with_high(BitFlags::DR1).with_low( BitFlags::DR0), - DataRate12Bit::Sps920 => config = self.config.with_low( BitFlags::DR2).with_high(BitFlags::DR1).with_high(BitFlags::DR0), - DataRate12Bit::Sps1600 => config = self.config.with_high(BitFlags::DR2).with_low( BitFlags::DR1).with_low( BitFlags::DR0), - DataRate12Bit::Sps2400 => config = self.config.with_high(BitFlags::DR2).with_low( BitFlags::DR1).with_high(BitFlags::DR0), - DataRate12Bit::Sps3300 => config = self.config.with_high(BitFlags::DR2).with_high(BitFlags::DR1).with_low( BitFlags::DR0), + DR::Sps128 => config = self.config.with_low( BF::DR2).with_low( BF::DR1).with_low( BF::DR0), + DR::Sps250 => config = self.config.with_low( BF::DR2).with_low( BF::DR1).with_high(BF::DR0), + DR::Sps490 => config = self.config.with_low( BF::DR2).with_high(BF::DR1).with_low( BF::DR0), + DR::Sps920 => config = self.config.with_low( BF::DR2).with_high(BF::DR1).with_high(BF::DR0), + DR::Sps1600 => config = self.config.with_high(BF::DR2).with_low( BF::DR1).with_low( BF::DR0), + DR::Sps2400 => config = self.config.with_high(BF::DR2).with_low( BF::DR1).with_high(BF::DR0), + DR::Sps3300 => config = self.config.with_high(BF::DR2).with_high(BF::DR1).with_low( BF::DR0), } self.iface.write_register(Register::CONFIG, config.bits)?; self.config = config; @@ -30,16 +31,17 @@ where { /// Set data rate pub fn set_data_rate(&mut self, rate: DataRate16Bit) -> Result<(), Error<E>> { + use DataRate16Bit as DR; let config; match rate { - DataRate16Bit::Sps8 => config = self.config.with_low( BitFlags::DR2).with_low( BitFlags::DR1).with_low( BitFlags::DR0), - DataRate16Bit::Sps16 => config = self.config.with_low( BitFlags::DR2).with_low( BitFlags::DR1).with_high(BitFlags::DR0), - DataRate16Bit::Sps32 => config = self.config.with_low( BitFlags::DR2).with_high(BitFlags::DR1).with_low( BitFlags::DR0), - DataRate16Bit::Sps64 => config = self.config.with_low( BitFlags::DR2).with_high(BitFlags::DR1).with_high(BitFlags::DR0), - DataRate16Bit::Sps128 => config = self.config.with_high(BitFlags::DR2).with_low( BitFlags::DR1).with_low( BitFlags::DR0), - DataRate16Bit::Sps250 => config = self.config.with_high(BitFlags::DR2).with_low( BitFlags::DR1).with_high(BitFlags::DR0), - DataRate16Bit::Sps475 => config = self.config.with_high(BitFlags::DR2).with_high(BitFlags::DR1).with_low( BitFlags::DR0), - DataRate16Bit::Sps860 => config = self.config.with_high(BitFlags::DR2).with_high(BitFlags::DR1).with_high(BitFlags::DR0), + DR::Sps8 => config = self.config.with_low( BF::DR2).with_low( BF::DR1).with_low( BF::DR0), + DR::Sps16 => config = self.config.with_low( BF::DR2).with_low( BF::DR1).with_high(BF::DR0), + DR::Sps32 => config = self.config.with_low( BF::DR2).with_high(BF::DR1).with_low( BF::DR0), + DR::Sps64 => config = self.config.with_low( BF::DR2).with_high(BF::DR1).with_high(BF::DR0), + DR::Sps128 => config = self.config.with_high(BF::DR2).with_low( BF::DR1).with_low( BF::DR0), + DR::Sps250 => config = self.config.with_high(BF::DR2).with_low( BF::DR1).with_high(BF::DR0), + DR::Sps475 => config = self.config.with_high(BF::DR2).with_high(BF::DR1).with_low( BF::DR0), + DR::Sps860 => config = self.config.with_high(BF::DR2).with_high(BF::DR1).with_high(BF::DR0), } self.iface.write_register(Register::CONFIG, config.bits)?; self.config = config; diff --git a/src/devices/features/tier2.rs b/src/devices/features/tier2.rs index 6047572..3f8d7b4 100644 --- a/src/devices/features/tier2.rs +++ b/src/devices/features/tier2.rs @@ -2,21 +2,21 @@ //! //! These are the features included only in ADS1x14, ADS1x15 -use { Ads1x1x, Error, interface, ic, FullScaleRange, ComparatorMode, - ComparatorPolarity, ComparatorLatching, ComparatorQueue, Register, - BitFlags, conversion }; +use { + conversion, ic, interface, Ads1x1x, BitFlags as BF, ComparatorLatching, ComparatorMode, + ComparatorPolarity, ComparatorQueue, Error, FullScaleRange, Register, +}; impl<DI, IC, CONV, MODE, E> Ads1x1x<DI, IC, CONV, MODE> where DI: interface::WriteData<Error = E>, IC: ic::Tier2Features, - CONV: conversion::ConvertThreshold<E> + CONV: conversion::ConvertThreshold<E>, { /// Set the input voltage measurable range /// /// This configures the programmable gain amplifier and determines the measurable input voltage range. pub fn set_full_scale_range(&mut self, range: FullScaleRange) -> Result<(), Error<E>> { - use BitFlags as BF; let config; match range { FullScaleRange::Within6_144V => config = self.config.with_low( BF::PGA2).with_low( BF::PGA1).with_low( BF::PGA0), @@ -57,8 +57,8 @@ where pub fn set_comparator_mode(&mut self, mode: ComparatorMode) -> Result<(), Error<E>> { let config; match mode { - ComparatorMode::Traditional => config = self.config.with_low(BitFlags::COMP_MODE), - ComparatorMode::Window => config = self.config.with_high(BitFlags::COMP_MODE) + ComparatorMode::Traditional => config = self.config.with_low( BF::COMP_MODE), + ComparatorMode::Window => config = self.config.with_high(BF::COMP_MODE), } self.iface.write_register(Register::CONFIG, config.bits)?; self.config = config; @@ -66,11 +66,14 @@ where } /// Set comparator polarity - pub fn set_comparator_polarity(&mut self, polarity: ComparatorPolarity) -> Result<(), Error<E>> { + pub fn set_comparator_polarity( + &mut self, + polarity: ComparatorPolarity, + ) -> Result<(), Error<E>> { let config; match polarity { - ComparatorPolarity::ActiveLow => config = self.config.with_low( BitFlags::COMP_POL), - ComparatorPolarity::ActiveHigh => config = self.config.with_high(BitFlags::COMP_POL) + ComparatorPolarity::ActiveLow => config = self.config.with_low( BF::COMP_POL), + ComparatorPolarity::ActiveHigh => config = self.config.with_high(BF::COMP_POL), } self.iface.write_register(Register::CONFIG, config.bits)?; self.config = config; @@ -78,11 +81,14 @@ where } /// Set comparator latching - pub fn set_comparator_latching(&mut self, latching: ComparatorLatching) -> Result<(), Error<E>> { + pub fn set_comparator_latching( + &mut self, + latching: ComparatorLatching, + ) -> Result<(), Error<E>> { let config; match latching { - ComparatorLatching::Nonlatching => config = self.config.with_low( BitFlags::COMP_LAT), - ComparatorLatching::Latching => config = self.config.with_high(BitFlags::COMP_LAT) + ComparatorLatching::Nonlatching => config = self.config.with_low( BF::COMP_LAT), + ComparatorLatching::Latching => config = self.config.with_high(BF::COMP_LAT), } self.iface.write_register(Register::CONFIG, config.bits)?; self.config = config; @@ -95,9 +101,9 @@ where pub fn set_comparator_queue(&mut self, queue: ComparatorQueue) -> Result<(), Error<E>> { let config; match queue { - ComparatorQueue::One => config = self.config.with_low( BitFlags::COMP_QUE1).with_low( BitFlags::COMP_QUE0), - ComparatorQueue::Two => config = self.config.with_low( BitFlags::COMP_QUE1).with_high(BitFlags::COMP_QUE0), - ComparatorQueue::Four => config = self.config.with_high(BitFlags::COMP_QUE1).with_low( BitFlags::COMP_QUE0) + ComparatorQueue::One => config = self.config.with_low( BF::COMP_QUE1).with_low( BF::COMP_QUE0), + ComparatorQueue::Two => config = self.config.with_low( BF::COMP_QUE1).with_high(BF::COMP_QUE0), + ComparatorQueue::Four => config = self.config.with_high(BF::COMP_QUE1).with_low( BF::COMP_QUE0), } self.iface.write_register(Register::CONFIG, config.bits)?; self.config = config; @@ -110,7 +116,7 @@ where /// 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<E>> { - let config = self.config.with_high(BitFlags::COMP_QUE1).with_high(BitFlags::COMP_QUE0); + let config = self.config.with_high(BF::COMP_QUE1).with_high(BF::COMP_QUE0); self.iface.write_register(Register::CONFIG, config.bits)?; self.config = config; Ok(()) @@ -124,7 +130,7 @@ where /// /// When calling this the comparator will be disabled and the thresholds will be cleared. pub fn use_alert_rdy_pin_as_ready(&mut self) -> Result<(), Error<E>> { - if self.config != self.config.with_high(BitFlags::COMP_QUE1).with_high(BitFlags::COMP_QUE0) { + if self.config != self.config.with_high(BF::COMP_QUE1).with_high(BF::COMP_QUE0) { self.disable_comparator()?; } self.iface.write_register(Register::HIGH_TH, 0x8000)?; diff --git a/src/devices/mod.rs b/src/devices/mod.rs index e5124e1..5b87738 100644 --- a/src/devices/mod.rs +++ b/src/devices/mod.rs @@ -1,7 +1,7 @@ #[derive(Debug, Clone, Copy)] enum OperatingMode { OneShot, - Continuous + Continuous, } mod mode; diff --git a/src/devices/mode/continuous.rs b/src/devices/mode/continuous.rs index 35cfd7b..cb4757c 100644 --- a/src/devices/mode/continuous.rs +++ b/src/devices/mode/continuous.rs @@ -1,9 +1,9 @@ //! Continuous measurement mode -use core::marker::PhantomData; -use { Ads1x1x, conversion, Error, hal, interface, mode, Register }; -use channels::ChannelSelection; use super::super::OperatingMode; +use channels::ChannelSelection; +use core::marker::PhantomData; +use {conversion, hal, interface, mode, Ads1x1x, Error, Register}; impl<DI, IC, CONV, E> Ads1x1x<DI, IC, CONV, mode::Continuous> where @@ -20,7 +20,7 @@ where a_conversion_was_started: false, _conv: PhantomData, _ic: PhantomData, - _mode: PhantomData + _mode: PhantomData, }) } @@ -58,7 +58,8 @@ where /// Select the channel for measurements. pub fn select_channel<CH>(&mut self, _channel: &mut CH) -> Result<(), Error<E>> where - CH: hal::adc::Channel<Ads1x1x<DI, IC, CONV, mode::OneShot>, ID = ChannelSelection> { + CH: hal::adc::Channel<Ads1x1x<DI, IC, CONV, mode::OneShot>, ID = ChannelSelection>, + { let config = self.config.with_mux_bits(CH::channel()); self.iface.write_register(Register::CONFIG, config.bits)?; self.config = config; diff --git a/src/devices/mode/oneshot.rs b/src/devices/mode/oneshot.rs index a03d8d2..3595c26 100644 --- a/src/devices/mode/oneshot.rs +++ b/src/devices/mode/oneshot.rs @@ -1,14 +1,14 @@ //! Common functions -use core::marker::PhantomData; -use { Ads1x1x, mode, Error, Register, BitFlags, Config }; -use { interface, conversion, hal, nb }; use channels::ChannelSelection; +use core::marker::PhantomData; +use {conversion, hal, interface, nb}; +use {mode, Ads1x1x, BitFlags, Config, Error, Register}; impl<DI, IC, CONV, E> Ads1x1x<DI, IC, CONV, mode::OneShot> where DI: interface::WriteData<Error = E> + interface::ReadData<Error = E>, - CONV: conversion::ConvertMeasurement + CONV: conversion::ConvertMeasurement, { /// Change operating mode to Continuous pub fn into_continuous(self) -> Result<Ads1x1x<DI, IC, CONV, mode::Continuous>, Error<E>> { @@ -19,7 +19,7 @@ where a_conversion_was_started: self.a_conversion_was_started, _conv: PhantomData, _ic: PhantomData, - _mode: PhantomData + _mode: PhantomData, }) } @@ -34,7 +34,7 @@ impl<DI, IC, CONV, E, CH> hal::adc::OneShot<Ads1x1x<DI, IC, CONV, mode::OneShot> where DI: interface::ReadData<Error = E> + interface::WriteData<Error = E>, CONV: conversion::ConvertMeasurement, - CH: hal::adc::Channel<Ads1x1x<DI, IC, CONV, mode::OneShot>, ID = ChannelSelection> + CH: hal::adc::Channel<Ads1x1x<DI, IC, CONV, mode::OneShot>, ID = ChannelSelection>, { type Error = Error<E>; @@ -63,7 +63,8 @@ where return Ok(CONV::convert_measurement(value)); } let config = self.config.with_mux_bits(CH::channel()); - self.trigger_measurement(&config).map_err(nb::Error::Other)?; + self.trigger_measurement(&config) + .map_err(nb::Error::Other)?; self.config = config; self.a_conversion_was_started = true; Err(nb::Error::WouldBlock) @@ -1,9 +1,8 @@ /// ICs use private; -pub struct Resolution12Bit(pub(crate)()); -pub struct Resolution16Bit(pub(crate)()); - +pub struct Resolution12Bit(pub(crate) ()); +pub struct Resolution16Bit(pub(crate) ()); macro_rules! ic_marker { ($name:ident) => { @@ -19,12 +18,12 @@ ic_marker!(Ads1114); ic_marker!(Ads1015); ic_marker!(Ads1115); -pub trait Tier2Features : private::Sealed { } +pub trait Tier2Features: private::Sealed {} macro_rules! tier2_features { ($name:ident) => { impl Tier2Features for $name {} - } + }; } tier2_features!(Ads1014); diff --git a/src/interface.rs b/src/interface.rs index 2ef42fc..36458b4 100644 --- a/src/interface.rs +++ b/src/interface.rs @@ -2,18 +2,17 @@ extern crate embedded_hal as hal; use hal::blocking; -use { private, Error }; - +use {private, Error}; /// I2C interface #[derive(Debug, Default)] pub struct I2cInterface<I2C> { pub(crate) i2c: I2C, - pub(crate) address : u8, + pub(crate) address: u8, } /// Write data -pub trait WriteData : private::Sealed { +pub trait WriteData: private::Sealed { /// Error type type Error; /// Write to an u16 register @@ -22,19 +21,17 @@ pub trait WriteData : private::Sealed { impl<I2C, E> WriteData for I2cInterface<I2C> where - I2C: blocking::i2c::Write<Error = E> + I2C: blocking::i2c::Write<Error = E>, { type Error = E; fn write_register(&mut self, register: u8, data: u16) -> Result<(), Error<E>> { let payload: [u8; 3] = [register, (data >> 8) as u8, data as u8]; - self.i2c - .write(self.address, &payload) - .map_err(Error::I2C) + self.i2c.write(self.address, &payload).map_err(Error::I2C) } } /// Read data -pub trait ReadData : private::Sealed { +pub trait ReadData: private::Sealed { /// Error type type Error; /// Read an u16 register @@ -43,7 +40,7 @@ pub trait ReadData : private::Sealed { impl<I2C, E> ReadData for I2cInterface<I2C> where - I2C: blocking::i2c::WriteRead<Error = E> + I2C: blocking::i2c::WriteRead<Error = E>, { type Error = E; fn read_register(&mut self, register: u8) -> Result<u16, Error<E>> { @@ -204,8 +204,8 @@ #![deny(warnings)] #![no_std] -extern crate nb; extern crate embedded_hal as hal; +extern crate nb; use core::marker::PhantomData; /// All possible errors in this crate @@ -219,7 +219,7 @@ pub enum Error<E> { NotStarted, } -const DEVICE_BASE_ADDRESS : u8 = 0b100_1000; +const DEVICE_BASE_ADDRESS: u8 = 0b100_1000; /// Mode marker types pub mod mode { @@ -246,10 +246,9 @@ pub enum DataRate12Bit { /// 2400 SPS Sps2400, /// 3300 SPS - Sps3300 + Sps3300, } - /// Data rate for ADS1113, ADS1114, ADS1115 #[derive(Debug, Clone, Copy, PartialEq)] pub enum DataRate16Bit { @@ -268,7 +267,7 @@ pub enum DataRate16Bit { /// 475 SPS Sps475, /// 860 SPS - Sps860 + Sps860, } /// Comparator mode (only for ADS1x14, ADS1x15) #[derive(Debug, Clone, Copy, PartialEq)] @@ -285,7 +284,7 @@ pub enum ComparatorMode { /// In this mode the ALERT/RDY pin asserts (according to selected active /// polarity) when the conversion data exceeds the value set as *high* /// threshold or goes below the value set as *low* temperature threshold. - Window + Window, } /// Comparator polarity (only for ADS1x14, ADS1x15) @@ -294,7 +293,7 @@ pub enum ComparatorPolarity { /// Active low (default) ActiveLow, /// Active high - ActiveHigh + ActiveHigh, } /// Comparator polarity (only for ADS1x14, ADS1x15) @@ -314,7 +313,7 @@ pub enum ComparatorLatching { /// read by the master or an appropriate SMBus alert response is sent by /// the master. The device responds with its address, and it is the lowest /// address currently asserting the ALERT/RDY bus line. - Latching + Latching, } /// Comparator alert queue (only for ADS1x14, ADS1x15) @@ -358,7 +357,7 @@ pub enum SlaveAddr { /// Default slave address Default, /// Alternative slave address providing bit values for A1 and A0 - Alternative(bool, bool) + Alternative(bool, bool), } impl Default for SlaveAddr { @@ -411,19 +410,23 @@ impl BitFlags { #[derive(Debug, Clone, PartialEq)] struct Config { - bits: u16 + bits: u16, } impl Config { - fn is_high(&self, mask : u16) -> bool { + fn is_high(&self, mask: u16) -> bool { (self.bits & mask) != 0 } fn with_high(&self, mask: u16) -> Self { - Config { bits: self.bits | mask } + Config { + bits: self.bits | mask, + } } fn with_low(&self, mask: u16) -> Self { - Config { bits: self.bits & !mask } + Config { + bits: self.bits & !mask, + } } } @@ -448,7 +451,7 @@ pub struct Ads1x1x<DI, IC, CONV, MODE> { a_conversion_was_started: bool, _conv: PhantomData<CONV>, _ic: PhantomData<IC>, - _mode: PhantomData<MODE> + _mode: PhantomData<MODE>, } #[doc(hidden)] @@ -464,7 +467,7 @@ pub use conversion::ConvertThreshold; pub use conversion::ConvertMeasurement; mod private { - use super::{ ic, interface }; + use super::{ic, interface}; pub trait Sealed {} impl<I2C> Sealed for interface::I2cInterface<I2C> {} diff --git a/tests/common/mod.rs b/tests/common/mod.rs index d81494f..509dbd8 100644 --- a/tests/common/mod.rs +++ b/tests/common/mod.rs @@ -1,10 +1,10 @@ extern crate embedded_hal_mock as hal; -use self::hal::i2c::{ Mock as I2cMock, Transaction as I2cTrans }; +use self::hal::i2c::{Mock as I2cMock, Transaction as I2cTrans}; extern crate ads1x1x; -use self::ads1x1x::{ Ads1x1x, interface, ic, SlaveAddr, mode }; +use self::ads1x1x::{ic, interface, mode, Ads1x1x, SlaveAddr}; #[allow(unused)] -pub const DEVICE_ADDRESS : u8 = 0b100_1000; +pub const DEVICE_ADDRESS: u8 = 0b100_1000; pub struct Register; #[allow(unused)] @@ -37,16 +37,20 @@ impl BitFlags { } pub struct Config { - pub bits: u16 + pub bits: u16, } #[allow(dead_code)] impl Config { pub fn with_high(&self, mask: u16) -> Self { - Config { bits: self.bits | mask } + Config { + bits: self.bits | mask, + } } pub fn with_low(&self, mask: u16) -> Self { - Config { bits: self.bits & !mask } + Config { + bits: self.bits & !mask, + } } pub fn msb(&self) -> u8 { @@ -75,7 +79,7 @@ macro_rules! impl_new_destroy { pub fn $destroy<MODE>(dev: Ads1x1x<$iface, ic::$ic, $conv, MODE>) { dev.$destroy().done(); } - } + }; } impl_new_destroy!(Ads1013, new_ads1013, destroy_ads1013, ic::Resolution12Bit, I2cTrans, interface::I2cInterface<I2cMock>); @@ -90,8 +94,7 @@ macro_rules! assert_would_block { ($result: expr) => { match $result { Err(nb::Error::WouldBlock) => (), - _ => panic!("Would not block.") + _ => panic!("Would not block."), } - } + }; } - diff --git a/tests/construction.rs b/tests/construction.rs index 459e5a8..698d06a 100644 --- a/tests/construction.rs +++ b/tests/construction.rs @@ -1,7 +1,9 @@ mod common; -use common::{ new_ads1013, destroy_ads1013, new_ads1113, destroy_ads1113, - new_ads1014, destroy_ads1014, new_ads1114, destroy_ads1114, - new_ads1015, destroy_ads1015, new_ads1115, destroy_ads1115 }; +use common::{ + new_ads1013, destroy_ads1013, new_ads1113, destroy_ads1113, + new_ads1014, destroy_ads1014, new_ads1114, destroy_ads1114, + new_ads1015, destroy_ads1015, new_ads1115, destroy_ads1115 +}; macro_rules! impl_tests { ($IC:ident, $create:ident, $destroy:ident) => { @@ -13,7 +15,7 @@ macro_rules! impl_tests { $destroy(dev); } } - } + }; } impl_tests!(ads1013, new_ads1013, destroy_ads1013); |