type
status
slug
date
summary
tags
category
password
icon

ONE Problem confuse us

according to embassy book, we found:

Embassy executor

The Embassy executor is an async/await executor designed for embedded usage along with support functionality for interrupts and timers.

Features

  • No alloc, no heap needed. Task are statically allocated.
  • No "fixed capacity" data structures, executor works with 1 or 1000 tasks without needing config/tuning.
  • Integrated timer queue: sleeping is easy, just do Timer::after_secs(1).await;.
  • No busy-loop polling: CPU sleeps when there’s no work to do, using interrupts or WFE/SEV.
  • Efficient polling: a wake will only poll the woken task, not all of them.
  • Fair: a task can’t monopolize CPU time even if it’s constantly being woken. All other tasks get a chance to run before a given task gets polled for the second time.
  • Creating multiple executor instances is supported, to run tasks at different priority levels. This allows higher-priority tasks to preempt lower-priority tasks.
we want to figure out how the highlight features are implemented

The Rust’s macro grammar used in embassy

🧑‍💻
Learn macro

About time interrupt of timer

🍎
About the macro part of interrupt in Timer
 

I am curious about the startup and interrupt

how does the interrupt defined? And where I can find them?
This repository contains various crates useful for writing Rust programs on Cortex-M microcontrollers:
  • cortex-m: CPU peripheral access and intrinsics
  • panic-itm: Panic handler that sends messages over the ITM/SWO output
 

try to figure out the executor in embassy with stm32f401 example

🏗️
stm32F401 adapt to ex: multiprio

The Execution Flow of Blinky

Just debug the code and know how the async Rust run
💫
Embassy_Learn

The critical implementation part

🧠
The Critical section implementation

To Implement our TCB, We should now some grammar of lifetime

🦀
The Rust Life Time

Things we need to know about rust grammar

Rust grammar supplement

Important things done in uC/OS

😡
Important design in uC/OS rust

track the process of debug

😵‍💫
Trouble Tracking
 
 
rust-embassy-trouble_shootingOS_考试复习
Loading...
liamY
liamY
Chasing Possible
Announcement
🎉Liam’s blog🎉
-- 全新上线 ---
👏欢迎comment👏
⚠️由于浏览器缓存的原因,有些内容是更新了的但是需要手动刷新3次左右,页面才会显示更新内容