mirror of
https://github.com/eried/portapack-mayhem.git
synced 2025-07-30 18:19:08 -04:00
TPMS: Extract packet readers.
This commit is contained in:
parent
e7aaf0e8cf
commit
05b55f2696
2 changed files with 63 additions and 54 deletions
|
@ -33,8 +33,7 @@ ManchesterFormatted Packet::symbols_formatted() const {
|
|||
return format_manchester(decoder_);
|
||||
}
|
||||
|
||||
Optional<Reading> Packet::reading() const {
|
||||
if( signal_type() == SignalType::FSK_19k2_Schrader ) {
|
||||
Optional<Reading> Packet::reading_fsk_19k2_schrader() const {
|
||||
const auto length = crc_valid_length();
|
||||
|
||||
switch(length) {
|
||||
|
@ -67,7 +66,7 @@ Optional<Reading> Packet::reading() const {
|
|||
}
|
||||
}
|
||||
|
||||
if( signal_type() == SignalType::OOK_8k192_Schrader ) {
|
||||
Optional<Reading> Packet::reading_ook_8k192_schrader() const {
|
||||
const auto flags = reader_.read(0, 3);
|
||||
const auto checksum = reader_.read(35, 2);
|
||||
|
||||
|
@ -80,7 +79,7 @@ Optional<Reading> Packet::reading() const {
|
|||
};
|
||||
}
|
||||
|
||||
if( signal_type() == SignalType::OOK_8k4_Schrader ) {
|
||||
Optional<Reading> Packet::reading_ook_8k4_schrader() const {
|
||||
return Reading {
|
||||
Reading::Type::GMC_96,
|
||||
reader_.read(20, 32),
|
||||
|
@ -88,7 +87,13 @@ Optional<Reading> Packet::reading() const {
|
|||
};
|
||||
}
|
||||
|
||||
return { };
|
||||
Optional<Reading> Packet::reading() const {
|
||||
switch( signal_type() ) {
|
||||
case SignalType::FSK_19k2_Schrader: return reading_fsk_19k2_schrader();
|
||||
case SignalType::OOK_8k192_Schrader: return reading_ook_8k192_schrader();
|
||||
case SignalType::OOK_8k4_Schrader: return reading_ook_8k4_schrader();
|
||||
default: return { };
|
||||
}
|
||||
}
|
||||
|
||||
size_t Packet::crc_valid_length() const {
|
||||
|
|
|
@ -160,6 +160,10 @@ private:
|
|||
|
||||
const Reader reader_;
|
||||
|
||||
Optional<Reading> reading_fsk_19k2_schrader() const;
|
||||
Optional<Reading> reading_ook_8k192_schrader() const;
|
||||
Optional<Reading> reading_ook_8k4_schrader() const;
|
||||
|
||||
size_t crc_valid_length() const;
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue