File tree Expand file tree Collapse file tree 1 file changed +16
-0
lines changed Expand file tree Collapse file tree 1 file changed +16
-0
lines changed Original file line number Diff line number Diff line change 7
7
//! pervasively throughout Zephyr device drivers. As such, most of the calls in this module are
8
8
//! unsafe.
9
9
10
+ use core:: ffi:: c_int;
11
+
10
12
use super :: Unique ;
11
13
use crate :: raw;
12
14
@@ -147,4 +149,18 @@ impl GpioPin {
147
149
raw:: gpio_pin_toggle_dt ( & self . pin ) ;
148
150
}
149
151
}
152
+
153
+ /// Set the logical level of the pin.
154
+ pub unsafe fn set ( & mut self , _token : & mut GpioToken , value : bool ) {
155
+ raw:: gpio_pin_set_dt ( & self . pin , value as c_int ) ;
156
+ }
157
+
158
+ /// Read the logical level of the pin.
159
+ pub unsafe fn get ( & mut self , _token : & mut GpioToken ) -> bool {
160
+ match raw:: gpio_pin_get_dt ( & self . pin ) {
161
+ 0 => false ,
162
+ 1 => true ,
163
+ _ => panic ! ( "TODO: Handle gpio get error" ) ,
164
+ }
165
+ }
150
166
}
You can’t perform that action at this time.
0 commit comments