|
Arduino PulseWire Transceiver Library
|
A Preamble implementation for NRZ protocols: alternating edges at full bit period, ending with a HIGH level to match NRZ idle state. This provides a clear synchronization pattern while ensuring the line is in the correct idle state after the preamble, which is crucial for accurate decoding of NRZ signals. More...
#include <Preamble.h>


Public Member Functions | |
| bool | begin (uint16_t bitFrequencyHz) override |
| void | setEdges (const pulsewire::Vector< pulsewire::OutputEdge > &edges) |
| void | addEdge (const pulsewire::OutputEdge &edge) |
| void | addEdge (bool level, uint32_t pulseUs) |
| void | addEdge (bool level, uint16_t pulseCount, uint32_t frequencyHz) |
| void | clear () |
| int | getEdges (Vector< OutputEdge > &output) const override |
| Returns the expected preamble edges for this protocol. | |
| size_t | preambleLength () const override |
| void | reset () |
| virtual bool | detect (const OutputEdge &edge) |
| Detects if the incoming edge matches the expected preamble pattern. | |
| bool | inRange (uint32_t value, uint32_t target, uint32_t tolerance) const |
Protected Attributes | |
| pulsewire::Vector< pulsewire::OutputEdge > | _history |
| pulsewire::Vector< pulsewire::OutputEdge > | _expected |
A Preamble implementation for NRZ protocols: alternating edges at full bit period, ending with a HIGH level to match NRZ idle state. This provides a clear synchronization pattern while ensuring the line is in the correct idle state after the preamble, which is crucial for accurate decoding of NRZ signals.
Definition at line 240 of file Preamble.h.
|
inlineinherited |
Definition at line 142 of file Preamble.h.
Definition at line 138 of file Preamble.h.
|
inlineinherited |
Definition at line 137 of file Preamble.h.
Reimplemented from pulsewire::Preamble.
Definition at line 244 of file Preamble.h.
|
inlineinherited |
Definition at line 147 of file Preamble.h.
|
inlinevirtualinherited |
Detects if the incoming edge matches the expected preamble pattern.
Reimplemented in pulsewire::IRMultiProtocol, and pulsewire::NoPreamble.
Definition at line 52 of file Preamble.h.
|
inlineoverridevirtualinherited |
Returns the expected preamble edges for this protocol.
Implements pulsewire::Preamble.
Definition at line 148 of file Preamble.h.
|
inlineinherited |
Utility function to check if a value is within a specified tolerance range of a target
Definition at line 95 of file Preamble.h.
|
inlineoverridevirtualinherited |
Implements pulsewire::Preamble.
Definition at line 154 of file Preamble.h.
|
inlineinherited |
Definition at line 49 of file Preamble.h.
|
inlineinherited |
Definition at line 134 of file Preamble.h.
|
protectedinherited |
Definition at line 102 of file Preamble.h.
|
protectedinherited |
Definition at line 101 of file Preamble.h.