Skills Plugins MCP Prompt Model 博客 我的中心

domain-embedded

Use when developing embedded/no_std Rust. Keywords: embedded, no_std, microcontroller, MCU, ARM, RISC-V, bare metal, firmware, HAL, PAC, RTIC, embassy, interrupt, DMA, peripheral, GPIO, SPI, I2C, UART, embedded-hal, cortex-m, esp32, stm32, nrf, 嵌入式, 单片机, 固件, 裸机

DeepseekModel キュレーション済みスキル 品質 優秀 · 90 v1.0.0

取得

https://deepseekmodel.com/api/download.php?id=actionbook-rust-skills-skills-domain-embedded-skill-md&format=skill
ダウンロード .skill 標準形式。system_prompt と model_config を収録し、任意の Agent で利用可能
.skill ファイルの system_prompt フィールドの実際の内容。
name domain-embedded description Use when developing embedded/no_std Rust. Keywords: embedded, no_std, microcontroller, MCU, ARM, RISC-V, bare metal, firmware, HAL, PAC, RTIC, embassy, interrupt, DMA, peripheral, GPIO, SPI, I2C, UART, embedded-hal, cortex-m, esp32, stm32, nrf, 嵌入式, 单片机, 固件, 裸机 globs ["**/Cargo.toml","**/.cargo/config.toml"] user-invocable false Project Context (Auto-Injected) Target configuration: ! cat .cargo/config.toml 2>/dev/null || echo "No .cargo/config.toml found" Embedded Domain Layer 3: Domain Constraints Domain Constraints → Design Implications Domain Rule Design Constraint Rust Implication No heap Stack allocation heapless, no Box/Vec No std Core only #![no_std] Real-time Predictable timing No dynamic alloc Resource limited Minimal memory Static buffers Hardware safety Safe peripheral access HAL + ownership Interrupt safe No blocking in ISR Atomic, critical sections Critical Constraints No Dynamic Allocation RULE: Cannot use heap (no allocator) WHY: Deterministic memory, no OOM RUST: heapless::Vec<T, N>, arrays Interrupt Safety RULE: Shared state must be interrupt-safe WHY: ISR can preempt at any time RUST: Mutex<RefCell<T>> + critical section Hardware Ownership RULE: Peripherals must have clear ownership WHY: Prevent conflicting access RUST: HAL takes ownership, singletons Trace Down ↓ From constraints to design (Layer 2): "Need no_std compatible data structures" ↓ m02-resource: heapless collections ↓ Static sizing: heapless::Vec<T, N> "Need interrupt-safe state" ↓ m03-mutability: Mutex<RefCell<Option<T>>> ↓ m07-concurrency: Critical sections "Need peripheral ownership" ↓ m01-ownership: Singleton pattern ↓ m12-lifecycle: RAII for hardware Layer Stack Layer Examples Purpose PAC stm32f4, esp32c3 Register access HAL stm32f4xx-hal Hardware abstraction Framework RTIC, Embassy Concurrency Traits embedded-hal Portable drivers Framework Comparison Framework Style Best For RTIC Priority-based Interrupt-driven apps Embassy Async Complex state machines Bare metal Manual Simple apps Key Crates Purpose Crate Runtime (ARM) cortex-m-rt Panic handler panic-halt, panic-probe Collections heapless HAL traits embedded-hal Logging defmt Flash/debug probe-run Design Patterns Pattern Purpose Implementation no_std setup Bare metal #![no_std] + #![no_main] Entry point Startup #[entry] or embassy Static state ISR access Mutex<RefCell<Option<T>>> Fixed buffers No heap heapless::Vec<T, N> Code Pattern: Static Peripheral #![no_std] #![no_main] use cortex_m::interrupt::{ self , Mutex}; use core::cell::RefCell; static LED: Mutex<RefCell< Option <Led>>> = Mutex:: new (RefCell:: new ( None )); #[entry] fn main () -> ! { let dp = pac::Peripherals:: take (). unwrap (); let led = Led:: new (dp.GPIOA); interrupt:: free (|cs| { LED. borrow (cs). replace ( Some (led)); }); loop { interrupt:: free (|cs| { if let Some (led) = LED. borrow (cs). borrow_mut (). as_mut () { led. toggle (); } }); } } Common Mistakes Mistake Domain Violation Fix Using Vec Heap allocation heapless::Vec No critical section Race with ISR Mutex + interrupt::free Blocking in ISR Missed interrupts Defer to main loop Unsafe peripheral Hardware conflict HAL ownership Trace to Layer 1 Constraint Layer 2 Pattern Layer 1 Implementation No heap Static collections heapless::Vec<T, N> ISR safety Critical sections Mutex<RefCell > Hardware ownership Singleton take().unwrap() no_std Core-only #![no_std], #![no_main] Related Skills When See Static memory m02-resource Interior mutability m03-mutability Interrupt patterns m07-concurrency Unsafe for hardware unsafe-checker
このスキルを起動するキーワード。クリックでコピーできます。

このスキルにはトリガーワードがありません。

ダウンロードした .skill に含まれるフィールド。
フィールド 説明
formatフォーマット識別子(skill/v1)
skill_idスキル固有 ID
nameスキル名
versionバージョン
description説明
categoryカテゴリ(配列)
trigger_wordsトリガーワード
tagsタグ
sourceソース
source_urlソース URL(本ページ)
exported_atエクスポート日時(ダウンロード毎)
system_promptシステムプロンプト本文
model_configモデル設定:provider / model / temperature / max_tokens / top_p
examplesサンプル
install_guide各プラットフォームの導入説明(Coze / Dify / Claude / カスタム)
同じスキルを各プラットフォーム形式で出力できます。
.skill 標準形式。system_prompt と model_config を収録し、任意の Agent で利用可能 ダウンロード
.skillpro 拡張形式。scripts / tools / dependencies / hooks を含む ダウンロード
.json 純粋な JSON 出力。system_prompt とモデル設定のみ ダウンロード
Coze frontmatter 付き Markdown。Coze へのインポート用 ダウンロード
Dify Dify DSL。アプリ作成後にそのままインポート ダウンロード

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。