diff options
| author | Henrik Tjäder <henrik@tjaders.com> | 2020-06-11 17:18:29 +0000 |
|---|---|---|
| committer | Henrik Tjäder <henrik@tjaders.com> | 2020-06-11 17:18:29 +0000 |
| commit | 602a5b4374961dbcf7f3290053ab9b01f0622c67 (patch) | |
| tree | d3e64006a7b310d34d82df7aa2a4467c03595e55 /book/ru/src/by-example/app.md | |
| parent | 4a0393f756cc3ccd480f839eb6b6a9349326fe8e (diff) | |
Rename RTFM to RTIC
Diffstat (limited to 'book/ru/src/by-example/app.md')
| -rw-r--r-- | book/ru/src/by-example/app.md | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/book/ru/src/by-example/app.md b/book/ru/src/by-example/app.md index 884257d..04dd5b2 100644 --- a/book/ru/src/by-example/app.md +++ b/book/ru/src/by-example/app.md @@ -1,26 +1,26 @@ # The `app` attribute -Это наименьшая возможная программа на RTFM: +Это наименьшая возможная программа на RTIC: ``` rust {{#include ../../../../examples/smallest.rs}} ``` -Все программы на RTFM используют атрибут [`app`] (`#[app(..)]`). Этот атрибут +Все программы на RTIC используют атрибут [`app`] (`#[app(..)]`). Этот атрибут нужно применять к `const`-элементам, содержащим элементы. Атрибут `app` имеет обязательный аргумент `device`, в качестве значения которому передается *путь*. Этот путь должен указывать на библиотеку *устройства*, сгенерированную с помощью [`svd2rust`] **v0.14.x**. Атрибут `app` развернется в удобную точку входа, поэтому нет необходимости использовать атрибут [`cortex_m_rt::entry`]. -[`app`]: ../../../api/cortex_m_rtfm_macros/attr.app.html +[`app`]: ../../../api/cortex_m_rtic_macros/attr.app.html [`svd2rust`]: https://crates.io/crates/svd2rust [`cortex_m_rt::entry`]: ../../../api/cortex_m_rt_macros/attr.entry.html > **ОТСТУПЛЕНИЕ**: Некоторые из вас удивятся, почему мы используем ключевое слово `const` как > модуль, а не правильное `mod`. Причина в том, что использование атрибутов на > модулях требует feature gate, который требует ночную сборку. Чтобы заставить -> RTFM работать на стабильной сборке, мы используем вместо него слово `const`. +> RTIC работать на стабильной сборке, мы используем вместо него слово `const`. > Когда большая часть макросов 1.2 стабилизируются, мы прейдем от `const` к `mod` и в конце концов в атрибуту уровне приложения (`#![app]`). ## `init` @@ -32,13 +32,13 @@ Функция `init` запустится *с отключенными прерываниями* и будет иметь эксклюзивный доступ к периферии Cortex-M и специфичной для устройства периферии через переменные `core` and `device`, которые внедряются в область видимости `init` атрибутом `app`. -Не вся периферия Cortex-M доступна в `core`, потому что рантайм RTFM принимает владение -частью из неё -- более подробно см. структуру [`rtfm::Peripherals`]. +Не вся периферия Cortex-M доступна в `core`, потому что рантайм RTIC принимает владение +частью из неё -- более подробно см. структуру [`rtic::Peripherals`]. Переменные `static mut`, определённые в начале `init` будут преобразованы в ссылки `&'static mut` с безопасным доступом. -[`rtfm::Peripherals`]: ../../api/rtfm/struct.Peripherals.html +[`rtic::Peripherals`]: ../../api/rtic/struct.Peripherals.html Пример ниже показывает типы переменных `core` и `device` и демонстрирует безопасный доступ к переменной `static mut`. @@ -85,7 +85,7 @@ $ cargo run --example idle Как Вы бы сделали с помощью библиотеки `cortex-m-rt`, Вы можете использовать атрибуты `interrupt` и `exception` внутри псевдо-модуля `app`, чтобы определить обработчики -прерываний и исключений. В RTFM, мы называем обработчики прерываний и исключений +прерываний и исключений. В RTIC, мы называем обработчики прерываний и исключений *аппаратными* задачами. ``` rust @@ -96,6 +96,6 @@ $ cargo run --example idle $ cargo run --example interrupt {{#include ../../../../ci/expected/interrupt.run}}``` -До сих пор программы RTFM, которые мы видели не отличались от программ, которые +До сих пор программы RTIC, которые мы видели не отличались от программ, которые можно написать, используя только библиотеку `cortex-m-rt`. В следующем разделе -мы начнем знакомиться с функционалом, присущим только RTFM. +мы начнем знакомиться с функционалом, присущим только RTIC. |
