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 crate :: raw;
11
13
use super :: Unique ;
12
14
@@ -117,4 +119,18 @@ impl GpioPin {
117
119
raw:: gpio_pin_toggle_dt ( & self . pin ) ;
118
120
}
119
121
}
122
+
123
+ /// Set the logical level of the pin.
124
+ pub unsafe fn set ( & mut self , _token : & mut GpioToken , value : bool ) {
125
+ raw:: gpio_pin_set_dt ( & self . pin , value as c_int ) ;
126
+ }
127
+
128
+ /// Read the logical level of the pin.
129
+ pub unsafe fn get ( & mut self , _token : & mut GpioToken ) -> bool {
130
+ match raw:: gpio_pin_get_dt ( & self . pin ) {
131
+ 0 => false ,
132
+ 1 => true ,
133
+ _ => panic ! ( "TODO: Handle gpio get error" ) ,
134
+ }
135
+ }
120
136
}
You can’t perform that action at this time.
0 commit comments