From 087553d867d4f05cc33cf968dcc167954fca646a Mon Sep 17 00:00:00 2001
From: Anton <anton.frappe@outlook.com>
Date: Thu, 11 Mar 2021 13:37:26 +0100
Subject: [PATCH] bare7_1

---
 examples/rtic_bare7.rs | 22 +++++++++++++++-------
 1 file changed, 15 insertions(+), 7 deletions(-)

diff --git a/examples/rtic_bare7.rs b/examples/rtic_bare7.rs
index 0f2dea1..300356c 100644
--- a/examples/rtic_bare7.rs
+++ b/examples/rtic_bare7.rs
@@ -17,7 +17,7 @@ use stm32f4xx_hal::{
     gpio::{gpioa::PA5, Output, PushPull},
     prelude::*,
 };
-;
+
 use embedded_hal::digital::v2::{OutputPin, ToggleableOutputPin};
 
 const OFFSET: u32 = 8_000_000;
@@ -26,8 +26,8 @@ const OFFSET: u32 = 8_000_000;
 const APP: () = {
     struct Resources {
         // late resources
-        GPIOA: stm32::GPIOA,
-        // led: PA5<Output<PushPull>>,
+        //GPIOA: stm32::GPIOA,
+        led: PA5<Output<PushPull>>,
     }
     #[init(schedule = [toggle])]
     fn init(cx: init::Context) -> init::LateResources {
@@ -53,9 +53,14 @@ const APP: () = {
         // configure PA5 as output, RM0368 8.4.1
         device.GPIOA.moder.modify(|_, w| w.moder5().bits(1));
 
+        let split  =  device.GPIOA.split();
+
         // pass on late resources
         init::LateResources {
-            GPIOA: device.GPIOA,
+            //GPIOA: device.GPIOA,
+            //led: device.GPIOA.PA5.into_pull_push_output()
+            //led: PA5<Output<PushPull>>.into_pull_push_output()
+            led : split.pa5.into_push_pull_output()
         }
     }
 
@@ -67,15 +72,18 @@ const APP: () = {
         }
     }
 
-    #[task(resources = [GPIOA], schedule = [toggle])]
+    #[task(resources = [led], schedule = [toggle])]
     fn toggle(cx: toggle::Context) {
         static mut TOGGLE: bool = false;
         rprintln!("toggle  @ {:?}", Instant::now());
 
+
         if *TOGGLE {
-            cx.resources.GPIOA.bsrr.write(|w| w.bs5().set_bit());
+            //cx.resources.GPIOA.bsrr.write(|w| w.bs5().set_bit());
+            cx.resources.led.set_high().unwrap();
         } else {
-            cx.resources.GPIOA.bsrr.write(|w| w.br5().set_bit());
+            cx.resources.led.set_low().unwrap();
+            //cx.resources.GPIOA.bsrr.write(|w| w.br5().set_bit());
         }
 
         *TOGGLE = !*TOGGLE;
-- 
GitLab