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 77//! pervasively throughout Zephyr device drivers. As such, most of the calls in this module are
88//! unsafe.
99
10+ use core:: ffi:: c_int;
11+
1012use crate :: raw;
1113use super :: Unique ;
1214
@@ -117,4 +119,18 @@ impl GpioPin {
117119 raw:: gpio_pin_toggle_dt ( & self . pin ) ;
118120 }
119121 }
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+ }
120136}
You can’t perform that action at this time.
0 commit comments