diff --git a/examples/blinky.rs b/examples/blinky.rs index 2570a9e6979e8e87f49d6cbbabf2f02446a494d3..ecd1ba727dc757b000697b81c04bba49d81354ff 100644 --- a/examples/blinky.rs +++ b/examples/blinky.rs @@ -8,14 +8,10 @@ extern crate cortex_m; extern crate stm32f4x_hal as f4; use f4::stm32f4x; -// use f3::hal::delay::Delay; +use f4::delay::Delay; use f4::prelude::*; use f4::led::Led; -fn wait(v: u32) { - for _ in 0..v {} -} - fn main() { let cp = cortex_m::Peripherals::take().unwrap(); let dp = stm32f4x::Peripherals::take().unwrap(); @@ -25,21 +21,19 @@ fn main() { let mut gpioa = dp.GPIOA.split(&mut rcc.ahb1); // // clock configuration using the default settings (all clocks run at 8 MHz) - // let clocks = rcc.cfgr.freeze(&mut flash.acr); + //let clocks = rcc.cfgr.freeze(&mut flash.acr); // // TRY this alternate clock configuration (all clocks run at 16 MHz) - // // let clocks = rcc.cfgr.sysclk(16.mhz()).freeze(&mut flash.acr); + let clocks = rcc.cfgr.sysclk(16.mhz()).freeze(&mut flash.acr); let mut led: Led = gpioa .pa5 .into_push_pull_output(&mut gpioa.moder, &mut gpioa.otyper) .into(); - // let mut delay = Delay::new(cp.SYST, clocks); + let mut delay = Delay::new(cp.SYST, clocks); loop { led.on(); - wait(10000); - // delay.delay_ms(1_000_u16); + delay.delay_ms(1_000_u16); led.off(); - wait(10000); - // delay.delay_ms(1_000_u16); + delay.delay_ms(1_000_u16); } } diff --git a/src/delay.rs b/src/delay.rs index dd58172fb145c03680ebfc80df819007aa07286c..0b27293869dbdf756381cb3bb43a7496c6d729c5 100644 --- a/src/delay.rs +++ b/src/delay.rs @@ -15,6 +15,7 @@ pub struct Delay { impl Delay { /// Configures the system timer (SysTick) as a delay provider + /// Uses the Core clock pub fn new(mut syst: SYST, clocks: Clocks) -> Self { syst.set_clock_source(SystClkSource::Core); diff --git a/src/lib.rs b/src/lib.rs index 093515740dac51334df4a5cbfd8dc88665b57394..b1723941924e204069246bbffcfe59a34abe0b5a 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -28,7 +28,7 @@ extern crate embedded_hal as hal; extern crate nb; pub extern crate stm32f413 as stm32f4x; -// pub mod delay; +pub mod delay; pub mod flash; pub mod gpio; // pub mod i2c; diff --git a/src/prelude.rs b/src/prelude.rs index 48bc53612a49291df3f8619d2713759639c575ea..4f1fe7a74a5f400f8d6c9136e087fc57af51ad07 100644 --- a/src/prelude.rs +++ b/src/prelude.rs @@ -1,7 +1,7 @@ //! Prelude -pub use gpio::GpioExt as _stm32f30x_hal_gpio_GpioExt; +pub use gpio::GpioExt as _stm32f4x_hal_gpio_GpioExt; pub use hal::prelude::*; pub use rcc::RccExt as _stm32f4x_hal_rcc_RccExt; -// pub use time::U32Ext as _stm32f30x_hal_time_U32Ext; -pub use flash::FlashExt as _stm32f30x_hal_flash_FlashExt; +pub use time::U32Ext as _stm32f4x_hal_time_U32Ext; +pub use flash::FlashExt as _stm32f4x_hal_flash_FlashExt;