diff --git a/README.md b/README.md index d11bfe55ecf7ee55f52d337c70f289b21ec7cf1b..22621f380f4827471db3ba572a8bb41dad144bc7 100644 --- a/README.md +++ b/README.md @@ -237,7 +237,7 @@ Seminars Be prepared to present the progress on assignment 5. * Topic - - We will cover the implementation of the RTFM-core crate. + - We will cover the implementation of the rtfm-core and the cortex-m-rtfm crates. For details see [RTFM](doc/RTFM.md). Special focus to `macro_rules` and `procedural macros`. @@ -255,3 +255,6 @@ Seminars * Be prepared to present assignment 5. * Be prepared to present your project, 10 minutes per project. + * A good idea is to prepare a git for the project with a `README.md` and use that as supporting material for your presentation. Its advicable to have a section (or in a doc sub folder) where you collect references to the material you will use, i.e., links to data sheets, links to other related crates and projects of importance to your project. + + This type of reference section will be largely helpful to both you (during the project and afterwards maintaining it, but also to other users and people interested in your work). Moreover, from a "course" perspective it shows that you have done the necessary background studies BEFORE you "hack away". Of corse this will be a living document, updated throughout the project, but its a very good thing to start out NOW, then it can be used for your 10 minutes of fame! diff --git a/doc/Project_and_grading.md b/doc/Project_and_grading.md index b3ffb53c088dd3fcdfcc5f81a1e4f4bc58e9b0fd..82bdb5669274eeb54513f6b2982d2ef97efe9b46 100644 --- a/doc/Project_and_grading.md +++ b/doc/Project_and_grading.md @@ -2,7 +2,7 @@ In order to be officially enrolled for the course each student need to write (and submit) an individual course plan including grading goals and assessments based on this document. Assignments are mandatory (as detailed in the README.md). -- Each student should for each assigment 2,3,4 comment (make an `issue` and/or `pull request` to one other `git`). Comments should be meaningful and constructive. For the assigment 2, 3, 4 you should comment on different groups. Strive to spread comments so that each group will get at least one comment for each assignment. +- Each student should for each assigment 2, .., 5 comment (make an `issue` and/or `pull request` to one other `git`). Comments should be meaningful and constructive. For the assigment 2, .., 5 you should comment on different groups. Strive to spread comments so that each group will get at least one comment for each assignment. - Each student/group should attend `issues`/`pull request` Projects should aim to further cover the learning goals as stated in the README.md. diff --git a/doc/Project_suggestions.md b/doc/Project_suggestions.md index 84dde4d7b2aa22f818925a323880819c2068793d..1f9b11cc42fb532e4fd7eba7c5150c5e7c23c11f 100644 --- a/doc/Project_suggestions.md +++ b/doc/Project_suggestions.md @@ -1,5 +1,9 @@ # Suggested projects +--- +## Printing device (William) +- Rotating stick with LEDs at the end of the stick that can "print" text by switching the LEDs on and off with the right timings. + --- ## Seer (Nils) Symbolic execution engine for MIR internal format diff --git a/doc/RTFM.md b/doc/RTFM.md index 047226b0efc262897eaa1ed7c29b6ca396bea2d1..89f107d57a4da51cc600e65d595f5047b74ad025 100644 --- a/doc/RTFM.md +++ b/doc/RTFM.md @@ -285,9 +285,9 @@ Race freeness at this level can be argued from: ```rust ... - LOW.claim_mut_new(b, t, |_low, b, t| { + LOW.claim_mut(b, t, |_low, b, t| { rtfm::bkpt(); - LOW.claim_mut_new(b, t, |_high, _, _| { + LOW.claim_mut(b, t, |_high, _, _| { rtfm::bkpt(); }); }); @@ -298,7 +298,7 @@ Race freeness at this level can be argued from: error[E0499]: cannot borrow `LOW` as mutable more than once at a time --> examples/nested_new.rs:100:29 | -100 | LOW.claim_mut_new(b, t, |_low, b, t| { +100 | LOW.claim_mut(b, t, |_low, b, t| { | --- ^^^^^^^^^^^^ second mutable borrow occurs here ``` Trying to bluntly copy (clone) a resource handler will also fail. @@ -661,10 +661,10 @@ fn exti0( Amounts to the following assembly (including the interrupt entry code.) ```rust Dump of assembler code for function nested_new::_EXTI0: - 0x080005a6 <+0>: movs r1, #224 ; 0xe0 -=> 0x080005a8 <+2>: bkpt 0x0000 - 0x080005aa <+4>: mrs r0, BASEPRI - 0x080005ae <+8>: movs r2, #208 ; 0xd0 + 0x080005a6 <+0>: movs r1, #224 ; 0xe0 +=> 0x080005a8 <+2>: bkpt 0x0000 + 0x080005aa <+4>: mrs r0, BASEPRI + 0x080005ae <+8>: movs r2, #208 ; 0xd0 0x080005b0 <+10>: msr BASEPRI, r1 0x080005b4 <+14>: bkpt 0x0000 0x080005b6 <+16>: mrs r1, BASEPRI @@ -689,10 +689,10 @@ In an experimental version of the RTFM implementation this observation has been ```rust Dump of assembler code for function nested_new::_EXTI3: - 0x080005d0 <+0>: movs r1, #224 ; 0xe0 - 0x080005d2 <+2>: movs r2, #208 ; 0xd0 -=> 0x080005d4 <+4>: bkpt 0x0000 - 0x080005d6 <+6>: mrs r0, BASEPRI + 0x080005d0 <+0>: movs r1, #224 ; 0xe0 + 0x080005d2 <+2>: movs r2, #208 ; 0xd0 +=> 0x080005d4 <+4>: bkpt 0x0000 + 0x080005d6 <+6>: mrs r0, BASEPRI 0x080005da <+10>: msr BASEPRI, r1 0x080005de <+14>: bkpt 0x0000 0x080005e0 <+16>: msr BASEPRI, r2