rp: implement input for OutputOpenDrain
This commit is contained in:
		@@ -411,6 +411,16 @@ impl<'d, T: Pin> OutputOpenDrain<'d, T> {
 | 
			
		||||
    pub fn toggle(&mut self) {
 | 
			
		||||
        self.pin.toggle_set_as_output()
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    #[inline]
 | 
			
		||||
    pub fn is_high(&self) -> bool {
 | 
			
		||||
        self.pin.is_high()
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    #[inline]
 | 
			
		||||
    pub fn is_low(&self) -> bool {
 | 
			
		||||
        self.pin.is_low()
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/// GPIO flexible pin.
 | 
			
		||||
@@ -791,6 +801,18 @@ mod eh02 {
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    impl<'d, T: Pin> embedded_hal_02::digital::v2::InputPin for OutputOpenDrain<'d, T> {
 | 
			
		||||
        type Error = Infallible;
 | 
			
		||||
 | 
			
		||||
        fn is_high(&self) -> Result<bool, Self::Error> {
 | 
			
		||||
            Ok(self.is_high())
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        fn is_low(&self) -> Result<bool, Self::Error> {
 | 
			
		||||
            Ok(self.is_low())
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    impl<'d, T: Pin> embedded_hal_02::digital::v2::OutputPin for OutputOpenDrain<'d, T> {
 | 
			
		||||
        type Error = Infallible;
 | 
			
		||||
 | 
			
		||||
@@ -946,6 +968,16 @@ mod eh1 {
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    impl<'d, T: Pin> embedded_hal_1::digital::InputPin for OutputOpenDrain<'d, T> {
 | 
			
		||||
        fn is_high(&self) -> Result<bool, Self::Error> {
 | 
			
		||||
            Ok(self.is_high())
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        fn is_low(&self) -> Result<bool, Self::Error> {
 | 
			
		||||
            Ok(self.is_low())
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    impl<'d, T: Pin> embedded_hal_1::digital::ErrorType for Flex<'d, T> {
 | 
			
		||||
        type Error = Infallible;
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user