diff options
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/rp/src/bin/adc.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/examples/rp/src/bin/adc.rs b/examples/rp/src/bin/adc.rs index 2a9e93732..4202fd394 100644 --- a/examples/rp/src/bin/adc.rs +++ b/examples/rp/src/bin/adc.rs | |||
| @@ -27,7 +27,12 @@ async fn main(_spawner: Spawner) { | |||
| 27 | let level = adc.read(&mut p28).await; | 27 | let level = adc.read(&mut p28).await; |
| 28 | info!("Pin 28 ADC: {}", level); | 28 | info!("Pin 28 ADC: {}", level); |
| 29 | let temp = adc.read_temperature().await; | 29 | let temp = adc.read_temperature().await; |
| 30 | info!("Temp: {}", temp); | 30 | info!("Temp: {} degrees", convert_to_celsius(temp)); |
| 31 | Timer::after(Duration::from_secs(1)).await; | 31 | Timer::after(Duration::from_secs(1)).await; |
| 32 | } | 32 | } |
| 33 | } | 33 | } |
| 34 | |||
| 35 | fn convert_to_celsius(raw_temp: u16) -> f32 { | ||
| 36 | // According to chapter 4.9.5. Temperature Sensor in RP2040 datasheet | ||
| 37 | 27.0 - (raw_temp as f32 * 3.3 / 4096.0 - 0.706) / 0.001721 as f32 | ||
| 38 | } | ||
