aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDario Nieuwenhuis <[email protected]>2022-09-06 23:11:27 +0200
committerGitHub <[email protected]>2022-09-06 23:11:27 +0200
commit6b90ab86644b48fd4b687c1173d1f9284f568a3b (patch)
tree3eeb5843292bb0a26931ade51ad4d54d9696d6d7 /src
parent29145e5f92918f5f6e575e5ccee159c0160c6694 (diff)
parentea0738c4851cbeb87de0d40ce1e8246368db4c6b (diff)
Merge pull request #12 from jannic-dev-forks/gpio
Add gpio_set
Diffstat (limited to 'src')
-rw-r--r--src/lib.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/lib.rs b/src/lib.rs
index 5e79e6e40..21b8b2d80 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -397,6 +397,12 @@ impl<'a> Control<'a> {
397 info!("JOINED"); 397 info!("JOINED");
398 } 398 }
399 399
400 pub async fn gpio_set(&mut self, gpio_n: u8, gpio_en: bool) {
401 assert!(gpio_n < 3);
402 self.set_iovar_u32x2("gpioout", 1 << gpio_n, if gpio_en { 1 << gpio_n } else { 0 })
403 .await
404 }
405
400 async fn set_iovar_u32x2(&mut self, name: &str, val1: u32, val2: u32) { 406 async fn set_iovar_u32x2(&mut self, name: &str, val1: u32, val2: u32) {
401 let mut buf = [0; 8]; 407 let mut buf = [0; 8];
402 buf[0..4].copy_from_slice(&val1.to_le_bytes()); 408 buf[0..4].copy_from_slice(&val1.to_le_bytes());