17 个版本
0.3.8 | 2024年5月17日 |
---|---|
0.3.6 | 2024年2月7日 |
0.3.6-beta.1 | 2023年7月7日 |
0.3.3 |
|
0.1.3 | 2020年11月30日 |
#14 in 嵌入式开发
111,352 月下载量
在 444 个 crates (388 directly) 中使用
82KB
1.5K SLoC
defmt
defmt
("de format", 简称 "deferred formatting") 是一个针对资源受限设备,如微控制器,的高度高效的日志框架。
有关该框架的更多详细信息,请参阅https://defmt.ferrous-systems.com 中的书籍。
可以在https://defmt-next.ferrous-systems.com/ 查看defmt书籍的git版本。
设置
新建项目
使用我们的 app-template 是开始使用 defmt
的最快方式,用于设置新的 Cortex-M 嵌入式项目。
现有项目
要将 defmt
包含到您的现有项目中,请按照我们的 应用设置指南 进行操作。
MSRV
defmt
总是在最新的 稳定版 rust
上编译。这是由我们的 CI 构建和针对此版本进行测试强制执行的。
它可能在较旧的 rust 版本上仍然有效,但这没有保证。
defmt 生态系统
以下图示展示了 defmt 框架的用户界面和内部结构。
开发者信息
运行测试
测试使用 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
)。
支持
defmt
是 Knurling 项目的组成部分,是 Ferrous Systems 旨在改进嵌入式系统开发工具的努力。
如果您认为我们的工作有用,请考虑通过 GitHub Sponsors 进行赞助。
许可证
根据以下之一许可
-
Apache License,版本 2.0 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
-
MIT 许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
根据您的选择。
贡献
除非您明确表示,否则根据 Apache-2.0 许可证定义,您有意提交的任何贡献,均应按上述方式许可,不附加任何其他条款或条件。
依赖项
~0.4–1MB
~21K SLoC