diff options
| author | Dario Nieuwenhuis <[email protected]> | 2022-05-19 07:13:13 +0200 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-05-19 07:13:13 +0200 |
| commit | dd7a34fdc88cb6006c81a4f87c78e1640ebd5ec7 (patch) | |
| tree | 002eaf1e04f9c3bab04a0f31542c26bd768288c8 | |
| parent | 220c6c83cbfaaf836070a5b11d69d48848d36fcc (diff) | |
| parent | a3e0fcef0bf18ff862c80a8b2fec3292dbddcfdf (diff) | |
Merge pull request #773 from danbev/embassy-rp-ouput-drop
Impl drop for embassy-rp gpio Output
| -rw-r--r-- | embassy-rp/src/gpio.rs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/embassy-rp/src/gpio.rs b/embassy-rp/src/gpio.rs index aa3c3a646..8f1cca27b 100644 --- a/embassy-rp/src/gpio.rs +++ b/embassy-rp/src/gpio.rs | |||
| @@ -144,7 +144,14 @@ impl<'d, T: Pin> Output<'d, T> { | |||
| 144 | 144 | ||
| 145 | impl<'d, T: Pin> Drop for Output<'d, T> { | 145 | impl<'d, T: Pin> Drop for Output<'d, T> { |
| 146 | fn drop(&mut self) { | 146 | fn drop(&mut self) { |
| 147 | // todo | 147 | let val = 1 << self.pin.pin(); |
| 148 | unsafe { | ||
| 149 | self.pin.sio_out().value_clr().write_value(val); | ||
| 150 | self.pin.sio_oe().value_clr().write_value(val); | ||
| 151 | self.pin.io().ctrl().write(|w| { | ||
| 152 | w.set_funcsel(pac::io::vals::Gpio0CtrlFuncsel::NULL.0); | ||
| 153 | }); | ||
| 154 | }; | ||
| 148 | } | 155 | } |
| 149 | } | 156 | } |
| 150 | 157 | ||
