This commit is contained in:
Jorge Aparicio 2017-07-29 01:16:11 -05:00
parent 2d80f3631b
commit 6160548153
5 changed files with 58 additions and 8 deletions

View file

@ -5,6 +5,33 @@ This project adheres to [Semantic Versioning](http://semver.org/).
## [Unreleased] ## [Unreleased]
## [v0.2.0] - 2017-07-29
### Added
- The `app!` macro, a macro to declare the tasks and resources of an
application.
- The `Resource` trait, which is used to write generic code that deals with
resources.
### Changed
- [breaking-change] The signature of the `atomic` function has changed.
- [breaking-change] The threshold token has become a concrete type and lost its
`raise` method.
### Removed
- [breaking-change] The `tasks!` and `peripherals!` macros.
- [breaking-change] The ceiling and priority tokens.
- [breaking-change] The `Local`, `Resource` and `Peripheral` structs.
- [breaking-change] The traits related to type level integers.
## [v0.1.1] - 2017-06-05 ## [v0.1.1] - 2017-06-05
### Changed ### Changed
@ -15,5 +42,6 @@ This project adheres to [Semantic Versioning](http://semver.org/).
- Initial release - Initial release
[Unreleased]: https://github.com/japaric/cortex-m-rtfm/compare/v0.1.1...HEAD [Unreleased]: https://github.com/japaric/cortex-m-rtfm/compare/v0.2.0...HEAD
[v0.2.0]: https://github.com/japaric/cortex-m-rtfm/compare/v0.1.1...v0.2.0
[v0.1.1]: https://github.com/japaric/cortex-m-rtfm/compare/v0.1.0...v0.1.1 [v0.1.1]: https://github.com/japaric/cortex-m-rtfm/compare/v0.1.0...v0.1.1

View file

@ -14,12 +14,10 @@ version = "0.2.0"
[dependencies] [dependencies]
cortex-m = "0.3.1" cortex-m = "0.3.1"
cortex-m-rtfm-macros = "=0.2.0"
rtfm-core = "0.1.0" rtfm-core = "0.1.0"
static-ref = "0.2.1" static-ref = "0.2.1"
[dependencies.cortex-m-rtfm-macros]
path = "macros"
[target.'cfg(target_arch = "x86_64")'.dev-dependencies] [target.'cfg(target_arch = "x86_64")'.dev-dependencies]
compiletest_rs = "0.2.8" compiletest_rs = "0.2.8"

View file

@ -1,7 +1,13 @@
[package] [package]
authors = ["Jorge Aparicio <jorge@japaric.io>"] authors = ["Jorge Aparicio <jorge@japaric.io>"]
categories = ["concurrency", "embedded", "no-std"]
description = "Procedural macros of the cortex-m-rtfm crate"
documentation = "https://docs.rs/cortex-m-rtfm-macros"
keywords = ["arm", "cortex-m"]
license = "MIT OR Apache-2.0"
name = "cortex-m-rtfm-macros" name = "cortex-m-rtfm-macros"
version = "0.1.0" repository = "https://github.com/japaric/cortex-m-rtfm"
version = "0.2.0"
[dependencies] [dependencies]
error-chain = "0.10.0" error-chain = "0.10.0"

View file

@ -1,4 +1,4 @@
//! Procedural macros for the RTFM framework //! Procedural macros of the `cortex-m-rtfm` crate
#![deny(warnings)] #![deny(warnings)]
#![feature(proc_macro)] #![feature(proc_macro)]
#![recursion_limit = "128"] #![recursion_limit = "128"]

View file

@ -30,7 +30,7 @@
//! # Constraints //! # Constraints
//! //!
//! - Tasks must run to completion. That's it, tasks can't contain endless //! - Tasks must run to completion. That's it, tasks can't contain endless
//! loops. However, you can run an endless event loop in the `idle` function. //! loops. However, you can run an endless event loop in the `idle` *loop*.
//! //!
//! - Task priorities must remain constant at runtime. //! - Task priorities must remain constant at runtime.
//! //!
@ -44,7 +44,7 @@
//! [`svd2rust`]: https://docs.rs/svd2rust/0..0/svd2rust/ //! [`svd2rust`]: https://docs.rs/svd2rust/0..0/svd2rust/
//! [`<cpu>`]: https://www.keil.com/pack/doc/CMSIS/SVD/html/elem_cpu.html //! [`<cpu>`]: https://www.keil.com/pack/doc/CMSIS/SVD/html/elem_cpu.html
//! //!
//! # More documentation //! # `app!`
//! //!
//! The `app!` macro is documented [here](../cortex_m_rtfm_macros/fn.app.html). //! The `app!` macro is documented [here](../cortex_m_rtfm_macros/fn.app.html).
//! //!
@ -52,6 +52,24 @@
//! //!
//! In increasing grade of complexity. See the [examples](./examples/index.html) //! In increasing grade of complexity. See the [examples](./examples/index.html)
//! module. //! module.
//!
//! # References
//!
//! - Baker, T. P. (1991). Stack-based scheduling of realtime processes.
//! *Real-Time Systems*, 3(1), 67-99.
//!
//! > The original Stack Resource Policy paper. [PDF][srp].
//!
//! [srp]: http://www.cs.fsu.edu/~baker/papers/mstacks3.pdf
//!
//! - Eriksson, J., Häggström, F., Aittamaa, S., Kruglyak, A., & Lindgren, P.
//! (2013, June). Real-time for the masses, step 1: Programming API and static
//! priority SRP kernel primitives. In Industrial Embedded Systems (SIES),
//! 2013 8th IEEE International Symposium on (pp. 110-113). IEEE.
//!
//! > A description of the RTFM task and resource model. [PDF][rtfm]
//!
//! [rtfm]: http://www.diva-portal.org/smash/get/diva2:1005680/FULLTEXT01.pdf
#![deny(missing_docs)] #![deny(missing_docs)]
#![deny(warnings)] #![deny(warnings)]
#![feature(proc_macro)] #![feature(proc_macro)]