stm32 adc: introduce blocking_read

This commit is contained in:
Andres Vahter
2024-07-03 14:39:10 +03:00
parent 914d7c7919
commit f851081e09
17 changed files with 86 additions and 38 deletions

View File

@@ -17,7 +17,7 @@ async fn main(_spawner: Spawner) {
let mut pin = p.PA1;
let mut vrefint = adc.enable_vrefint();
let vrefint_sample = adc.read(&mut vrefint);
let vrefint_sample = adc.blocking_read(&mut vrefint);
let convert_to_millivolts = |sample| {
// From https://www.st.com/resource/en/datasheet/stm32g031g8.pdf
// 6.3.3 Embedded internal reference voltage
@@ -27,7 +27,7 @@ async fn main(_spawner: Spawner) {
};
loop {
let v = adc.read(&mut pin);
let v = adc.blocking_read(&mut pin);
info!("--> {} - {} mV", v, convert_to_millivolts(v));
Timer::after_millis(100).await;
}

View File

@@ -24,7 +24,7 @@ async fn main(_spawner: Spawner) {
let mut pa0 = p.PA0.degrade_adc();
loop {
adc.read_async(
adc.read(
&mut dma,
[
(&mut vrefint_channel, SampleTime::CYCLES160_5),

View File

@@ -36,7 +36,7 @@ async fn main(_spawner: Spawner) {
adc.oversampling_enable(true);
loop {
let v = adc.read(&mut pin);
let v = adc.blocking_read(&mut pin);
info!("--> {} ", v); //max 65520 = 0xFFF0
Timer::after_millis(100).await;
}