aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorxoviat <[email protected]>2025-11-11 17:19:26 +0000
committerGitHub <[email protected]>2025-11-11 17:19:26 +0000
commit0d1fc76a10863b85961a63db4a9e1e2807f35957 (patch)
tree1ffe8a8dddec7085876adb8bfcd86c3fed22ae74 /examples
parentf078c85454f09f28a85aa834a9496b37058695e0 (diff)
parent769941980442ada1524ee4f60f1d003735caff4b (diff)
Merge pull request #4866 from xoviat/adc
adc: impl. differential channels
Diffstat (limited to 'examples')
-rw-r--r--examples/stm32g4/src/bin/adc.rs5
-rw-r--r--examples/stm32g4/src/bin/adc_differential.rs6
2 files changed, 8 insertions, 3 deletions
diff --git a/examples/stm32g4/src/bin/adc.rs b/examples/stm32g4/src/bin/adc.rs
index 695f37115..94315141c 100644
--- a/examples/stm32g4/src/bin/adc.rs
+++ b/examples/stm32g4/src/bin/adc.rs
@@ -30,9 +30,14 @@ async fn main(_spawner: Spawner) {
30 30
31 let mut adc = Adc::new(p.ADC2); 31 let mut adc = Adc::new(p.ADC2);
32 32
33 let mut adc_temp = Adc::new(p.ADC1);
34 let mut temperature = adc_temp.enable_temperature();
35
33 loop { 36 loop {
34 let measured = adc.blocking_read(&mut p.PA7, SampleTime::CYCLES24_5); 37 let measured = adc.blocking_read(&mut p.PA7, SampleTime::CYCLES24_5);
38 let temperature = adc_temp.blocking_read(&mut temperature, SampleTime::CYCLES24_5);
35 info!("measured: {}", measured); 39 info!("measured: {}", measured);
40 info!("temperature: {}", temperature);
36 Timer::after_millis(500).await; 41 Timer::after_millis(500).await;
37 } 42 }
38} 43}
diff --git a/examples/stm32g4/src/bin/adc_differential.rs b/examples/stm32g4/src/bin/adc_differential.rs
index a6e2f7d33..2773723e9 100644
--- a/examples/stm32g4/src/bin/adc_differential.rs
+++ b/examples/stm32g4/src/bin/adc_differential.rs
@@ -30,16 +30,16 @@ async fn main(_spawner: Spawner) {
30 config.rcc.mux.adc12sel = mux::Adcsel::SYS; 30 config.rcc.mux.adc12sel = mux::Adcsel::SYS;
31 config.rcc.sys = Sysclk::PLL1_R; 31 config.rcc.sys = Sysclk::PLL1_R;
32 } 32 }
33 let mut p = embassy_stm32::init(config); 33 let p = embassy_stm32::init(config);
34 34
35 let mut adc = Adc::new(p.ADC1); 35 let mut adc = Adc::new(p.ADC1);
36 adc.set_differential(&mut p.PA0, true); //p:pa0,n:pa1 36 let mut differential_channel = (p.PA0, p.PA1);
37 37
38 // can also use 38 // can also use
39 // adc.set_differential_channel(1, true); 39 // adc.set_differential_channel(1, true);
40 info!("adc initialized"); 40 info!("adc initialized");
41 loop { 41 loop {
42 let measured = adc.blocking_read(&mut p.PA0, SampleTime::CYCLES247_5); 42 let measured = adc.blocking_read(&mut differential_channel, SampleTime::CYCLES247_5);
43 info!("data: {}", measured); 43 info!("data: {}", measured);
44 Timer::after_millis(500).await; 44 Timer::after_millis(500).await;
45 } 45 }