#lora #iot #lpwan

lora-modulation

最小外部依赖的LoRa调制特性的定义

5个版本

0.1.4 2024年1月20日
0.1.3 2023年10月11日
0.1.2 2023年9月14日
0.1.1 2023年9月12日
0.1.0 2023年9月8日

#659嵌入式开发

Download history 3/week @ 2024-04-20 18/week @ 2024-05-18 9/week @ 2024-05-25 23/week @ 2024-06-01 12/week @ 2024-06-08 14/week @ 2024-06-15 11/week @ 2024-06-22 1/week @ 2024-06-29 7/week @ 2024-07-06 8/week @ 2024-07-13 2/week @ 2024-07-20 52/week @ 2024-07-27 21/week @ 2024-08-03

85 每月下载量
2 crates 中使用

MIT 许可证

12KB
207 代码行

lora-modulation

Latest Version Docs

一个提供LoRa调制特性(带宽、扩频因子、编码速率)的最小包

  • 带宽
  • 扩频因子
  • 编码速率

提供计算空中时间的实用工具。

用法

use lora_modulation::{BaseBandModulationParams, SpreadingFactor, Bandwidth, CodingRate};

let length = 12;
let params = BaseBandModulationParams::new(SpreadingFactor::_9, Bandwidth::_125KHz, CodingRate::_4_5);
let time_on_air = params.time_on_air_us(
    Some(8), // preamble
    true,    // explicit header
    length); // length of payload

// Time on air is 144.384 ms
assert_eq!(time_on_air, 144384);
use lora_modulation::{BaseBandModulationParams, SpreadingFactor, Bandwidth, CodingRate};

let symbols = 14;
let params = BaseBandModulationParams::new(SpreadingFactor::_12, Bandwidth::_125KHz, CodingRate::_4_5);
let timeout = params.symbols_to_ms(symbols);

// Timeout is 458 ms
assert_eq!(timeout, 458);

依赖项

~160KB