SX127x
(→CRC) |
|||
第1行: | 第1行: | ||
[[文件:LoRa-packet-structure.jpg | 800px]] | [[文件:LoRa-packet-structure.jpg | 800px]] | ||
+ | |||
+ | == RSSI == | ||
+ | |||
+ | Received Signal Strength Indication,接收信号强度指示 | ||
+ | |||
+ | <br> | ||
== Preamble == | == Preamble == |
2019年5月23日 (四) 21:14的版本
目录 |
1 RSSI
Received Signal Strength Indication,接收信号强度指示
2 Preamble
LoRa 数据包前导码,用于接收机辩识 rx data flow。内容固定,长度可选。
默认 12 个 symbol(Bytes?), 0x8 (RegPreambleLsb) + 4
可写 RegPreambleMsb 和 RegPreambleLsb 这两个寄存器,将其改为 6 +4 ~ 65535 +4
10 symbol 的短前导码,通信够用但具有更短的接收周期。。。
当前系统一般皆适用 12 (4 + 8) 的长度:
...... ^$Get Preamble Length: state 0 ^$Preamble Length: 8 ......
3 Header
Explicit Header & Implicit Header
可通过寄存器 RegModemConfig1 内的位 ImplicitHeaderModeOn 来控制
Explicit Header:
Reset 默认的模式。其能提供的信息:
- Payload 长度
- The forward error correction code rate
- The presence of an optional 16-bits CRC for the payload
The head is transmitted with maximum error correction code (4/8). It also has its own CRC to allow the receiver to discard invalid headers.
Implicit Header:
Header is removed from the LoRa Packet.
Payload, Coding Rate and CRC presence are fixed.
Be advantageous to reduce transmission time
4 CRC
RegPayloadCrcOn: RegModemConfig2[2:2]
- 0 ---> CRC disable
- 1 ---> CRC enable
In Implicit Header Mode: must be set on Tx and Rx side
In Explicit Header Mode: on the Tx side alone (recovered from the header in Rx side)
Explicit Header Mode Checking process:
Rx 用户负责检查 CrcOnPayload (RegHopChannel[6:6], CRC information extracted from the rx packet header)
如果 CrcOnPayload == 1,需要检查 IRQ 标志位 PayloadCrcError,以确保没有 CRC 错误
Implicit Header Mode 则直接去检查 IRQ 标志位 PayloadCrcError,以确保没有 CRC 错误