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
@@ -125,4 +127,18 @@ impl GpioPin {
125
127
raw:: gpio_pin_toggle_dt ( & self . pin ) ;
126
128
}
127
129
}
130
+
131
+ /// Set the logical level of the pin.
132
+ pub unsafe fn set ( & mut self , _token : & mut GpioToken , value : bool ) {
133
+ raw:: gpio_pin_set_dt ( & self . pin , value as c_int ) ;
134
+ }
135
+
136
+ /// Read the logical level of the pin.
137
+ pub unsafe fn get ( & mut self , _token : & mut GpioToken ) -> bool {
138
+ match raw:: gpio_pin_get_dt ( & self . pin ) {
139
+ 0 => false ,
140
+ 1 => true ,
141
+ _ => panic ! ( "TODO: Handle gpio get error" ) ,
142
+ }
143
+ }
128
144
}
You can’t perform that action at this time.
0 commit comments