implement basic embassy framework
This commit is contained in:
@@ -1,15 +0,0 @@
|
||||
use esp_hal::gpio::{Input, InputConfig, Pull};
|
||||
use esp_hal::peripherals::GPIO38;
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
|
||||
pub enum NavCommand {
|
||||
NextCard,
|
||||
PrevCard,
|
||||
Select,
|
||||
ScanTag,
|
||||
}
|
||||
|
||||
pub fn init_navigation_button(pin: GPIO38<'static>) -> Input<'static> {
|
||||
let button_config = InputConfig::default().with_pull(Pull::Up);
|
||||
Input::new(pin, button_config)
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
use esp_hal::gpio::{Input, InputConfig, Pull};
|
||||
use esp_hal::peripherals::Peripherals;
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
|
||||
pub enum NavCommand {
|
||||
NextCard,
|
||||
PrevCard,
|
||||
Select,
|
||||
ScanTag,
|
||||
}
|
||||
|
||||
pub struct Inputs {
|
||||
pub up: Input<'static>,
|
||||
pub down: Input<'static>,
|
||||
pub left: Input<'static>,
|
||||
pub right: Input<'static>,
|
||||
pub back: Input<'static>,
|
||||
pub ok: Input<'static>,
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
use crate::navigation::inputs::Inputs;
|
||||
|
||||
pub async fn show(_inputs: &mut Inputs) {}
|
||||
@@ -0,0 +1,8 @@
|
||||
use crate::navigation::inputs::Inputs;
|
||||
|
||||
#[embassy_executor::task]
|
||||
pub async fn run(mut inputs: Inputs) {
|
||||
loop {
|
||||
crate::navigation::main_menu::show(&mut inputs).await
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user