9 个版本

0.3.4 2024 年 2 月 7 日
0.3.3 2023 年 5 月 5 日
0.3.2 2023 年 3 月 29 日
0.3.1 2022 年 3 月 10 日
0.1.0 2020 年 11 月 11 日

518嵌入式开发 中排名

Download history 21436/week @ 2024-04-29 20498/week @ 2024-05-06 20727/week @ 2024-05-13 21708/week @ 2024-05-20 21550/week @ 2024-05-27 20293/week @ 2024-06-03 20398/week @ 2024-06-10 20635/week @ 2024-06-17 26003/week @ 2024-06-24 23885/week @ 2024-07-01 24723/week @ 2024-07-08 28591/week @ 2024-07-15 25248/week @ 2024-07-22 25709/week @ 2024-07-29 27796/week @ 2024-08-05 29138/week @ 2024-08-12

109,972 每月下载量
454 个包中使用了 (4 直接)

MIT/Apache

32KB
655 代码行

defmt

defmt ("de format",缩写为 "deferred formatting") 是一个高效的日志框架,针对资源受限的设备,如微控制器。

有关框架的更多详细信息,请参阅https://defmt.ferrous-systems.com中的书籍。

defmt 书籍的 git 版本可以在 https://defmt-next.ferrous-systems.com/ 中查看。

设置

新建项目

开始使用 defmt 的最快方法是使用我们的 app-template 来设置一个新的 Cortex-M 嵌入式项目。

现有项目

要将 defmt 包含到您的现有项目中,请遵循我们的 应用设置指南

MSRV

defmt 总是在最新的 stable Rust 版本 上编译。这是通过我们的 CI 构建和测试强制执行的。

它可能在旧的 Rust 版本上仍能工作,但这没有保证。

defmt 生态系统

以下图表展示了 defmt 框架的用户界面和内部包。

defmt crates structure

开发者信息

运行测试

使用 cargo xtask 运行测试 —— 虽然这只是一个别名(在 .cargo/config.toml 中定义),代表 cargo run --package xtask --

要查看选项列表,请参阅 xtask/src/main.rs,或运行

$ cargo xtask help

例如,要运行所有测试,请运行

$ cargo xtask test-all

您需要安装并配置qemu-system-arm到您的$PATH中,以便进行某些测试(例如 test-snapshot)。

支持

defmtKnurling项目的一部分,是Ferrous Systems努力改进用于嵌入式系统开发的工具的努力。

如果您认为我们的工作很有用,请考虑通过GitHub Sponsors进行赞助。

许可证

根据您的选择,许可如下:

贡献

除非您明确声明,否则根据Apache-2.0许可证定义的,任何有意提交以包含在作品中的贡献,都应按照上述方式许可,不附加任何其他条款或条件。

依赖项

~255–710KB
~17K SLoC