Skip to main content

Crate embassy_max4466

Crate embassy_max4466 

Source
Expand description

§embassy-max4466

Driver async no_std pour le capteur micro MAX4466, basé sur Embassy.

§Features optionnelles

FeatureDescription
filter-emaActive le filtre EMA (moyenne exponentielle mobile)
filter-medianActive le filtre médian (fenêtre glissante de 5 samples)

Par défaut, aucun filtre n’est activé : read_raw retourne la valeur ADC brute.

§Exemple minimal

use embassy_max4466::Max4466;
use embassy_rp::adc::{Adc, Channel, Config};

#[embassy_executor::task]
async fn micro_task(adc: Adc<'static, Async>, ch: Channel<'static>) {
    let mut mic = Max4466::new(adc, ch);
    mic.calibrate().await;

    loop {
        let amplitude = mic.read_amplitude(50).await;
        defmt::info!("Amplitude: {}", amplitude);
    }
}

§Exemple avec signal global

use embassy_max4466::signals::MIC_SIGNAL;

#[embassy_executor::task]
async fn afficher_micro() {
    loop {
        let data = MIC_SIGNAL.wait().await;
        defmt::info!("Amplitude: {}  Raw: {}", data.amplitude, data.raw);
    }
}

Re-exports§

pub use driver::Max4466;

Modules§

driver
Driver principal Max4466.
signals
Signal global portant la dernière mesure publiée par crate::Max4466::read_amplitude.

Structs§

MicData
Données publiées sur signals::MIC_SIGNAL.