summaryrefslogtreecommitdiff
path: root/examples/nrf/src/bin/saadc.rs
blob: 311ffe2ebaf36331dbab9eda5ad574c5314221ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#![no_std]
#![no_main]
#![feature(type_alias_impl_trait)]

#[path = "../example_common.rs"]
mod example_common;
use defmt::panic;
use embassy::executor::Spawner;
use embassy::time::{Duration, Timer};
use embassy_nrf::saadc::{Config, OneShot, Sample};
use embassy_nrf::{interrupt, Peripherals};
use example_common::*;

#[embassy::main]
async fn main(_spawner: Spawner, mut p: Peripherals) {
    let config = Config::default();
    let mut saadc = OneShot::new(p.SAADC, interrupt::take!(SAADC), config);

    loop {
        let sample = saadc.sample(&mut p.P0_02).await;
        info!("sample: {=i16}", sample);
        Timer::after(Duration::from_millis(100)).await;
    }
}