29次发布 (10次重大更新)

0.11.2 2024年5月19日
0.11.0-rc.02024年3月4日
0.7.0-beta.32023年12月13日
0.7.0-beta.22023年9月26日
0.2.0 2022年9月13日

#103 in 嵌入式开发

Download history 94/week @ 2024-04-29 109/week @ 2024-05-06 335/week @ 2024-05-13 432/week @ 2024-05-20 35/week @ 2024-05-27 196/week @ 2024-06-03 13/week @ 2024-06-10 6/week @ 2024-06-17 2/week @ 2024-06-24 8/week @ 2024-07-01 17/week @ 2024-07-08 8/week @ 2024-07-15 309/week @ 2024-07-29 42/week @ 2024-08-05 144/week @ 2024-08-12

每月496次下载
用于5个crate(3个直接使用)

Apache-2.0

590KB
14K SLoC

Crates.io docs.rs ci coverage

ECSS和CCSDS空间数据包

本包包含对各种CCSDS(空间数据系统咨询委员会)和ECSS(欧洲空间标准化合作)数据包标准的通用实现。

目前包括以下组件

功能

spacepackets支持各种运行时环境,也适用于no_std环境。

默认功能

  • std: 启用依赖于标准库的功能。
  • alloc: 启用在容器(如alloc::vec::Vec)上操作的功能。由std功能启用。

可选功能

  • serde: 通过添加SerializeDeserialize derive来为大多数类型添加serde支持
  • chrono:添加对chrono时间库的基本支持。
  • timelib:添加对time时间库的基本支持。
  • defmt:通过添加多种类型的defmt::Format derive来支持defmt

示例

您可以查看各个模块的文档以获取各种使用示例。

覆盖率

覆盖率使用grcov生成。如果您尚未安装,请安装llvm-tools-preview

rustup component add llvm-tools-preview
cargo install grcov --locked

之后,您可以简单地运行coverage.py来测试项目的覆盖率。您可以可选地提供--open标志以在您的网页浏览器中打开覆盖率报告。

Miri

您可以使用此库运行miri工具来检查未定义行为(UB)。此库不使用任何unsafe代码块,但miri仍然可以捕获使用库中的UB。

cargo +nightly miri nextest run --all-features

依赖关系

~2–8MB
~63K SLoC