#![deny(unsafe_code)]
#![no_main]
#![no_std]
use panic_semihosting as _;
use cortex_m_rt::entry;
use stm32f1xx_hal::{adc, pac, prelude::*};
use cortex_m_semihosting::hprintln;
#[entry]
fn main() -> ! {
let p = pac::Peripherals::take().unwrap();
let mut flash = p.FLASH.constrain();
let rcc = p.RCC.constrain();
let clocks = rcc
.cfgr
.use_hse(8.MHz())
.sysclk(56.MHz())
.pclk1(28.MHz())
.adcclk(14.MHz())
.freeze(&mut flash.acr);
hprintln!("sysclk freq: {}", clocks.sysclk());
hprintln!("adc freq: {}", clocks.adcclk());
let mut adc = adc::Adc::adc1(p.ADC1, clocks);
loop {
let temp = adc.read_temp();
hprintln!("temp: {}", temp);
}
}